• Tidak ada hasil yang ditemukan

数学のためのコンピューター (3) Mathematica 入 門 (1)

N/A
N/A
Protected

Academic year: 2025

Membagikan "数学のためのコンピューター (3) Mathematica 入 門 (1)"

Copied!
5
0
0

Teks penuh

(1)

情報処理

II

11

数学のためのコンピューター (3) Mathematica 入 門 (1)

桂田 祐史 2002 年 7 月 4 日

代表的な数式処理系である

ティカ

Mathematica

を体験しよう。数式処理でどういうことが出来 るのか大体の雰囲気をつかんで、今後の学習・研究のヒントにしてもらうのがねらい。

Mathematica

に関する書籍、WWW 上の情報は豊富ですが、とりあえず

『Mathematica 入門』http://www.math.meiji.ac.jp/~mk/syori2-2005/mathematica/

というのも用意してあります。

1 Mathematica ってこんなもの

以下の例は、数学科の計算機である

oyabun

にログインして、Mathematica を実行してみ たものです。プログラムなどは書かずに、式を順次入力して計算結果を表示させています。

-4

-2

0

2

4 -4 -2

0 2

4

-1 -0.5 0 0.5 1

-4

-2

0

2

4

(2)

¶ ³ oyabun% math

Mathematica 4.0 for Solaris

Copyright 1988-1999 Wolfram Research, Inc.

-- Motif graphics initialized --

In[1]:= 1/2 + 1/3 ← 分数計算

5

Out[1]= - → ちょっと見難いですけどね

6

In[2]:= a={{0,1},{6,1}} ← 行列の入力 Out[2]= {{0, 1}, {6, 1}}

In[3]:= Eigenvalues[a] ← 行列の固有値の計算

Out[3]= {-2, 3}

In[4]:= Eigenvectors[a] ← 行列の固有ベクトルの計算

Out[4]= {{-1, 2}, {1, 3}}

In[5]:= Expand[(x+y)^6] ← 式の展開

6 5 4 2 3 3 2 4 5 6

Out[5]= x + 6 x y + 15 x y + 20 x y + 15 x y + 6 x y + y

In[6]:= N[Pi,50] ← 円周率 50

Out[6]= 3.1415926535897932384626433832795028841971693993751 In[7]:= Integrate[Log[x],x] ← 不定積分

Out[7]= -x + x Log[x]

In[8]:= Plot3D[x^2 - y^2, {x,-1,1}, {y,-1,1}] ← グラフ

Out[8]= -Graphics- → ここで画面に図が表示されます

In[9]:= Solve[x^3+2x==1] 3 次方程式を解かせてみる 結果は一見に価するけれど、紙を食うのでカットします。

In[10]:= ParametricPlot3D[{Cos[t](3+Cos[u]),Sin[t](3+Cos[u]),Sin[u]}, {t,0,2Pi},{u,0,2Pi}] ← トーラスを描かせる。

Out[10]:= -Graphics3D-

In[11]:= Quit ← 終了

oyabun%

µ ´

(3)

2 数式処理とは

プログラミング言語

(計算機言語)

の中には、数値や文字だけでなく、

数式をデータとして扱うことの出来る「数式処理言語」

と呼ばれるものがあります。数式処理言語を使えるソフトウェアを数式処理系と呼びます。現 在、一般向けの数式処理系としては

Mathematica, Maple

が双璧と言われています。

(その他に MuPAD

1

, REDUCE

デュー 2

, Risa/Asir

3

, Macsyma

4

, MAXIMA

5 などが有名。)

C

のようなプログラミング言語は、プログラムの中では「数式」を書けますが、関数

scanf()

printf()

等で入出力可能なデータは、数や文字列だけで、例えば

-2/5

のような分数式の

入力は出来ません。またグラフを描くプログラムを作る場合に、範囲や、分割数の指定等は実 行時に入力出来ても、グラフを描こうとしている関数自体は

(普通の方法では)

入力できず、

プログラムの中に自分で埋め込むしかなかったわけです。そういう意味では

C

は不自由な言 語であると言えます6

3 基本的な使い方

情報科学センターから数学科のワークステーション上の

Mathematica

を利用する場合につ いて説明します。

3.1 Mathematica を起動するまで

(1)

まず、数学科のどのマシンにログインするかを決めます。授業中はくじで決められたマシ ンにして下さい。そうでないときは、oyabun が良いでしょう。以下では

kobun02

にログ インするとして説明します。

(2) ASTEC-X

を起動して、UNIX (Solaris) 環境にログインし、kterm を起動して、

¶ ³

isc-xas06% xhost +kobun02

µ ´

とします。このおまじないは、kobun02上で実行した

X

クライアント

(今回は Mathemat- ica)

からの接続要求を受けいれるようにする、ということです。

1個人・非商用利用には無償で利用できるバージョンがあります。

2一時期、大型計算機でREDUCEを使って、計算するのが流行した。現在でも計算の種類によっては、一番 かもしれない。

3Made in Japan. グレブナー基底の計算など得意です。

4かつて、MITでしか使えなかった憧れの処理系。

5Macymaの子孫。GPL で配布されている(ゆえに、いわゆるフリーソフト)。

6もちろん不自由さを補って余りある大きな利点があるから、現在でも盛んに使われているわけです。例えば、

実際の処理系の数値計算の速さで比べるとCが圧勝します。原理的には一つのプログラミング言語があれば、ど んな計算でも出来るはずなのですが、実際的な意味で万能のプログラミング言語と呼べるものは存在せず、適材 適所を心がけることが重要です。みなさんも、あまり一つの言語、一つのシステムにこだわらずに、機会があっ たら色々なものを勉強してみましょう。

(4)

(3) Windows 2000

環境に戻り、スタート・メニューから

Tera Term Pro

を選んで、Host欄に

kobun02.mind.meiji.ac.jp

を入力し、OK ボタンをクリックします。login: に対し

guest, Password:

に対して を入力して、ログインします。

(4) kobun02

¶ ³

kobun02% emacs &

µ ´

としてから、ASTEC-Xをクリックして、Solaris (UNIX)環境に戻ると、emacsが出てい るはずです

(kobun02

上の

emacs

!)。

(5) emacs

の中で

M-x shell

リターン として、出て来るプロンプトに対して、

¶ ³

kobun02% Math

µ ´

とすると、Mathematica が起動します。

3.2 Mathematica を終了して、数学科のマシンからログアウトするまで

(1) Mathematica

のプロンプト

In[数] :=

に対して、Quit コマンド

(先頭が大文字である

ことに注意)を入力。シェルのプロンプト

(kobun02% )

に対して、exit を実行する。

¶ ³

In[100] := Quit kobun02% exit

Process shell finished

µ ´

(2) emacs

を終了する

(C-x C-c)。その (終了)

前に

C-x C-w

ファイル名 リターン とすると、

Mathematica

とのやり取りをファイルに記録することも出来る。今回はファイル名として

自分のユーザー名

(ee18099

のような文字列) を入力することを勧める。

(3) Windows 2000

側の

Tera Term Pro

でも、きちんと

logout

しておくことを勧めます。

A この講義で用いる Mathematica

C

言語等は国際規格があり、無償で利用できる処理系もありますが、

Mathematica

Wolfram

Research

という一企業の所有物で、処理系は同社が作成・販売しているものしかありません。

予算の関係で、利用できる個数が限られています。

以前は情報科学センターもライセンスを持っていたのですが、現在は使えないようです

(?)。

現在、数学科が持っているライセンスは以下の通り。

• version 1.2

を何プロセスでも利用可能であるライセンスのあるマシンが

1

(fiddle)

コマンド名は

math1.2

です

(現在何故かネットワーク越しにグラフが表示できません)。

(5)

• version 2.2

2

プロセス利用可能であるライセンスのあるマシンが

9

(kobun00, kobun02, kobun07, kobun08, kobun09, kashira, anesan, anego, aniki)

コマンド名は

math2.2

です

(現在何故かネットワーク越しにグラフが表示できません)。

• version 4.0

8

つ利用可能であるライセンス

マシンはどれも可

上にあげたものでも

OK

で、それ以外に

oyabun

というマシンが あります。負荷を分散させるため、授業中は

oyabun

を使います。

コマンド名は

math

または

mathematica

です。

mathematica

コマンドは

GUI

インターフェイスですが、この講義では

CUI

インターフェ イスの

math

コマンドだけを説明します。math1.2,

math2.2

コマンドは基本的に

math

と同 じです。

以上から分かるように、同時に

8 + 2 × 9 + α = 26 + α

個の

Mathematica

が利用可能です

fiddle

で実行する分)。この講義時間中は、各ユーザーがどのマシンを利用するか、くじ

で決めます。(講義時間外は自由にしてもらって構いません。oyabun, fiddle, kobun00で

math

コマンドあるいは

mathematica

コマンドを使うのが良いでしょう。)

Referensi

Dokumen terkait

1 教材曲音源は,右のアイコンをクリックし,学年や楽曲を選択してきくことができます。 自宅学習用教材曲音源 みなさんへ生徒の ボタンをクリックすると再生されます。 音の大きさに注意しましょう。 ワークシートは A4判で出力されます。 教材曲音源をきくときは,先生や 保護者に相談しましょう。 先生の指示に従って学習しましょう。 演奏の順番

15 ⑮ ⑯ ⑰ 2.「パスワードを忘れた方(保護者)はこちら」をクリックすると、 「仮パスワード発行」画面に移動します。 ⑮「ユーザーID」⑯登録済の「メールアドレス」を入力し、 ⑰「送信」をクリックしてください。 3.ログイン画面に戻り、 「ユーザーID」 「仮パスワード」を入力し、 「ログイン」をクリックしてください。

「システム環境変数」の中の「Path」を選択し、「編集」をクリックする。 「新規」をクリックして1行に1項目ずつ、「 C:\MinGW\bin 」、「 C:\emacs-24.3\bin 」、 「 C:\gnuplot\bin 」の合計3項目を追加する。 ※Windows 7、XP では、「編集」をクリックした後、「 ; 」で区切りながら、 「

Meijiのレポート提出システムにはねられることがある。その場 合は 姑息な手段かもしれないが JPEG で出力して、それから PostScriptに変換する のが良い。 Export["syori2/kadai9graph.jpg", g] コマンドプロンプトにて JPEGからPostScript に変換 jpeg2ps

Cや Pascalの while文に似ています。test が真である間だけ statementを繰り返します。 i=1;

3.調査書の点数化による評価の実施について 総合能力入試および一般推薦入試において、全学部学科・短大各科で調査書の点数化を行い評価に取り 入れます。 4.試験科目の一部変更について 教育学部では一般推薦入試の試験科目として「基礎学力適性検査」を実施していましたが、これを廃止し「小 論文」を実施します。

A.2 連立 1 次方程式の解法概説 コンピューターで行われる数値計算の時間の90% は連立1次方程式を解いている時間だと いう説があるくらい、連立1次方程式は頻出する問題である。例えば微分方程式の問題も、離 散化 有限次元近似された後は連立1次方程式を解くことに帰着されることが多い8。ところ

計算を続けますか?続けたいなら 1 を入力して下さい。 と尋ねて来るようになっています。止めたいなら、例えば 0 を入力して下さい。 問題7-1 次のことを実験しなさい。1 初期値を変えてみる。2 λ を変えてみる。特に条件 0< λ≤1/2 を満足しない場合を試す。 問題7-2 プログラムを書き換えて、Neumann 問題 4,5,6N