C 言語第 8 回 複素微分方程式の解法 1 1 複素数の係数を持つ 1 階の微分方程式 複素数を z として 微分方程式は dz dt = である 特に とする f ( z, t) ( ) 実際には が含まれていないので ( ) f ( z, t) = i z Ü t f (

Size: px
Start display at page:

Download "C 言語第 8 回 複素微分方程式の解法 1 1 複素数の係数を持つ 1 階の微分方程式 複素数を z として 微分方程式は dz dt = である 特に とする f ( z, t) ( ) 実際には が含まれていないので ( ) f ( z, t) = i z Ü t f ("

Transcription

1 C 言語第 8 回 複素微分方程式の解法 複素数の係数を持つ 階の微分方程式 複素数を z として 微分方程式は dz dt = である 特に とする f ( z, t) ( ) 実際には が含まれていないので ( ) f ( z, t) = i z Ü t f ( z) = i z Ruge-Kutta( ルンゲ クッタ ) 法 解くべき差分方程式は オイラー法で k z - z = + f ( z, t) D t である 第 5 回数値シミュレーション : 階の微分方程式 ( シラバス 8 9 回目 ) - 4 C 言語フ ロク ラム :Ruge-Kutta 法では 記号 k を用いて k + k + k + k 3 4 z+ - z = と変更される ここで k = f ( z, t) である k k f z t = ( +, k k f z t k = f ( z + k D t, t + ) 3 = ( +, 複素数操作プログラムの準備 新しいプロジェクト bibu( 微分 ) を作成し 以下の つの複素数を操作するプログラムをプロジェクトに追加する ) 以下のプログラムを [fukusosuu.h] として保存 : typedef struct tagcomplex double r; double i; COMPLEX; COMPLEX add(complex z, COMPLEX z); COMPLEX subtract(complex z, COMPLEX z); COMPLEX multiply(complex z, COMPLEX z); COMPLEX divide(complex z, COMPLEX z); COMPLEX cojugate(complex z); double absolute(complex z); COMPLEX multiply_umber(double x, COMPLEX z); Copyright Masaki Yasue, Dept. of Phys., Tokai Uiv, All rights reserved.

2 C 言語第 8 回 COMPLEX cexp(double re, double im); ) 以下のプログラムを [fukusosuu.c] として保存 : 該当箇所を 第 7 回複素数の使用法 ( シラバス 回目 ) のプログ ラムからコピー可能 #iclude <stdio.h> #iclude <math.h> #iclude "fukusosuu.h" // z+z COMPLEX add(complex z, COMPLEX z) COMPLEX z; z.r = z.r+z.r; z.i = z.i+z.i; retur z; // z-z COMPLEX subtract(complex z, COMPLEX z) COMPLEX z; z.r = z.r-z.r; z.i = z.i-z.i; retur z; // z*z COMPLEX multiply(complex z, COMPLEX z) COMPLEX z; z.r = z.r*z.r - z.i*z.i; z.i = z.r*z.i + z.i*z.r; retur z; // z/z COMPLEX divide(complex z, COMPLEX z) COMPLEX z; COMPLEX busi; if((z.r == 0) && (z.i == 0)) COMPLEX zero = 0, 0; pritf(" エラー :0 で割っています \"); retur zero;

3 C 言語第 8 回 3 busi.r = z.r*z.r + z.i*z.i; busi.i = z.r*z.i - z.i*z.r; z.r = busi.r/(z.r*z.r+z.i*z.i); z.i = busi.i/(z.r*z.r+z.i*z.i); retur z; // z^* COMPLEX cojugate(complex z) z.i = -z.i; retur z; // z double absolute(complex z) retur sqrt(z.r*z.r + z.i*z.i); // x*z COMPLEX multiply_umber(double x, COMPLEX z) z.r = x*z.r; z.i = x*z.i; retur z; 4 複素数操作関数の使用法複素数の操作を k + k + k + k 3 4 z+ - z = を例に取り解説する プログラム内では に進む時 時刻 と計算して t 時刻 t ( t t ) + = + D k + k + k + k 3 4 z+ = z + 時刻 t ( t t) + = + D での z + を求める ここで k k = f ( z +, t = f ( z + k, t について プログラムしてみよう : 引数は 複素数と実数

4 C 言語第 8 回 4 f z 複素数実数 k D t D + + t Þ f(complex z, double t) (, t ) 計算結果は複素数 COMPLEX f(complex z, double t) k 複素数 z + = z + kの作り方 step step ì k double COMPLEX COMPLEX ü ï æ step ö w w multyply umber, k t k = 実数 複素数 = = D ï ç z + k ï è ø ý Þ í w ï ï z z z, k k, D t stepþ ï k z + add ( z, w) îï k + k + k3 + k4 ルンゲ クッタ法のプログラム部分 z + は 関数 :calclate_extとして与 えられる 引数は 変数 z 時間 t と時間の刻み calclate_ext(complex z, double t, double step) 計算結果は複素数 COMPLEX calclate_ext(complex z, double t, double step) k + k + k3 + k4 calclate_ext 関数 : z+ = z + ext z k + k + k3 + k4 z+ = z t + D を計算し 計算結果は複素数 (COMPLEX) になり retur を使っ て計算結果を返す COMPLEX calclate_ext(complex z, double t, double step) COMPLEX k, k, k3, k4; COMPLEX ext_z; COMPLEX w, ww; k = f(z, t); Ü k = f ( z, t ) k // k = f ( z +, t = f ( z + k, t step/.0 step/.0 k k t w = multiply_umber(step/.0, k); Ü w= k : k = f ( z + D k, t step/.0 k w = add(z, w); Ü z + w : k = f ( z + k, t

5 C 言語第 8 回 5 w step/. 0 k k = f(w, t+step/.0); Ü k = f ( w, t : k = f ( z + k, t k // k3 = f ( z +, t = f ( z + k, t w = multiply_umber(step/.0, k); w = add(z, w); k3 = f(w, t+step/.0); // k = f ( z + k D t, t + D t) = f ( z + D tk, t + ) w = multiply_umber(step, k3); w = add(z, w); k4 = f(w, t+step); k + k + k3 + k4 w = multiply_umber(.0, k); Ü z+ - z = ww w k + k + k3 + k4 ww = add(k, w); Ü z+ - z = k + k + k3 + k4 w = multiply_umber(.0, k3); Ü z+ - z = ww = add(ww, w); Ü z ww w k + k + k3 + k - z = 4 + w ww k 4 k + k + k3 + k4 w = add(ww, k4); Ü z+ - z = w tep s w k + k + k3 + k4 + z D = k + k + k3 + 4 Ü z - = t k ww = multiply_umber(step/.0, w); ww ext z z D t ext_z = add(z, ww); Ü z+ = z + ( k + k + k3 + k4 ) retur ext_z; dz 微分方程式 f ( z, t) dt = は 関数 :f(z,t): f ( z, t) ( ) = - + i z から与えられる

6 C 言語第 8 回 ( ) 引数は 変数 z 時間 t f(complex z, double t) 計算結果は複素数 COMPLEX f(complex z, double t) f 関数 : f ( z, t) = ( ) f ( z, t) = i z を計算し 計算結果は複素数 (COMPLEX) になり retur を使って返す COMPLEX f(complex z, double t) COMPLEX fz; a COMPLEX a = -0., 0.5; Ü i a Ü i z fz = multiply(a, z); ( ) retur fz; fz を省略した次の関数でもよい : COMPLEX f(complex z, double t) a COMPLEX a = -0., 0.5; Ü i a Ü i z retur multiply(a, z); ( ) 5 微分方程式解法プログラム z の初期値 ( t = 0 ) として COMPLEX z0 = 0, 0 ; ìt = 0 í Þ z 0 z = z0; î = t = 0; をとり 0. 秒おき ( D t = 0.) に t = 50秒まで計算する : D t = 0. Þ #defie STEP 0. t = 50 Þ #defie LAST TIME 50.0 計算結果をファイル名 :bibu.csv に書き込み エクセルを自動起動させる メニュー [ プロジェクト ]-[ プロパティー ] の [ 文字セット ] マルチバイト文字セットを使用するを選択 i z

7 C 言語第 8 回 7 以下のプログラムを [bibu.c] として先ほどのプロジェクト bibu( 微分 ) に追加する #defie _CRT_SECURE_NO_WARNINGS #iclude <widows.h> #iclude <stdio.h> #iclude <math.h> #iclude "fukusosuu.h" #defie LAST_TIME 50.0 #defie STEP COMPLEX f(complex z, double t) COMPLEX fz; COMPLEX a = -0., 0.5; fz = multiply(a, z); retur fz; COMPLEX calclate_ext(complex z, double t, double step) COMPLEX k, k, k3, k4; COMPLEX ext_z; COMPLEX w, ww; k = f(z, t); w = multiply_umber(step/.0, k); w = add(z, w); k = f(w, t); w = multiply_umber(step/.0, k); w = add(z, w); k3 = f(w, t); w = multiply_umber(step, k3); w = add(z, w); k4 = f(w, t); w = multiply_umber(.0, k); ww = add(k, w); w = multiply_umber(.0, k3); ww = add(ww, w); w = add(ww, k4); ww = multiply_umber(step/.0, w); ext_z = add(z, ww); retur ext_z;

8 C 言語第 8 回 8 void writetitle(file *file_ope) pritf("t, 実部,,t, 虚部 \"); if(file_ope!= NULL) fpritf(file_ope, "t, 実部,,t, 虚部 \"); void writedata(file *file_ope, COMPLEX z, double t) pritf("%5.f,%0.3e,,%5.f,%0.3e\", t, z.r, t, z.i); if(file_ope!= NULL) fpritf(file_ope, "%5.f,%0.3e,,%5.f,%0.3e\", t, z.r, t, z.i); it mai(void) // 作成ファイル名は bibu.csv char fileame[] = "bibu.csv"; // 作成ファイル追尾用変数 FILE * file_ope; double t, last_t; COMPLEX z, ext_z; COMPLEX z0 = 0, 0; z = z0; t = 0.0; last_t = LAST_TIME*(.0+STEP); // ファイルの作成に失敗すると数値 (file_ope=null) を返す file_ope = fope(fileame, "wt"); writetitle(file_ope); while(t < last_t) writedata(file_ope, z, t); ext_z = calclate_ext(z, t, STEP); z = ext_z; t = t+step; // NULL のときにファイル作成失敗 if(file_ope == NULL) pritf("\====> ファイル (%s) の作成に失敗しています \====> 既にファイルが開かれているかもしれません ", fileame); getchar(); else HINSTANCE hist; fclose(file_ope); hist = ShellExecute((HWND)0, "ope", fileame, NULL, NULL, SW_SHOWNORMAL); if(hist <= (HINSTANCE)3)

9 C 言語第 8 回 9 pritf("\====> 表計算ソフトの自動起動に失敗しました "); getchar(); retur 0;

10 C 言語第 8 回 0 第 8 回目レポート レポートの回数 (8 回目 ) 学生証番号と氏名を明記すること 必ず表紙を付け 最後のページ ( の添付用 ) を表紙の次に入れる (A4 レポート用紙使用のこと ) ) 3 つのプログラム (fukusosuu.h, fukusosuu.c, bibu.c) において 3 つプログラム プログラムを実行し 計算結果データを出力して 実部と虚部の つグラフ 実部のグラフ 虚部のグラフの 5 点です グラフ作成時は 縦軸の最小値を - 最大値を 目盛間隔を にして表示する [ グラフの移動 ] を 新しいシート にする を実行する事 グラフは以下のようになります dz i z dt = - + を解き ) のグラフの振る舞いを説明せよ ) ( )

11 C 言語第 8 回 3) dz 0.05z 0.0iz dt = - + を解き プログラム : 自動作成のファイル名を repo.csv に変更すること // 作成ファイル名は repo.csv char fileame[] = "repo.csv"; ヒントは 虚数 i は COMPLEX 型の 0, として定義する 0.0iz で z を作るには multiply 関数 iz を作るにはi と z に multiply 関数 0.0iz を作るには 0.0とiz に multiply_umber 関数を順に使う 実部と虚部のつグラフ 実部のグラフ 虚部のグラフの 3 点を提出です グラフ作成時は 縦軸の最小値を 0 最大値を 目盛間隔を にして表示する [ グラフの移動 ] を 新しいシート にする を実行する事 グラフは以下のようになります

12 C 言語第 8 回 提出例 ( 使える表紙は次のページ ) コンヒ ュータ物理学演習 Ⅱ 第 8 回目 月 日 次ページの添付用 作成する解答など 学籍番号 氏名 ページ目 ページ目 3 ページ目以降

13 C 言語第 8 回 3 コンピュータ物理学演習 Ⅱ 第 8 回目 月日提出 学籍番号 氏名

14 C 言語第 8 回 4 第 8 回目レポート ( 添付用 ) ) 3 つのプログラム (fukusosuu.h, fukusosuu.c, ryousi.c) において 3 つプログラムを作成 プログラムを実行し 計算結果 ( x y ( x, t) グラフ (_out = N_MAX/4 の箇所を変更します ) を作成 =0 =N_MAX/4 =N_MAX/ =3*N_MAX/4 =N_MAX の合計 7 点です グラフ作成時は 縦軸の最大値を 0 にして表示する [ グラフの移動 ] を 新しいシート にする を実行する事 - ) データを出力して 次の の場合の 5 つ ) グラフからは 最初 つの波束しかないが ポテンシャルを通過すると つの波束に分かれてゆく 様子が読み取れる つの量子をポテンシャルにぶつけると つの量子に分裂し 最後は つの 量子が残るという事だろうか? この結果を説明せよ

C 言語第 7 回 掛け算 (multiply number) ìz1 = x1 + iy1 í îz = x + iy 割り算 (devide number) ( )( ) ( ) Þ z z = x + iy x + iy = x x - y y + i y x + x y

C 言語第 7 回 掛け算 (multiply number) ìz1 = x1 + iy1 í îz = x + iy 割り算 (devide number) ( )( ) ( ) Þ z z = x + iy x + iy = x x - y y + i y x + x y C 言語第 7 回 複素数の使用法 ( シラバス 1 回目 ) 1 1 複素数 複素数 (complex numbers) z は虚数単位 ìi í i = - î 1 を使って つの実数 x, y から z = x + iy と作ります とくに x を z の実数部 (real part): x = Re( z) y を z の虚数部 (imarginary part): y = Im ( z)

More information

C 言語第 6 回 1 数値シミュレーション :2 階の微分方程式 ( シラバス10 11 回目 ) 1 2 階の微分方程式と差分方程式微分方程式を 2 d x dx + c = f ( x, t) 2 dt dt とする これを 2 つの 1 階の微分方程式に変更する ìdx = y 2 2 d

C 言語第 6 回 1 数値シミュレーション :2 階の微分方程式 ( シラバス10 11 回目 ) 1 2 階の微分方程式と差分方程式微分方程式を 2 d x dx + c = f ( x, t) 2 dt dt とする これを 2 つの 1 階の微分方程式に変更する ìdx = y 2 2 d C 言語第 6 回 1 数値シミュレーション : 階の微分方程式 ( シラバス10 11 回目 ) 1 階の微分方程式と差分方程式微分方程式を d x dx + c = f ( x, t) とする これを つの 1 階の微分方程式に変更する ìdx = y d x dx d x dx ï dt c f ( x, t) c f ( x, t) + = Þ = - + Þ í ï dy = - cy +

More information

C 言語第 3 回 2 a と b? 関係演算子 a と b の関係 関係演算子 等しい a==b 等しくない a!=b より大きい a>b 以上 a>=b より小さい a<b 以下 a<=b 状態 真偽 値 条件が満たされた場合 TRUE( 真 ) 1(0 以外 ) 条件が満たされなかった場合 F

C 言語第 3 回 2 a と b? 関係演算子 a と b の関係 関係演算子 等しい a==b 等しくない a!=b より大きい a>b 以上 a>=b より小さい a<b 以下 a<=b 状態 真偽 値 条件が満たされた場合 TRUE( 真 ) 1(0 以外 ) 条件が満たされなかった場合 F C 言語第 3 回 三つの基本構造 ( シラバス 5 6 回目 ) 1 1 順次処理上から順番に実行していく #include int main(void) { long x, y; 最初 長い整数がつかえる 負の数もか だいたい ±21 億まで OK なんだ 掛け算するぞ x = 1000*2000; scanf("%ld", &y); printf("%ld", x*y);

More information

演習課題No12

演習課題No12 演習課題 No.12 ( 課題は 3 題ある ) 課題 12-1 時間内提出 従来の C 言語には複素数を直接扱うデータ型はないので (*), 構造体で複素数 ( 英語で complex) を表すことにする. 複素数を表す構造体を以下のように定義する. struct complex float r; // 実部 ( 英語で real) float i; // 虚部 ( 英語で imaginary)

More information

C 言語固有の命令で全部で32 個 の関数C 言語第 1 回 C 言語って?( シラバス 1 2 回目 ) 関数型言語 コンピュータに実行してもらう命令はすべて関数の中に記述されている 関数がプロ グラム

C 言語固有の命令で全部で32 個 の関数C 言語第 1 回 C 言語って?( シラバス 1 2 回目 ) 関数型言語 コンピュータに実行してもらう命令はすべて関数の中に記述されている 関数がプロ グラム 1 Visual Studio 2010 Express の使用法 (PDF ファイルでの配布 :VS2010.pdf) http://www.sp.u-tokai.ac.jp/~yasue/ffn/vs2010.pdf 物理学科のホームページ (http://www.sp.u-tokai.ac.jp/) 右下の 研究室サイト の 素粒子理論. 安江研 から移動 左側のメニュー C 言語 から移動

More information

Microsoft PowerPoint - 12.ppt [互換モード]

Microsoft PowerPoint - 12.ppt [互換モード] 第 12 回構造体 1 今回の目標 構造体を理解する 構造体の定義の仕方を理解する 構造体型を理解する 構造体型の変数 引数 戻り値を理解する 複素数同士を足し算する関数を作成し その関数を利用するプログラムを作成する 2 複素数の足し算 複素数は実部と虚部の2つの実数で 表現される 表現される z = a+ bi 2 つの複素数 z 1 = a 1+ bi 1 と z2 = a2 + b2i の和

More information

1 対 1 対応の演習例題を解いてみた 微分法とその応用 例題 1 極限 微分係数の定義 (2) 関数 f ( x) は任意の実数 x について微分可能なのは明らか f ( 1, f ( 1) ) と ( 1 + h, f ( 1 + h)

1 対 1 対応の演習例題を解いてみた   微分法とその応用 例題 1 極限 微分係数の定義 (2) 関数 f ( x) は任意の実数 x について微分可能なのは明らか f ( 1, f ( 1) ) と ( 1 + h, f ( 1 + h) 微分法とその応用 例題 1 極限 微分係数の定義 () 関数 ( x) は任意の実数 x について微分可能なのは明らか ( 1, ( 1) ) と ( 1 + h, ( 1 + h) ) の傾き= ( 1 + h ) - ( 1 ) ( 1 + ) - ( 1) = ( 1 + h) - 1 h ( 1) = lim h ( 1 + h) - ( 1) h ( 1, ( 1) ) と ( 1 - h,

More information

NumericalProg09

NumericalProg09 数値解析および プログラミング演習 [08 第 9 回目 ] の解法 - 4. Ruge-Kua( ルンゲ クッタ 法 Ruge-Kua-Gill( ルンゲ クッタ ジル / ギル 法 5. 多段解法 解法の対象 常微分方程式 d( d 初期値条件 (, の変化に応じて変化する の値を求める. ( 0 ( 0 と 0 は,give 0 常微分方程式の初期値問題 と言う. 3 Ruge-Kua 法の導出

More information

Microsoft PowerPoint - 13.ppt [互換モード]

Microsoft PowerPoint - 13.ppt [互換モード] 第 13 回構造体 1 今回の目標 構造体を理解する 構造体の定義の仕方を理解する 構造体型を理解する 構造体型の変数 引数 戻り値を理解する 複素数同士を足し算する関数を作成し その関数を利用するプログラムを作成する 2 複素数の足し算 複素数は実部と虚部の2つの実数で 表現される z = a+ bi z = a + bi z = a + b i 2 つの複素数 1 1 1 と 2 2 2 の和

More information

<4D F736F F D F2095A F795AA B B A815B837D839382CC95FB92F68EAE2E646F63>

<4D F736F F D F2095A F795AA B B A815B837D839382CC95FB92F68EAE2E646F63> 1/8 平成 3 年 3 月 4 日午後 6 時 11 分 10 複素微分 : コーシー リーマンの方程式 10 複素微分 : コーシー リーマンの方程式 9 複素微分 : 正則関数 で 正則性は複素数 z の関数 f ( z) の性質として導き出しまし た 複素数 z は つの実数, で表され z i 数 u, v で表され f ( z) u i 複素数 z と つの実数, : z + i + です

More information

2013年度 信州大・医系数学

2013年度 信州大・医系数学 03 信州大学 ( 医系 ) 前期日程問題 解答解説のページへ () 式 + + a a a3 を満たす自然数の組 ( a, a, a3) で, a a a3とな るものをすべて求めよ () r を正の有理数とする 式 r + + a a a を満たす自然数の組 ( a, a, a3) で, 3 a a a3となるものは有限個しかないことを証明せよ ただし, そのよう な組が存在しない場合は 0 個とし,

More information

ハピタス のコピー.pages

ハピタス のコピー.pages Copyright (C) All Rights Reserved. 10 12,500 () ( ) ()() 1 : 2 : 3 : 2 4 : 5 : Copyright (C) All Rights Reserved. Copyright (C) All Rights Reserved. Copyright (C) All Rights Reserved. Copyright (C) All

More information

Copyright 2008 All Rights Reserved 2

Copyright 2008 All Rights Reserved 2 Copyright 2008 All Rights Reserved 1 Copyright 2008 All Rights Reserved 2 Copyright 2008 All Rights Reserved 3 Copyright 2008 All Rights Reserved 4 Copyright 2008 All Rights Reserved 5 Copyright 2008 All

More information

Microsoft PowerPoint - 12.ppt [互換モード]

Microsoft PowerPoint - 12.ppt [互換モード] 第 12 回新しい型と構造体 1 今回の目標 新しい型の定義法を理解する 構造体を理解する 複素数同士を足し算する関数を作成し その関数を利用するプログラムを作成する 2 複素数の足し算 複素数は実部と虚部の2つの実数で 表現される z = a+ bi z = a + bi z = a + b i 2 つの複素数 1 1 1 と 2 2 2 の和 z = a + bi は 次式で与えられる 3 3

More information

Microsoft PowerPoint - prog08.ppt

Microsoft PowerPoint - prog08.ppt プログラミング言語 2 第 07 回 (2007 年 06 月 25 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/27 1 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/language/ にアクセスすると 教材があります 2007 年 06 月 25 日分と書いてある部分が 本日の教材です

More information

Microsoft PowerPoint - kougi2.ppt

Microsoft PowerPoint - kougi2.ppt C プログラミング演習 第 2 回 Microsoft Visual Studio.NET を使ってみよう 説明 例題 1. プログラム実行の体験 コンピュータを役に立つ道具として実感する 次ページのプログラムを使って, Microsoft Visual Studio.NETでの C++ ソースファイル編集, ビルド, テスト実行の一連の過程を体験する 例題 1 のプログラムの機能 計算の繰り返し

More information

DVIOUT

DVIOUT 2009 年度情報科学 & 情報科学演習レポート 7 学生用 学籍番号 : 氏名 : 下記の注意事項を守り 次ページ以降の問いに答え レポートを完成させなさい 提出期限 : 2009 年 6 月 16 日 ( 火 ) 13:00 まで提出場所 : 理学部棟正面玄関内に設置のレポートボックス 注意事項 : (1) このページを印刷し 必要事項を記入の上 ( 学籍番号欄と氏名欄は 2 箇所あるので忘れずに記入すること

More information

PowerPoint プレゼンテーション - 物理学情報処理演習

PowerPoint プレゼンテーション  -  物理学情報処理演習 物理学情報処理演習 9. C 言語 5 2015 年 6 月 19 日 本日の推奨作業 directory lesson09 9.1 乱数 9.2 ポインタ 参考文献 やさしい C++ 第 4 版高橋麻奈 ( 著 ) ソフトバンククリエイティブ プログラミング言語 C++ 第 4 版ビャーネ ストラウストラップ, Bjarne Stroustrup, 柴田望洋 Numerical Recipes:

More information

C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ

C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ 今回のプログラミングの課題 次のステップによって 徐々に難易度の高いプログラムを作成する ( 参照用の番号は よくわかる C 言語 のページ番号 ) 1. キーボード入力された整数 10 個の中から最大のものを答える 2. 整数を要素とする配列 (p.57-59) に初期値を与えておき

More information

1/17 平成 29 年 3 月 25 日 ( 土 ) 午前 11 時 1 分量子力学とクライン ゴルドン方程式 ( 学部 3 年次秋学期向 ) 量子力学とクライン ゴルドン方程式 素粒子の満たす場 y ( x,t) の運動方程式 : クライン ゴルドン方程式 : æ 3 ö ç å è m= 0

1/17 平成 29 年 3 月 25 日 ( 土 ) 午前 11 時 1 分量子力学とクライン ゴルドン方程式 ( 学部 3 年次秋学期向 ) 量子力学とクライン ゴルドン方程式 素粒子の満たす場 y ( x,t) の運動方程式 : クライン ゴルドン方程式 : æ 3 ö ç å è m= 0 /7 平成 9 年 月 5 日 ( 土 午前 時 分量子力学とクライン ゴルドン方程式 ( 学部 年次秋学期向 量子力学とクライン ゴルドン方程式 素粒子の満たす場 (,t の運動方程式 : クライン ゴルドン方程式 : æ ö ç å è = 0 c + ( t =, 0 (. = 0 ì æ = = = ö æ ö æ ö ç ì =,,,,,,, ç 0 = ç Ñ 0 = ç Ñ 0 Ñ Ñ

More information

情報処理演習 B8クラス

情報処理演習 B8クラス 予定スケジュール ( 全 15 回 ) 1 1. 終了 プログラミング言語の基礎 2. 終了 演算と型 3. 終了 プログラムの流れの分岐 (if 文,switch 文など ) 4. 終了 プログラムの流れの繰返し (do, while, for 文など ) 5. 終了 中間レポート1 6. 終了 配列 7. 終了 関数 8. 終了 文字列 ( 文字列の配列, 文字列の操作 ) 9. 終了 ポインタ

More information

Microsoft PowerPoint - 5Chap10.ppt

Microsoft PowerPoint - 5Chap10.ppt 第 11 章関数について 11.1 標準ライブラリ関数 11. 関数呼び出しのオーバーヘッド 11. 大域変数 11.4 プロトタイプ宣言数学関数の自作 11.1 標準ライブラリ関数 予め定義されており ユーザが定義 作成しなくても使える関数 ヘッダ部に以下のマクロが必要 #iclude pritf, scf 等の入出力関数 sqrt, si 等の数学関数 #iclude

More information

memo

memo 数理情報工学演習第一 C プログラミング演習 ( 第 5 回 ) 2015/05/11 DEPARTMENT OF MATHEMATICAL INFORMATICS 1 今日の内容 : プロトタイプ宣言 ヘッダーファイル, プログラムの分割 課題 : 疎行列 2 プロトタイプ宣言 3 C 言語では, 関数や変数は使用する前 ( ソースの上のほう ) に定義されている必要がある. double sub(int

More information

初心者にもできるアメブロカスタマイズ新2016.pages

初心者にもできるアメブロカスタマイズ新2016.pages Copyright All Rights Reserved. 41 Copyright All Rights Reserved. 60 68 70 6 78 80 Copyright All Rights Reserved. FC2 97 Copyright All Rights Reserved. Copyright All Rights Reserved. Copyright All Rights

More information

- 2 Copyright (C) 2006. All Rights Reserved.

- 2 Copyright (C) 2006. All Rights Reserved. - 2 Copyright (C) 2006. All Rights Reserved. 2-3 Copyright (C) 2006. All Rights Reserved. 70-4 Copyright (C) 2006. All Rights Reserved. ...1...3...7...8 1...9...14...16 2...18...20...21 3...22...23...23...24

More information

DVIOUT

DVIOUT 2009 年度情報科学 & 情報科学演習レポート 9 学生用 学籍番号 : 氏名 : 下記の注意事項を守り 次ページ以降の問いに答え レポートを完成させなさい 提出期限 : 2009 年 6 月 30 日 ( 火 ) 13:00 まで提出場所 : 理学部棟正面玄関内に設置のレポートボックス 注意事項 : (1) このページを印刷し 必要事項を記入の上 ( 学籍番号欄と氏名欄は 2 箇所あるので忘れずに記入すること

More information

Microsoft PowerPoint - guidance.ppt

Microsoft PowerPoint - guidance.ppt 例題 1. プログラム実行の体験 Microsoft Visual C++ を使ってみよう コンピュータを役に立つ道具として実 感するために, 次ページのプログラムを使って, Microsoft Visual C++ で のプログラム実行を体験する 例題 1 のプログラムの機能 計算の繰り返し キーボードからのデータ読み込み ファイルへの書き出し #include #include

More information

<4D F736F F D2094F795AA95FB92F68EAE82CC89F082AB95FB E646F63>

<4D F736F F D2094F795AA95FB92F68EAE82CC89F082AB95FB E646F63> 力学 A 金曜 限 : 松田 微分方程式の解き方 微分方程式の解き方のところが分からなかったという声が多いので プリントにまとめます 数学的に厳密な話はしていないので 詳しくは数学の常微分方程式を扱っているテキストを参照してください また os s は既知とします. 微分方程式の分類 常微分方程式とは 独立変数 と その関数 その有限次の導関数 がみたす方程式 F,,, = のことです 次までの導関数を含む方程式を

More information

Copyright All Rights Reserved. -2 -!

Copyright All Rights Reserved. -2 -! http://ameblo.jp/admarketing/ Copyright All Rights Reserved. -2 -! Copyright All Rights Reserved. -3- Copyright All Rights Reserved. -4- Copyright All Rights Reserved. -5 - Copyright All Rights Reserved.

More information

2018年度 2次数学セレクション(微分と積分)

2018年度 2次数学セレクション(微分と積分) 08 次数学セレクション問題 [ 東京大 ] > 0 とし, f = x - x とおく () x で f ( x ) が単調に増加するための, についての条件を求めよ () 次の 条件を満たす点 (, b) の動きうる範囲を求め, 座標平面上に図示せよ 条件 : 方程式 f = bは相異なる 実数解をもつ 条件 : さらに, 方程式 f = bの解を < < とすると > である -- 08 次数学セレクション問題

More information

数値計算で学ぶ物理学 4 放物運動と惑星運動 地上のように下向きに重力がはたらいているような場においては 物体を投げると放物運動をする 一方 中心星のまわりの重力場中では 惑星は 円 だ円 放物線または双曲線を描きながら運動する ここでは 放物運動と惑星運動を 運動方程式を導出したうえで 数値シミュ

数値計算で学ぶ物理学 4 放物運動と惑星運動 地上のように下向きに重力がはたらいているような場においては 物体を投げると放物運動をする 一方 中心星のまわりの重力場中では 惑星は 円 だ円 放物線または双曲線を描きながら運動する ここでは 放物運動と惑星運動を 運動方程式を導出したうえで 数値シミュ 数値計算で学ぶ物理学 4 放物運動と惑星運動 地上のように下向きに重力がはたらいているような場においては 物体を投げると放物運動をする 一方 中心星のまわりの重力場中では 惑星は 円 だ円 放物線または双曲線を描きながら運動する ここでは 放物運動と惑星運動を 運動方程式を導出したうえで 数値シミュレーションによって計算してみる 4.1 放物運動一様な重力場における放物運動を考える 一般に質量の物体に作用する力をとすると運動方程式は

More information

2018年度 東京大・理系数学

2018年度 東京大・理系数学 08 東京大学 ( 理系 ) 前期日程問題 解答解説のページへ関数 f ( ) = + cos (0 < < ) の増減表をつくり, + 0, 0 のと sin きの極限を調べよ 08 東京大学 ( 理系 ) 前期日程問題 解答解説のページへ n+ 数列 a, a, を, Cn a n = ( n =,, ) で定める n! an qn () n とする を既約分数 an p として表したときの分母

More information

IPA:セキュアなインターネットサーバー構築に関する調査

IPA:セキュアなインターネットサーバー構築に関する調査 Copyright 2003 IPA, All Rights Reserved. Copyright 2003 IPA, All Rights Reserved. Copyright 2003 IPA, All Rights Reserved. Copyright 2003 IPA, All Rights Reserved. Copyright 2003 IPA, All Rights Reserved.

More information

Prog1_15th

Prog1_15th 2012 年 7 月 26 日 ( 木 ) 実施構造体と typedef typedef 宣言によって,struct 構造体タグ名という表記を再定義し, データ型名のように扱うことができる 構文は typedef struct 構造体タグ名 再定義名 ; となり, この場合の構造体変数の宣言は, 再定義名を用いて行うことができる なお, ここでは 構造体タグ名は省略可能である 構造体を指すポインタ

More information

Microsoft Word - 最終版 バックせどりismマニュアル .docx

Microsoft Word - 最終版 バックせどりismマニュアル .docx ism ISM ISM ISM ISM ISM ISM Copyright (c) 2010 All Rights Reserved. Copyright (c) 2010 All Rights Reserved. Copyright (c) 2010 All Rights Reserved. ISM Copyright (c) 2010 All Rights Reserved. Copyright

More information

C 資料 電脳梁山泊烏賊塾 構造体 C++ の構造体 初めに 此処では Visual Studio 2017 を起動し 新しいプロジェクトで Visual C++ の Windows デスクトップを選択し Windows コンソールアプリケーションを作成する 定義と変数宣言 C++ に

C 資料 電脳梁山泊烏賊塾 構造体 C++ の構造体 初めに 此処では Visual Studio 2017 を起動し 新しいプロジェクトで Visual C++ の Windows デスクトップを選択し Windows コンソールアプリケーションを作成する 定義と変数宣言 C++ に 構造体 C++ の構造体 初めに 此処では Visual Studio 2017 を起動し 新しいプロジェクトで Visual C++ の Windows デスクトップを選択し Windows コンソールアプリケーションを作成する 定義と変数宣言 C++ に於いては 構造体を定義は下記の様に記述する ( 末尾のセミコロンを忘れない様に ) strust Point int x; int y; 上記の様に定義すれば

More information

プログラミング基礎

プログラミング基礎 C プログラミング 演習 アルゴリズム基礎論 演習 第 10 回 今後の予定 12/22( 月 ) 期末試験 (60 分間 ) 場所 :A1611 時間 :16:20~17:20 課題の最終提出締切 :12/19( 金 ) これ以降の新規提出は評価されない 12/22までに最終状況を提示するので, 提出したのに や になってる人は自分の提出内容や提出先を再確認した上で12/26までに問い合わせること

More information

Microsoft Word - Training10_プリプロセッサ.docx

Microsoft Word - Training10_プリプロセッサ.docx Training 10 プリプロセッサ 株式会社イーシーエス出版事業推進委員会 1 Lesson1 マクロ置換 Point マクロ置換を理解しよう!! マクロ置換の機能により 文字列の置き換えをすることが出来ます プログラムの可読性と保守性 ( メンテナンス性 ) を高めることができるため よく用いられます マクロ置換で値を定義しておけば マクロの値を変更するだけで 同じマクロを使用したすべての箇所が変更ができるので便利です

More information

情報量と符号化

情報量と符号化 I. ここでの目的情報量の単位はビットで 2 種の文字を持つ記号の情報量が 1 ビットです ここでは 一般に n 種の文字を持つ記号の情報量を定義します 次に 出現する文字に偏りがある場合の平均情報量を定義します この平均情報量は 記号を適当に 0,1 で符号化する場合の平均符号長にほぼ等しくなることがわかります II. 情報量とは A. bit 情報量の単位としてbitが利用されます 1bitは0か1の情報を運びます

More information

2014年度 東京大・文系数学

2014年度 東京大・文系数学 014 東京大学 ( 文系 ) 前期日程問題 1 解答解説のページへ以下の問いに答えよ (1) t を実数の定数とする 実数全体を定義域とする関数 f ( x ) を f ( x) =- x + 8tx- 1x+ t - 17t + 9t-18 と定める このとき, 関数 f ( x ) の最大値を t を用いて表せ () (1) の 関数 f ( x ) の最大値 を g( t ) とする t が

More information

Microsoft Word - NumericalComputation.docx

Microsoft Word - NumericalComputation.docx 数値計算入門 武尾英哉. 離散数学と数値計算 数学的解法の中には理論計算では求められないものもある. 例えば, 定積分は, まずは積分 ( 被積分関数の原始関数をみつけること できなければ値を得ることはできない. また, ある関数の所定の値における微分値を得るには, まずその関数の微分ができなければならない. さらに代数方程式の解を得るためには, 解析的に代数方程式を解く必要がある. ところが, これらは必ずしも解析的に導けるとは限らない.

More information

2006年10月5日(木)実施

2006年10月5日(木)実施 2010 年 7 月 2 日 ( 金 ) 実施 ファイル処理ファイルとはファイル (file) は日常用語では紙などを綴じたものを表すが, コンピュータ用語ではデータの集合体を指す言葉である ファイルは例えば, 文書ファイルやプログラムファイルのように, 用途によって分類されることもあれば, また, テキストファイルやバイナリファイルのように, ファイルの作り方によって分類されることもある なお,

More information

計算機シミュレーション

計算機シミュレーション . 運動方程式の数値解法.. ニュートン方程式の近似速度は, 位置座標 の時間微分で, d と定義されます. これを成分で書くと, d d li li とかけます. 本来は が の極限をとらなければいけませんが, 有限の小さな値とすると 秒後の位置座標は速度を用いて, と近似できます. 同様にして, 加速度は, 速度 の時間微分で, d と定義されます. これを成分で書くと, d d li li とかけます.

More information

2018年度 岡山大・理系数学

2018年度 岡山大・理系数学 08 岡山大学 ( 理系 ) 前期日程問題 解答解説のページへ 関数 f ( x) = ( + x) x について, 以下の問いに答えよ () f ( x ) = 0 を満たす x の値を求めよ () 曲線 y = f ( x ) について, 原点を通るすべての接線の方程式を求めよ (3) 曲線 y = f ( x ) について, 原点を通る接線のうち, 接点の x 座標が最大のものを L とする

More information

公式集 数学 Ⅱ B 頭に入っていますか? 8 和積の公式 A + B A B si A + si B si os A + B A B si A si B os si A + B A B os A + os B os os A + B A B os A os B si si 9 三角関数の合成 si

公式集 数学 Ⅱ B 頭に入っていますか? 8 和積の公式 A + B A B si A + si B si os A + B A B si A si B os si A + B A B os A + os B os os A + B A B os A os B si si 9 三角関数の合成 si 公式集 数学 Ⅱ B 頭に入っていますか? < 図形と方程式 > 点間の距離 A x, B x, のとき x x + : に分ける点 A x, B x, のとき 線分 AB を:に分ける点 æ x + x + ö は ç, è + + ø 注 < のとき外分点 直線の方程式 傾き で 点 x, を通る : x 点 x, x, を通る : x 注 分母が のとき は座標軸と平行な直線 x x 4 直線の位置関係

More information

今後の予定 6/29 パターン形成第 11 回 7/6 データ解析第 12 回 7/13 群れ行動 ( 久保先生 ) 第 13 回 7/17 ( 金 ) 休講 7/20 まとめ第 14 回 7/27 休講?

今後の予定 6/29 パターン形成第 11 回 7/6 データ解析第 12 回 7/13 群れ行動 ( 久保先生 ) 第 13 回 7/17 ( 金 ) 休講 7/20 まとめ第 14 回 7/27 休講? 今後の予定 6/29 パターン形成第 11 回 7/6 データ解析第 12 回 7/13 群れ行動 ( 久保先生 ) 第 13 回 7/17 ( 金 ) 休講 7/20 まとめ第 14 回 7/27 休講? 数理生物学演習 第 11 回パターン形成 本日の目標 2 次元配列 分子の拡散 反応拡散モデル チューリングパタン 拡散方程式 拡散方程式 u t = D 2 u 拡散が生じる分子などの挙動を記述する.

More information

untitled

untitled mitsuya Copyright (C) 2007. All Rights Reserved. 1/1 mitsuya Copyright (C) 2007. All Rights Reserved. 2/2 mitsuya Copyright (C) 2007. All Rights Reserved. 3/3 mitsuya Copyright (C) 2007. All Rights Reserved.

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 講座を行う前に 自己紹介 僕と上回生について 1 年生同士で少しお話しよう! オリエンテーションの宿題 アルゴロジック http://home.jeita.or.jp/is/highschool/algo/index3.html どこまでできましたか? あまりできなかった人はこれから全部クリアしよう! 2016 年度 C 言語講座 第一回目 2016/6/11 fumi 今回の目標 プログラムを書いて実行するやり方を覚える

More information

プログラミング基礎

プログラミング基礎 C プログラミング 演習 プログラミング基礎 II 演習 II 2012 年 12 月 10 日 第 11 回 今後の予定 2012/12/10 C プログラミング及びプログラミング演習 II 2 2012/12/17 期末試験 (60 分間 ) 場所 :A0542 時間 :4 時限 (15:00~16:00) 2012/12/16 課題の最終提出締切 課題の提出方法 電子メールで提出 提出先 (

More information

1/30 平成 29 年 3 月 24 日 ( 金 ) 午前 11 時 25 分第三章フェルミ量子場 : スピノール場 ( 次元あり ) 第三章フェルミ量子場 : スピノール場 フェルミ型 ボーズ量子場のエネルギーは 第二章ボーズ量子場 : スカラー場 の (2.18) より ˆ dp 1 1 =

1/30 平成 29 年 3 月 24 日 ( 金 ) 午前 11 時 25 分第三章フェルミ量子場 : スピノール場 ( 次元あり ) 第三章フェルミ量子場 : スピノール場 フェルミ型 ボーズ量子場のエネルギーは 第二章ボーズ量子場 : スカラー場 の (2.18) より ˆ dp 1 1 = / 平成 9 年 月 日 ( 金 午前 時 5 分第三章フェルミ量子場 : スピノール場 ( 次元あり 第三章フェルミ量子場 : スピノール場 フェルミ型 ボーズ量子場のエネルギーは 第二章ボーズ量子場 : スカラー場 の (.8 より ˆ ( ( ( q -, ( ( c ( H c c ë é ù û - Ü + c ( ( - に限る (. である 一方 フェルミ型は 成分をもち その成分を,,,,

More information

DVIOUT

DVIOUT 2005 年度プログラミング演習 II レポート 7 学生用 学籍番号 : 氏名 : 下記の注意事項を守り 次ページ以降の問いに答え レポートを完成させなさい 提出期限 : 2005 年 12 月 13 日 ( 火 ) 13:15 まで提出場所 : 理学部棟正面玄関内に設置のレポートボックス 注意事項 : (1) このページを印刷し 必要事項を記入の上 ( 学籍番号欄と氏名欄は 2 箇所あるので忘れずに記入すること

More information

シミュレーション物理4

シミュレーション物理4 シミュレーション物理 4 運動方程式の方法 運動方程式 物理で最もよく出てくる そもそも物理はものの運動を議論する学問から出発 ( つり合いは運動を行わないという意味で含まれる ) 代表例 ニュートンの運動方程式 波動方程式 シュレーディンガー方程式 運動方程式 ( 微分方程式の解法 ) 高次の微分方程式を 1 階微分方程式に変形 N 変数の 階微分方程式 N 変数の 1 階微分方程式 dy/dt=f(t,y)

More information

untitled

untitled Copyright(C) 2007 IFNet, Inc. All Rights Reserved. 2 3 4 Step 1 tep 2 Step 3 Step 1 Step 2 Step 3 5 ID 6 7 Copyright(C) 2007 IFNet, Inc. All Rights Reserved. 8 9 10 11 Copyright(C) 2007 IFNet, Inc. All

More information

DVIOUT

DVIOUT 第 3 章 フーリエ変換 3.1 フーリエ積分とフーリエ変換 第 章では 周期を持つ関数のフーリエ級数について学びました この章では 最初に 周期を持つ関数のフーリエ級数を拡張し 周期を持たない ( 一般的な ) 関数のフーリエ級数を導きましょう 具体的には 関数 f(x) を区間 L x L で考え この L を限りなく大きくするというアプローチを取ります (L ) なお ここで扱う関数 f(x)

More information

Microsoft PowerPoint - kougi9.ppt

Microsoft PowerPoint - kougi9.ppt C プログラミング演習 第 9 回ポインタとリンクドリストデータ構造 1 今まで説明してきた変数 #include "stdafx.h" #include int _tmain(int argc, _TCHAR* argv[]) { double x; double y; char buf[256]; int i; double start_x; double step_x; FILE*

More information

Microsoft PowerPoint - kougi11.ppt

Microsoft PowerPoint - kougi11.ppt C プログラミング演習 中間まとめ 2 1 ソフトウエア開発の流れ 機能設計 外部仕様 ( プログラムの入力と出力の取り決め ) 構成設計 詳細設計 論理試験 内部データ構造や関数呼び出し方法などに関する取り決めソースプログラムの記述正しい入力データから正しい結果が得られるかテスト関数単位からテストをおこなう 耐性試験 異常な入力データに対して, 異常を検出できるかテスト異常終了することはないかテスト

More information

Microsoft PowerPoint - CproNt02.ppt [互換モード]

Microsoft PowerPoint - CproNt02.ppt [互換モード] 第 2 章 C プログラムの書き方 CPro:02-01 概要 C プログラムの構成要素は関数 ( プログラム = 関数の集まり ) 関数は, ヘッダと本体からなる 使用する関数は, プログラムの先頭 ( 厳密には, 使用場所より前 ) で型宣言 ( プロトタイプ宣言 ) する 関数は仮引数を用いることができる ( なくてもよい ) 関数には戻り値がある ( なくてもよい void 型 ) コメント

More information

Microsoft PowerPoint - lec10.ppt

Microsoft PowerPoint - lec10.ppt 今日の内容, とポインタの組み合わせ, 例題 1. 住所録例題 2. と関数とは. を扱う関数. 例題 3. のリスト とポインタの組み合わせ 今日の到達目標 自分で を定義する 自分で定義したについて, 配列やポインタを作成する データ型 基本データ型 char 文字 (1 文字 ) int 整数 double 浮動小数など その他のデータ型配列 データの並び ( 文字列も, 文字の並び ) ポインタ

More information

Microsoft Word - no15.docx

Microsoft Word - no15.docx 7. ファイルいままでは プログラムを実行したとき その結果を画面で確認していました 簡単なものならそれでもいいのですか 複雑な結果は画面で見るだけでなく ファイルに保存できればよいでしょう ここでは このファイルについて説明します 使う関数のプロトタイプは次のとおりです FILE *fopen(const char *filename, const char *mode); ファイルを読み書きできるようにする

More information

健康保険組合のあゆみ_top

健康保険組合のあゆみ_top (1912) (1951) 2,00024,000 (1954) (1958) (1962) (1965) (1968) (1969) (1971) (1972) (1973) (1974) (1976) (1978) (1980) (1982) (1983) (1984) (1985) (1987) (1988) (1989) (1990) (1991) (1992) (1994) (1995)

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 構造体 (struct) 構造体の宣言 typedef 宣言 配列では 複数のデータをひとまとまりにして操作することが出来る しかし それぞれのデータは同じ型 ( 例えば整数 あるいは浮動小数点数 ) 出なければならない 型の違うデータをひとまとまりにして扱う方法に 構造体がある 構造体 文文文文名前字 ( 文字列字字 ) 字 整数学籍番号 ( 整数 ) 身長 ( 浮動小数点数 ) 文字 配列 3

More information

Microsoft PowerPoint - exp2-02_intro.ppt [互換モード]

Microsoft PowerPoint - exp2-02_intro.ppt [互換モード] 情報工学実験 II 実験 2 アルゴリズム ( リスト構造とハッシュ ) 実験を始める前に... C 言語を復習しよう 0. プログラム書ける? 1. アドレスとポインタ 2. 構造体 3. 構造体とポインタ 0. プログラム書ける? 講義を聴いているだけで OK? 言語の要素技術を覚えれば OK? 目的のプログラム? 要素技術 データ型 配列 文字列 関数 オブジェクト クラス ポインタ 2 0.

More information

< 図形と方程式 > 点間の距離 A x, y, B x, y のとき x y x y : に分ける点 æ ç è A x, y, B x, y のとき 線分 AB を : に分ける点は x x y y, ö ø 注 < のとき外分点 三角形の重心 点 A x, y, B x, y, C x, を頂

< 図形と方程式 > 点間の距離 A x, y, B x, y のとき x y x y : に分ける点 æ ç è A x, y, B x, y のとき 線分 AB を : に分ける点は x x y y, ö ø 注 < のとき外分点 三角形の重心 点 A x, y, B x, y, C x, を頂 公式集数学 Ⅱ B < 式と証明 > 整式の割り算縦書きの割り算が出来ること f を g で割って 商が Q で余りが R のときは Q g f /////// R f g Q R と書ける 分数式 分母, 分子をそれぞれ因数分解し 約分する 既約分数式 加法, 減法については 分母を通分し分子の計算をする 繁分数式 分母 分子に同じ多項式をかけて 普通の分数式になおす 恒等式 数値代入法 係数比較法

More information

偏微分方程式、連立1次方程式、乱数

偏微分方程式、連立1次方程式、乱数 数値計算法 011/6/8 林田清 大阪大学大学院理学研究科 常微分方程式の応用例 1 Rutherford 散乱 ( 原子核同士の散乱 ; 金の薄膜に α 粒子をあてる ) 1 クーロン力 f= 4 0 r r r Ze y からf cos, si f f f y f f 粒子の 方向 y方向の速度と座標について dv Ze dvy Ze y, 3 3 dt 40m r dt 40m r d dy

More information

板バネの元は固定にします x[0] は常に0です : > x[0]:=t->0; (1.2) 初期値の設定をします 以降 for 文処理のため 空集合を生成しておきます : > init:={}: 30 番目 ( 端 ) 以外については 初期高さおよび初速は全て 0 にします 初期高さを x[j]

板バネの元は固定にします x[0] は常に0です : > x[0]:=t->0; (1.2) 初期値の設定をします 以降 for 文処理のため 空集合を生成しておきます : > init:={}: 30 番目 ( 端 ) 以外については 初期高さおよび初速は全て 0 にします 初期高さを x[j] 機械振動論固有振動と振動モード 本事例では 板バネを解析対象として 数値計算 ( シミュレーション ) と固有値問題を解くことにより振動解析を行っています 実際の振動は振動モードと呼ばれる特定パターンが複数組み合わされますが 各振動モードによる振動に分けて解析を行うことでその現象を捉え易くすることが出来ます そこで 本事例では アニメーションを活用した解析結果の可視化も取り入れています 板バネの振動

More information

1/10 平成 29 年 3 月 24 日午後 1 時 37 分第 5 章ローレンツ変換と回転 第 5 章ローレンツ変換と回転 Ⅰ. 回転 第 3 章光速度不変の原理とローレンツ変換 では 時間の遅れをローレンツ変換 ct 移動 v相対 v相対 ct - x x - ct = c, x c 2 移動

1/10 平成 29 年 3 月 24 日午後 1 時 37 分第 5 章ローレンツ変換と回転 第 5 章ローレンツ変換と回転 Ⅰ. 回転 第 3 章光速度不変の原理とローレンツ変換 では 時間の遅れをローレンツ変換 ct 移動 v相対 v相対 ct - x x - ct = c, x c 2 移動 / 平成 9 年 3 月 4 日午後 時 37 分第 5 章ローレンツ変換と回転 第 5 章ローレンツ変換と回転 Ⅰ. 回転 第 3 章光速度不変の原理とローレンツ変換 では 時間の遅れをローレンツ変換 t t - x x - t, x 静止静止静止静止 を導いた これを 図の場合に当てはめると t - x x - t t, x t + x x + t t, x (5.) (5.) (5.3) を得る

More information

Prog1_12th

Prog1_12th 2013 年 7 月 4 日 ( 木 ) 実施 ファイル処理ファイルとはファイル (file) は日常用語では紙などを綴じたものを表すが, コンピュータ用語ではデータの集合体を指す言葉である ファイルは例えば, 文書ファイルやプログラムファイルのように, 用途によって分類されることもあれば, また, テキストファイルやバイナリファイルのように, ファイルの作り方によって分類されることもある なお,

More information

<4D F736F F D20837D834E B95FB92F68EAE>

<4D F736F F D20837D834E B95FB92F68EAE> マクスウエルの方程式 Akio Arimoto, Monday, November, 7. イントロ長野 []p.4 に証明抜きで以下のような解説がある 次節以下これを証明していきたいと思う grad f «df d dx =,, rot «( i i), [ ] div «d ( dx dx + dx dx + dx dx ) æ f f f æ f f f rot grad f = rot( df

More information

演習1

演習1 神戸市立工業高等専門学校電気工学科 / 電子工学科専門科目 数値解析 2019.5.10 演習 1 山浦剛 (tyamaura@riken.jp) 講義資料ページ http://r-ccs-climate.riken.jp/members/yamaura/numerical_analysis.html Fortran とは? Fortran(= FORmula TRANslation ) は 1950

More information

Microsoft Word - no204.docx

Microsoft Word - no204.docx 2. ファイル処理 2.1 ファイル処理の基本いままでは プログラムを実行したとき 入力はキーボードから入れていました また その結果を画面で確認していました 簡単なものならそれでもいいのですが 複雑な入力はファイルから読み込んだり 結果は画面で見るだけでなくファイルに保存できればよいでしょう ここでは ファイル処理について説明します 使う関数のプロトタイプは次のとおりです FILE *fopen(const

More information

memo

memo 計数工学プログラミング演習 ( 第 3 回 ) 2016/04/26 DEPARTMENT OF MATHEMATICAL INFORMATICS 1 内容 ポインタ malloc 構造体 2 ポインタ あるメモリ領域 ( アドレス ) を代入できる変数 型は一致している必要がある 定義時には値は不定 ( 何も指していない ) 実際にはどこかのメモリを指しているので, #include

More information

Microsoft PowerPoint - kougi4.ppt

Microsoft PowerPoint - kougi4.ppt C の実行モデル 自由落下距離 前回の授業の 例題 1 の復習と重要事項 の確認 地上で物を落とし始めた後の自由落下距離を 求める 重力加速度 g は 9.8 とする 自由落下距離を求めるために, プログラム中に, 計算式 y = ( 9.8 / 2.0 ) * x * x を書く C++ ソースファイルの編集 編集画面 編集中のファイル名 関係するファイルなどが表示される ビルド結果などが表示される画面

More information

Microsoft PowerPoint - kougi6.ppt

Microsoft PowerPoint - kougi6.ppt C プログラミング演習 第 6 回ファイル処理と配列 1 ファイル処理 2 ファイル読み込み ファイル プログラム ファイルの中身は変わらない 3 ファイル書き出し ファイル プログラム ファイルの中身が変わる ファイルは伸び縮みすることがある 4 例題 1. テキストファイル形式の ファイルからのデータ読み込み 次のような名簿ファイル ( テキストファイル形式 ) を読み込んで,1 列目の氏名と,3

More information

Prog1_6th

Prog1_6th 2019 年 10 月 31 日 ( 木 ) 実施配列同種のデータ型を有する複数のデータ ( 要素 ) を番号付けして, ひとまとまりの対象として扱うものを配列と呼ぶ 要素 point[0] point[1] point[2] point[3] point[4] 配列 配列の取り扱いに関して, 次のような特徴がある 1. プログラム中で用いる配列変数 ( 配列の本体を参照する参照型の変数 ) は必ず宣言しておく

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション プログラミング応用演習 第 4 回再帰的構造体 前回の出席確認演習 #include int main() { FILE *fp; int c, linecount, length, maxlength; fp=fopen("/usr/share/dict/words","r"); if (fp == NULL) return 1; linecount=0; length=0;

More information

Microsoft Word - Cプログラミング演習(12)

Microsoft Word - Cプログラミング演習(12) 第 12 回 (7/9) 4. いくつかのトピック (5)main 関数の引数を利用したファイル処理 main 関数は, 起動する環境から引数を受け取ることができる 例えば 次に示すように,main 関数に引数を用いたプログラムを作成する 01 /* sample */ 02 /* main 関数の引数 */ 03 #include 04 05 main(int argc, char

More information

コマンドラインから受け取った文字列の大文字と小文字を変換するプログラムを作成せよ 入力は 1 バイトの表示文字とし アルファベット文字以外は変換しない 1. #include <stdio.h> 2. #include <ctype.h> /*troupper,islower,isupper,tol

コマンドラインから受け取った文字列の大文字と小文字を変換するプログラムを作成せよ 入力は 1 バイトの表示文字とし アルファベット文字以外は変換しない 1. #include <stdio.h> 2. #include <ctype.h> /*troupper,islower,isupper,tol コマンドラインから受け取った文字列の大文字と小文字を変換するプログラムを作成せよ 入力は 1 バイトの表示文字とし アルファベット文字以外は変換しない 1. #include 2. #include /*troupper,islower,isupper,tolowerを使うため宣言*/ 3. 4. int get_n(char *); 5. void replace(char

More information

Microsoft PowerPoint - prog04.ppt

Microsoft PowerPoint - prog04.ppt プログラミング言語 2 第 04 回 (2007 年 05 月 14 日 ) 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 1 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/language/ にアクセスすると 教材があります 2007 年 05 月 14 日分と書いてある部分が 本日の教材です 本日の内容

More information

SYSMAC(C□□H・C200H・C200HS用)コマンドマニュアル

SYSMAC(C□□H・C200H・C200HS用)コマンドマニュアル SYSMAC 2 3 4 5 6 7 " ( ) 8 9 10 11 890 3456789012345 123456789012345678 901234567890123456789 890123456789012345678901 78901234567890123456789012 6789012345678901234567890121 567890123456789012345678901212

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション プログラミング初級 第 7 回 2017 年 5 月 29 日 配列 ( 復習 )~ 文字列 1 配列とは 2 配列 : 複数の変数をグループとしてまとめて扱うもの 配列 変数 int data[10]; 整数型の配列 同種のデータ型を連続して確保したものを配列とよぶ = 整数がそれぞれにひとつずつ入る箱を 10 個用意したようなもの int data; 整数型の変数 = 整数がひとつ入る dataという名前の箱を用意したようなもの

More information

memo

memo 計数工学プログラミング演習 ( 第 3 回 ) 2017/04/25 DEPARTMENT OF MATHEMATICAL INFORMATICS 1 内容 ポインタの続き 引数の値渡しと参照渡し 構造体 2 ポインタで指されるメモリへのアクセス double **R; 型 R[i] と *(R+i) は同じ意味 意味 R double ** ポインタの配列 ( の先頭 ) へのポインタ R[i]

More information

Word 実技 実習 編 別冊-6 ページを このページに差し替えてください (*Word 2016では [ ページレイアウト ] タブは [ レイアウト ] タブと名称変更されました ) 1 頁 Word 2016 ( 課題 と ) W ワード ord 2016 の画面構成 [ フ

Word 実技 実習 編 別冊-6 ページを このページに差し替えてください (*Word 2016では [ ページレイアウト ] タブは [ レイアウト ] タブと名称変更されました ) 1 頁 Word 2016 ( 課題 と ) W ワード ord 2016 の画面構成 [ フ 教材名 高校版 課題で学ぶ ( 教材 No.82) 新 情報 活用テキスト & 学習ノート Office2016 差分表本書は 以下の教材を Office2016 で使用する際に 正誤表のようにご利用ください また これ以外は 全て Office2013 のと同様となります 教材ページ 差分 ( 変更 ) 箇所 1. 新 情報 活用テキスト 差分はありません 第 4 章ワープロソフトの活用 別冊 -6

More information

差分スキーム 物理 化学 生物現象には微分方程式でモデル化される例が多い モデルを使って現実の現象をコンピュータ上で再現することをシミュレーション ( 数値シミュレーション コンピュータシミュレーション ) と呼ぶ そのためには 微分方程式をコンピュータ上で計算できる数値スキームで近似することが必要

差分スキーム 物理 化学 生物現象には微分方程式でモデル化される例が多い モデルを使って現実の現象をコンピュータ上で再現することをシミュレーション ( 数値シミュレーション コンピュータシミュレーション ) と呼ぶ そのためには 微分方程式をコンピュータ上で計算できる数値スキームで近似することが必要 差分スキーム 物理 化学 生物現象には微分方程式でモデル化される例が多い モデルを使って現実の現象をコンピュータ上で再現することをシミュレーション ( 数値シミュレーション コンピュータシミュレーション ) と呼ぶ そのためには 微分方程式をコンピュータ上で計算できる数値スキームで近似することが必要になる その一つの方法が微分方程式を差分方程式におき直すことである 微分方程式の差分化 次の 1 次元境界値問題を考える

More information

平成 年 月 7 日 ( 土 第 75 回数学教育実践研究会アスティ 45 ビル F セミナールーム A 札幌医科大学 年 P ab, を正の定数とする 平面上において ( a, を中心とする円 Q 4 C と (, b を中心とする円 C が 原点 O で外接している また P を円 C 上の点と

平成 年 月 7 日 ( 土 第 75 回数学教育実践研究会アスティ 45 ビル F セミナールーム A 札幌医科大学 年 P ab, を正の定数とする 平面上において ( a, を中心とする円 Q 4 C と (, b を中心とする円 C が 原点 O で外接している また P を円 C 上の点と 平成 年 月 7 日 ( 土 第 75 回数学教育実践研究会アスティ 45 ビル F セミナールーム 微分積分の拡張 変数関数問題へのアプローチ 予選決勝優勝法からラグランジュ未定乗数法 松本睦郎 ( 札幌北高等学校 変数関数の最大値 最小値に関する問題には多様なアプローチ法がある 文字を固定した 予選決勝優勝法, 計算のみで解法する 文字消去法, 微分積分を利用した ラグランジュ未定乗数法 がある

More information

スライド 1

スライド 1 数値解析 2019 年度前期第 13 週 [7 月 11 日 ] 静岡大学創造科学技術大学院情報科学専攻工学部機械工学科計測情報講座 三浦憲二郎 講義アウトライン [7 月 11 日 ] 関数近似と補間 最小 2 乗近似による関数近似 ラグランジュ補間 T.Kanai, U.Tokyo 関数近似 p.116 複雑な関数を簡単な関数で近似する 関数近似 閉区間 [a,b] で定義された関数 f(x)

More information

2 / 26 平成 26 年 4 月 11 日 ( 金 ) 午後 1 時 9 分 Visual C Express の使用法 ( 東海大学理学部物理学科 ) 無償で利用できる開発環境 (Windows XP 以降 ) Visual Studio 2010 Express

2 / 26 平成 26 年 4 月 11 日 ( 金 ) 午後 1 時 9 分 Visual C Express の使用法 ( 東海大学理学部物理学科 ) 無償で利用できる開発環境 (Windows XP 以降 ) Visual Studio 2010 Express 1 / 26 平成 26 年 4 月 11 日 ( 金 ) 午後 1 時 9 分 Visual C++ 2010 Express の使用法 ( 安江正樹 @ 東海大学理学部物理学科 ) Visual C++ 2010 Express の使用法 コンソールプログラムの作成方法と実行 コンピュータ物理学演習 Ⅱ 東海大学理学部物理学科 安江正樹 yasue@keyaki.cc.u-tokai.ac.jp

More information

PowerPoint Presentation

PowerPoint Presentation 工学部 6 7 8 9 10 組 ( 奇数学籍番号 ) 担当 : 長谷川英之 情報処理演習 第 7 回 2010 年 11 月 18 日 1 今回のテーマ 1: ポインタ 変数に値を代入 = 記憶プログラムの記憶領域として使用されるものがメモリ ( パソコンの仕様書における 512 MB RAM などの記述はこのメモリの量 ) RAM は多数のコンデンサの集合体 : 電荷がたまっている (1)/ いない

More information

Microsoft Word doc

Microsoft Word doc 1 1-1 (1) 150ml 500ml/ 1-1 () 1-1 1-0.0.5mm 114mm 1- ( ) () 4 AES 1000rpm 10 AES -1 - (0.04100 g cm) 5-1AES - 6 L B M t 98000 t = M pl ( ) B g& m t m = g& 7.0 - L= B =. -7.0 7 0mm -4-4 8 500ml 1ml/h 00ml/h

More information

§6

§6 6. 代数方程式 [ 第 回 ] 6. ベアストウ法 3 の代数方程式の数値解を求める方法の一つにベアストウ法がある. fz () z + az +! + a z+ a 0 この式を 次式 : z + pz +q で割ると一般に, 3 fz () ( z + pz+ q)( "###############$# z + bz +! ############## + b 3z+ b ) + #%# Rz

More information

<4D F736F F D20438CBE8CEA8D758DC F0939A82C282AB2E646F63>

<4D F736F F D20438CBE8CEA8D758DC F0939A82C282AB2E646F63> C 言語講座第 2 回 作成 : ハルト 前回の復習基本的に main () の中カッコの中にプログラムを書く また 変数 ( int, float ) はC 言語では main() の中カッコの先頭で宣言する 1 画面へ出力 printf() 2 キーボードから入力 scanf() printf / scanf で整数を表示 / 入力 %d 小数を表示 / 入力 %f 3 整数を扱う int 型を使う

More information