初めての店舗開業を成功させよう>>

数値シミュレーションの勉強に役立つ文献を教えてください。

数値シミュレーションを勉強したいと考えています。
 ※ここでいう数値シミュレーションは
   ・Flow3D
   ・CAE
  といった、既存のソフトを使用するものではなく、
  C言語などを用いて実際に自分でプログラムをくむことを言っています。
  伝わりますかね。


実際にシミュレーションを組む流れは
 1:支配方程式を導き
 2:数学的な計算方法を盛り込む(ex ルンゲクッタ)
といったものという認識でいます。

上記らを体系的に学びたいと考えています。
それに必要な文献や資料を、ご教授願います。ⵁ

このQ&Aに関連する最新のQ&A

A 回答 (4件)

>伝わりますかね。



 たぶん伝わってると思います。昔は簡単な事をするFEMソフトもなかったので、みんな自分で自作したものです。

 CAEソフトは、大別して4種類に分けられる気がします。

  ※CAEは、個々の解析ソフトを指す言葉ではありません。でも言いたい事はわかります。

  (1)有限要素法関連
  (2)境界要素法関連
  (3)差分法関連
  (4)個別要素法,粒状態コードと言われるもの,離散化極限解析,不連続変形法など

 (1)については何といっても「有限要素法ハンドブック,陪風館」があります。(2)については、「境界要素法の基礎,境界要素法研究会」などがあります。これらは現在、絶版かも知れませんが、本気ならアマゾンなどで探してみて下さい。また大学の図書館には、必ずあるはずです。

 (3)差分法については、あまり知らないのですよ。あまりやった事がないので。

 で(1),(2)だけだと、次の分野が抜け落ちる可能性があります。

  ・流体力学および電磁気学.

 例えば電磁気学では、シンプレテクィック形式に基づいた差分法が現在は、主流のようです。また流体力学は、粘性を考慮するととんでもなく計算が難しいので、(1)~(3)を全て併用してるみたいです。

 (4)は、(1)(2)の現代的発展です。

 こんなところでどうでしょうか?。


※追伸

 造船工学における無限遠境界の扱いなどは、境界要素法の独壇場で非常に面白かったです。ところが局所的定式化を行う差分法なんかにも、妥当と言わざる得ない方法があったりするんです。この辺りは、数値解析理論の深さだと思います。

 数値計算だからといって、馬鹿にするなかれ・・・(^^;)。
    • good
    • 0

1. 支配方程式を導き



の部分は, ものすごく難しいです. ここは, 個々の問題に対して, 考える必要があるため、一概にこうということは言えません.

2. 数学的な計算方法を盛り込む

という点に関しては, アルゴリズムや数値解析の分野になりますので, 今までの先人の知恵が使えます.

2に関しては, 下記の文献を参考にしてください:
http://phystitech.kuizu.net/Entry/15/
    • good
    • 0

極私的な観点からまずはこんなのでどうでしょう


というのを列挙いたします(もっと良い本があるかもしれませんが
プロではないので追いきれません。念のため)。

1.まず、プログラミング言語(C言語)に関して準備が必要であれば、
  以下のようなものがあればよいと思います(不要ならとばしてください)。

  ・サイエンス社『実践 Cプログラミング―基礎から設計/実装/テストまで』鈴木正人著
   http://www.saiensu.co.jp/?page=book_details&ISBN …


  ・エスアイビー・アクセス『S・P・ハービソン3世とG・L・スティール・ジュニアのCリファレンスマニュアル第5版』
   S・P・ハービソン3世とG・L・スティール・ジュニア著、玉井浩訳
    ※アマゾン等で入手できます。  
  
  必要に応じて、

  ・翔泳社『独習 C 第4版』ハーバート・シルト著 (株)トップスタジオ訳
   http://books.shoeisha.co.jp/book/b72093.html

  など。

2.物理カテだったので以下のようなものを挙げておきます。
  巻末にCとフォートランのコードが載ってます(小さい文字ですが・・・)

  ・朝倉書店『計算物理学 基礎編』小柳義夫 監訳
   http://www.asakura.co.jp/books/isbn/978-4-254-13 …
   
  ・朝倉書店『計算物理学 応用編』小柳義夫 監訳 
   http://www.asakura.co.jp/books/isbn/978-4-254-13 …

3.プログラミング実践で役に立つ書籍。

  ・技術評論社『NUMERICAL RECIPES in C [日本語版]』省略(多数のため)
   ※どうやら新版がでるみたいです。現行版はまだアマゾン等で購入できるようです。

  ・共立出版『数値計算の常識』伊理正夫・藤野和建 著 
   http://www.kyoritsu-pub.co.jp/bookdetail/9784320 …


あとは参考文献等から追ってみてください。
見当違いでしたらお許しください。
    • good
    • 0

 シミュレーションというのは、単なる手段・テクニックであり、しかも「現実の実験」の代わり(現実には難しいため、お金がかかるため)であることが多いのです。



 従って、現実に起こっていることを一定の精度でトレースし、現実の動きを検証したり予測したり、条件を変えてどうなるかを見ることが目的です。

 このため、「何を模擬したいか」「どんな現実の現象をトレースしたいか」から出発するのが普通です。
 シミュレーションの方程式が既に求まっているものは、単に計算すればよいだけの話で、いかに現実をトレースできる方程式を導くか、それが現実に合っていることをどう検証するか、その精度をどの程度に確保するか、現実と合わない部分をどう補正するか、というのがシミュレーションの「肝(きも)」です。

 「何の現象を模擬したいか」と明確にして、その現象をどのように分析・定式化するか、というための文献、資料を探す必要があると思います。
 地震のメカニズム、ミクロの世界の現象、宇宙の現象、生命現象、脳内の現象、建物の耐震など、分野は様々です。

 質問者さんの模擬したい現象が明確にならないと、答えようがないと思います。

 質問者さんが、「シミュレーションのテクニック」の方に興味があるのであれば、的外れな回答ですみません。
 こちらであれば、一般の参考書はたくさんあると思います。
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q物理シミュレーションをする時、どのくらいプログラミングの知識があればいいのか?

物理学で自然現象をパソコンでシミュレーションするとき、プログラム言語はどのようなものを使うのでしょうか?よく知られたC言語やJava等は使わないのでしょうか?専門的なプログラム言語がいろいろあるのでしょうか?

今後パソコンで物理シミュレーションを行うことになったとき、プログラムに関してはどのくらいの知識があればいいのでしょうか?
基本的な本を見るとBasicやFortranを使ってシミュレーションの説明をしているものがありますが、このような基本的な言語も使えるようになったほうがよいのでしょうか?
C言語やJava、VBなど一般的によく知られたプログラミング言語も覚えたほうがよいのでしょうか?

Aベストアンサー

いくつかのケースがあります.

どなたかもすでにご回答のとおり,
「シミュレーション記述言語」というようなものが
いくつかありまして,
mathematica
freefem
その他,有料のfemソフトとか
流体解析ソフト

に入力するデータを作って入れる
ということになります.
それを一種の言語を用いたプログラミングだといえばそうでしょう.

別のケースとして,Cなどのプログラム言語で,
femソフトを作る場合もあります.
そのときに,どういう手順をたどるかというと,
物理現象を,マトリックス形式にする式展開の載っている本を購入します.
その本は,ハンドブックだったりしますが,
そこに載っているマトリックス形式の式を
プログラムします.
そのときには,プログラム言語は何でもいいと思います.

一部で,Fortranや,BASICというのがありますが,
これらは,Fortranについて言えば,昔ながらのものであり,これを用いたプログラムがたくさんあるという理由です.BASICも同様です.

もしも新たに,プログラムについて覚えるのならば,
CかC++でしょうね.

これからは,プログラマーは,適当に書いて,
最適化コンパイラが汗をしぼって「高速で効率的な実行形式を生成する」時代です.

私も,言語はBASICから入り,大学時代はFortran
を主に使ってました.シミュレーションをプログラムするレベルなら,どれも大差ありません.
Cが一番小回りが利いていいと思いますね.

いくつかのケースがあります.

どなたかもすでにご回答のとおり,
「シミュレーション記述言語」というようなものが
いくつかありまして,
mathematica
freefem
その他,有料のfemソフトとか
流体解析ソフト

に入力するデータを作って入れる
ということになります.
それを一種の言語を用いたプログラミングだといえばそうでしょう.

別のケースとして,Cなどのプログラム言語で,
femソフトを作る場合もあります.
そのときに,どういう手順をたどるかというと,
物理現象を,マトリックス形...続きを読む

Qエクセルで計算すると2.43E-19などと表示される。Eとは何ですか?

よろしくお願いします。
エクセルの回帰分析をすると有意水準で2.43E-19などと表示されますが
Eとは何でしょうか?

また、回帰分析の数字の意味が良く分からないのですが、
皆さんは独学されましたか?それとも講座などをうけたのでしょうか?

回帰分析でR2(決定係数)しかみていないのですが
どうすれば回帰分析が分かるようになるのでしょうか?
本を読んだのですがいまいち難しくて分かりません。
教えてください。
よろしくお願いします。

Aベストアンサー

★回答
・最初に『回帰分析』をここで説明するのは少し大変なので『E』のみ説明します。
・回答者 No.1 ~ No.3 さんと同じく『指数表記』の『Exponent』ですよ。
・『指数』って分かりますか?
・10→1.0E+1(1.0×10の1乗)→×10倍
・100→1.0E+2(1.0×10の2乗)→×100倍
・1000→1.0E+3(1.0×10の3乗)→×1000倍
・0.1→1.0E-1(1.0×1/10の1乗)→×1/10倍→÷10
・0.01→1.0E-2(1.0×1/10の2乗)→×1/100倍→÷100
・0.001→1.0E-3(1.0×1/10の3乗)→×1/1000倍→÷1000
・になります。ようするに 10 を n 乗すると元の数字になるための指数表記のことですよ。
・よって、『2.43E-19』とは?
 2.43×1/(10の19乗)で、
 2.43×1/10000000000000000000となり、
 2.43×0.0000000000000000001だから、
 0.000000000000000000243という数値を意味します。

補足:
・E+数値は 10、100、1000 という大きい数を表します。
・E-数値は 0.1、0.01、0.001 という小さい数を表します。
・数学では『2.43×10』の次に、小さい数字で上に『19』と表示します。→http://ja.wikipedia.org/wiki/%E6%8C%87%E6%95%B0%E8%A1%A8%E8%A8%98
・最後に『回帰分析』とは何?下の『参考URL』をどうぞ。→『数学』カテゴリで質問してみては?

参考URL:http://ja.wikipedia.org/wiki/%E5%9B%9E%E5%B8%B0%E5%88%86%E6%9E%90

★回答
・最初に『回帰分析』をここで説明するのは少し大変なので『E』のみ説明します。
・回答者 No.1 ~ No.3 さんと同じく『指数表記』の『Exponent』ですよ。
・『指数』って分かりますか?
・10→1.0E+1(1.0×10の1乗)→×10倍
・100→1.0E+2(1.0×10の2乗)→×100倍
・1000→1.0E+3(1.0×10の3乗)→×1000倍
・0.1→1.0E-1(1.0×1/10の1乗)→×1/10倍→÷10
・0.01→1.0E-2(1.0×1/10の2乗)→×1/100倍→÷100
・0.001→1.0E-3(1.0×1/10の3乗)→×1/1000倍→÷1000
・になります。ようするに 10 を n 乗すると元の数字になるた...続きを読む


人気Q&Aランキング

おすすめ情報