TOP > n.s.研究所 > ライブラリ > VisualC++ > 計算物理学

ライブラリ

計算物理学
ガウシアン型の平面波を誘電体円柱にぶつけてみたときの様子

文責:遠藤 理平 (2009年10月22日) カテゴリ:日誌計算物理学

ガウシアン型の平面波を誘電体円柱にぶつけてみたときの様子。
開発環境:VsualC++2008Expressedition
計算スキーム:FDTD
アニメーション:OPENGL
波源:平面波 ガウシアン
境界条件:PML

ガウシアン型平面波の生成

VsualC++ OPENGL FDTD の詳細は今後に行います

int main( int argc, char **argv ){
	//平面波の初期値
	double d = -30.0 * dx ;
	t0 = 20.0*dt;
	double phy0 = PI/2.0+PI;
	for(i=0; i<2*L+Nx; i++){
		for(j=0; j<2*L+Nx; j++){
			Ez[i][j] = Plane_GaussianPulse( t+ (dx*double(i)*cos(phy0)+dy*double(j)*sin(phy0))/c - d/c ,t0 );
		}
	}
	
	t = dt/2;
	for(i=0; i<2*L+Nx; i++){
		for(j=0; j<2*L+Nx; j++){
			Hx[i][j] = -sin(phy0) * Plane_GaussianPulse( t+ (dx*double(i)*cos(phy0)+dy*(double(j)+0.5)*sin(phy0))/c - d/c ,t0 )  / (120.0*PI) ;
			Hy[i][j] =  cos(phy0) * Plane_GaussianPulse( t+ (dx*(double(i)+0.5)*cos(phy0)+dy*double(j)*sin(phy0))/c - d/c ,t0 )  / (120.0*PI) ;
		}
	}
}
double Plane_GaussianPulse(double t ,double t0){
	double alpha = pow(4.0/t0,2);
	return exp(-alpha*pow(t-t0,2));
}

(タグ: , , , ,

■現在のカテゴリ: ライブラリ > VisualC++ > 計算物理学

ライブラリ

LabVIEWを使った物理数学集

VisualC++


▲このページのトップn.s.研究所 トップ

関連記事

日誌


計算物理学


▲このページのトップn.s.研究所 トップ

n.s.研究所

About n.s.研究所

Activity 活動予定

Thema 研究テーマ

単細胞生物の行動に関する研究

多細胞生物の行動に関する研究

社会性昆虫の行動に関する研究

人の認識に関する研究

環境に関する研究

Thema 開発テーマ

ロボットの開発

作ってみた

Lecture 講義

コンピュータ・サイエンス講座

マイコン・サイエンス講座

Library ライブラリ

LabVIEWを使った物理数学集

VisualC++

Report 報告

学会等での発表

論文発表

その他の報告




Warning: mysqli_connect(): (28000/1045): Access denied for user 'xsvx1015071_ri'@'sv102.xserver.jp' (using password: YES) in /home/xsvx1015071/include/natural-science/include_counter-d.php on line 8
MySQL DBとの接続に失敗しました