新ページ

Microsoft Fortran 4.0(NEC PC-9801)用グラフィックスライブラリ

glio.tar.gz(8kb).

このソフトについての著作権を放棄します。自由に改変、配布して構いません。マニュアル等は附属していません。作成してから随分と時間が経過したため、作者自身ソースコードを把握していません、いかなるご質問にもお答えできません。このソフトは無保証です、使用については自己責任でお願いします。(bug? xnp2 上では、楕円がきれいに描画できません)

行列計算における数式処理ソフト maxima の利用について

この文書は未完成です。大学初学年の線形代数学を学ぶ学生の方々に、演習、レポートの補助に maxima を有効利用していただけないだろうかと思い書き始めたものです。現在の段階では推敲が十分でないため、上記目的には適していないと思います。興味を持って頂ける方のために公開するものです。(2004/6/23 maxima-5.9.0.9beta1 がリリースされました。コマンドプロンプトが変わったり、グラフ表示の default が GNUPLOT になったり 5.9.0 から色々変更があったようです。本文書は 5.9.0.9beta1 には対応していません。) maxlin.pdf, em.mac, matblock.mac, metrics.mac, gson.mac, vectanal.mac, kenrou.mac

Copyright(c)2004 Kenrou Adachi. この文書の著作権は足立健朗にあります。ここからダウンロードして、個人的に利用されることは自由です。著作権者の許可無く、2次配布、コピーの配布、印刷物を配布することを禁じます。

maxima による行列計算超入門

上の文書があまりにも不親切なので、ごく短くて簡単なイントロダクションを書いてみました。 maximaintro.pdf,(付録です kihon.mac, examples.pdf)

Atiyah-Singer 指数定理ノート

知人と二人でしたセミナーの記録です。Atiyah-Singer の論文をベースにした指数定理の解説です。最小限の情報しか含んでいません。応用についても書いていません。いくつかの予備知識を仮定しているので自己充足的ではありません。悪しからず。index.pdf .

Copyright(c)1994 Kenrou Adachi. この文書の著作権は足立健朗にあります。ここからダウンロードして、個人的に利用されることは自由です。著作権者の許可無く、2次配布、コピーの配布、印刷物を配布することを禁じます。内容については無保証です。

2次元自励系微分方程式の解を描くプログラム

その昔、朝倉書店から出ていた森本光生先生の - パソコンによる微分方程式 - と言う本に掲載されていた、NEC の PC-9801 シリーズのパソコン上の N88BASIC で書かれていた2次元自励系微分方程式の解を描くプログラム - etude.n88 - はとても楽しいプログラムでした。現在のパソコン環境で同様のことをしてみたいと思い、etude.n88 を X Window system 用に C言語のプログラムとして移植してみました。2つのソース etpro.cnew.c をダウンロードして同じディレクトリに置いて下さい。"cc -o new new.c" で実行プログラム new を作ったあと、kterm などの端末エミュレータ上から "./new" とタイプして、起動して下さい。ただし、遊ぶ前に、山内千里様が作成された - EGGX/ProCALL - ライブラリをインストールしておく必要があります。EGGX/ProCALLのページは こちらです。screenshot1,screenshot2,screenshot3,screenshot4.とくに定数係数の場合、dx/dt = s*x + t*y, dy/dy = u*x + v*y の場合はもう一つのプログラム selflinear.c,selflinear.f,screenshot5,screenshot6 もあります。

上記のプログラムのFORTRAN版

NEC PC-9801 シリーズのパソコン上の Microsoft FORTRAN 4.0 用のプログラムです。コンパイルには上記グラフィックライブラリーをインストールする必要があります。スクリーンショットは FreeBSD 上の PC-9801エミュレータ xnp2 上で実行した様子です。etude.for,screenshot. FreeBSD 上の GNU FORTRAN 77 用のプログラムもあります。etpro.f,new_f.c

上記のプログラムのTurbo Pascal版

NEC PC-9801 シリーズのパソコン上の Turbo Pascal (Borland)用のプログラムです。etude.pas,define.pas. 次のプログラムは、2階常微分方程式 d^2x/dt^2 = f(x, dx/dt, t) の解のグラフを描くものです。スクリーンショットは van der Pol 方程式 d^2x/dt^2 = (1.0 - x^2) * dx/dt - x のものです。DIFF22.PAS,DATA.PAS,screenshot. この型の方程式は、 y = dx/dt とすれば、 dx/dt = y, dy/dt = f(x,y,t) という形の1階の方程式系に帰着されます。次のプログラムは、このことを利用して2階常微分方程式の解の相空間における軌道を描くものです。DIFF.PAS,screenshot. スクリーンショットは同じく van der Pol のものです。この例でもそうですが、f(x,y,t) が時間 t を含まないときは、系は自励系になります。さいごに、van der Pol に対応する自励系の解曲線群を etude.pas で描かせたスクリーンショットを置いておきます。screenshot.

上記のプログラムの FreeBSD 5.3 用のソース

diffeq.tar.gz

もう一つの MS-FORTRAN 用グラフィックスライブラリ

g98.tar.gz

MS-DOS の graph.sys を使うグラフィックスライブラリ。アーカイブファイルの中の readme を読んで下さい。

Turbo Pascal 5.5用グラフィクスライブラリ

Turbo Pascal 5.5以降(NEC PC-9801) のグラフィクスライブラリを、いまさらながら作りました。これを使って上のプログラムの実行ファイルを作成すれば、BGI を使ったものより大幅にファイルサイズが小さくなり高速になります。(ただし PC-9801 の実機上での動作は確認していません。)ライブラリのソースと、上のプログラムをこのライブラリのために書き直したものと、コンパイルドライバのソースを置いておきます。GRAPHICS.PAS,ETPRO.PAS,NEWP.C.(付録:FreeBSD 上の gpc 用(eggx を使う)etude.p, g.c)

その他

simh の vax780エミュレータで 4.2BSD を何とか動かすのに成功。その上で KCL を動かすこともできました。ちなみに、vaxエミュレータ上の 4.3BSD Quasijarus0c では、KCL を make することができませんでした。(AKCL はできました。) ネットで拾った古い Maxima のソース、 maxima.orig.tar.z から、Maxima を make するのも失敗しています。ちなみに、時計は設定してないので、日付がおかしいです。(追記: sys-maxima.c で cpoly.o を初期化する部分をコメントアウトしたらなんとか saved_maxima ができました。)4.2BSD.pdf,maximaorg.txt


Maxima でテンソルを計算するための簡単なプログラムを作ってみました。(ソース: tensor.mac),(例 : tensorexample.pdf)(注意 : Maxima5.9.1 on FreeBSD 5.3 (CMU Common Lisp 10a) で動作を確認しました。私の関数の書き方が手抜きなので、Maxima 5.10 (Windows XP), Maxima 5.11.0 (FreeBSD 5.3, SBCL 0.8.17) では cntrlst2 関数が動きませんでした。その他の環境ではどうなのかはわかりません。cntrlst2 が動かない場合は縮約(cntrct)は使えません。)(追記:友人の Maxima 5.9.1 (Vine Linux 3.2, GNU CLISP 2.32) では動作したそうです。さらに、4.3BSD Quasijarus0c 上の Maxima 4.155 でも動作しました。tensoronmaxima4155.txt)


Maxima 5.10 以上のバージョンを使う場合は、次の tensor.lisp を load("tensor.lisp"); として下さい。 tensor.lisp は Maxima 4.155 でセーブしたファイルから作りましたが、問題なく動くようです。ただし、Maxima 4.155 での文字種類の制限から、テンソル積 "@x@" と テンソル-ベクトルの縮約 "@tvc" はそれぞれ "ot" と "tvc" に変更しました。縮約を使う前に load(eigen); する必要があります。(使用例: tlisp.pdf, untitled.html)


Common Lisp 用の数テンソルの演算プログラム(手抜きの上に、未完成です)。ctensor.lisp(付録:Franz Lisp用 ftensor.lisp)(使用例: ctlog.txt, flog.txt)


上のプログラムを、Scheme 用にそのまま移植したものです。Scheme らしくないです。とりあえず動きますが、無保障です。tensor.scm(使用例:slog.txt)


整理しなおしたバージョン ctensor-new.lisp(まだバグがあるかも。完全に数値テンソルだけを対象としています。), tensor-new.mac, tensor-new.scm, 付録として簡単な解説をつけました。(Maxima 手抜き版)maxtensor.pdf


修正版 tensor-2.3.mac, kenrou-1.4.4.mac, kenrou-examples.pdf


実験中 maclisp.log


注意:このページ中の maxima用のプログラムは Maxima-5.9.0 および Maxima-5.9.1 で動作します。Maxima-5.9.3 以上の版では一部(大部分かも)の関数が動きません。




(勝手に)リンク

  • Maxima -- A GPL CAS on DOE-MACSYMA
  • 友人、知人、同級生関係

  • Birding Note
  • 凍りの梨
  • NINELIVES
  • 正福寺
  • Tamura's Home Page
  • そのうち作ります
  • 中川さんの「Maxima 入門ノート」
  • フリーソーメン
  • kaeのブログ
  • 今日の北大のどこか
  • 健康的研究生活のすすめ
  • 今日も明日も’中間領域’

  • 食べ物関係

  • とんかつハウスとんとん

  • 猫関係

  • Sand Cat
  • スナネコ
  • Black-footed Cat
  • クロアシネコ
  • Rusty-spotted Cat
  • サビイロネコ
  • Flat-headed Cat
  • マレーヤマネコ

  • 好きなもの関係

  • A Trail on the Water("...sofferte onde serene..." を映像付で聴くことができる)
  • カントリーアン
  • Muzio Clementi: Gradus ad Parnassum op.44



  • 先祖(タタラ)関係(日南町阿毘縁(上阿毘縁)・日南町阿毘縁(大菅)・日野町黒坂・(安来市)広瀬町布部) (村上・足立・西古・荒金)

  • たたらの里 奥日野
  • 金屋子神
  • 卜蔵庭園 椿庵
  • 御墓山
  • 十年畑高尾城
  • いろは額:(川上(円城寺)きし作 (村田丹菴の次女、曾祖母(西古梅)の姉、鳥取市吉方村出身)、阿毘縁小学校で教職についていた。 (曾祖父は西古鶴壽)