# よくわかる有限要素法

福森 栄次 著（ISBN 4-274-06628-2　2005年11月発行）

書籍中で紹介しているソースコード、演習問題の解答などを提供します。

- 本プログラムは、本書をよくお読みの上ご利用ください。本プログラムは、書籍『よくわかる有限要素法』をご購入頂いた方に使用を許可するものです。書籍を購入されていない方のプログラムの使用は禁止します。また、プログラムの一部および全部を無断で複製および流用することは禁止します。
- 本ファイルを利用したことによる直接あるいは間接的な損害に関して、著作者およびオーム社はいっさいの責任を負いかねます。利用は利用者個人の責任において行ってください。また、ソフトウェアの動作・実行環境、操作についての質問には一切お答えすることはできません。

書籍で紹介したプログラムのソースコード、実行ファイル、インプットデータなどは、下記の一覧から取得してください（実行ファイルを得るには、LZHファイルを解凍する必要があります）。

本書の演習問題の解答は、ここをクリックして入手してください。

章 | 分類 | 詳細 | 分野 | 機能 | プログラム名 | 実行ファイル* | 入力データファイル
--- | --- | --- | --- | --- | --- | --- | ---
2 | 9 | 3 | 発散の定理による面積計算 | 面積と重心の計算 | green7 |  | 指示に従う
3 | 1 | 2 | Gauss-Legendre積分法 | 3.1.3の例題 | gaussSIN.for | gaussSIN.lzh | 指示に従う
練習問題 3.1 | gaussSQRT.for | gaussSQRT.lzh | 指示に従う
3 | 4 | 3 | 連立方程式 | ガウスの消去法 | FULLMTX.FOR | FULLMTX.LZH | FULLMTX.DAT
4 | 4 | Tri-Diagonal Matrix | TRI.FOR | TRI.LZH | TRIMTX.DAT
4 | 5 | 対称Tri-Diagonal Matrix | TRISYMM.FOR | TRISYMM.LZH | TRISYM.DAT
4 | 6 | 非対称Multi-Diagonal Matrix | MDMTX.FOR | MDMTX.LZH | MDMTX.DAT
4 | 7 | 対称Multi-Diagonal Matrix | MDSYMM.FOR | MDSYMM.LZH | MDSYM.DAT
4 | 1 | 8 | 1次元 ヘルムホルツ方程式 1要素 | 厳密解 | EXACT.FOR | EXACT.LZH | 全て1を入力
3 | 5 | 例題1：1要素1自由度Galerkin法 | WRM1X1A.FOR | WRM1X1A.LZH | 入力なし
3 | 7 | 例題2：1要素2自由度Galerkin法 | WRM2X2A.FOR | WRM2X2A.LZH | 入力なし
3 | 9 | 例題3：右端がNeumann条件 | WRM1X1S.FOR | WRM1X1S.LZH | 入力なし
5 | 1 | 例題4：φ1(x) を山形にする | TWELVE.FOR | TWELVE.LZH | 入力なし
5 | 2 | 例題5：u(L/2)が得られる近似式 | THIRTN.FOR | THIRTN.LZH | 入力なし
|  | 演習問題 (4.4) | FOUR.FOR | four.lzh | 入力なし
|  | 演習問題 (4.6) | WRM2X2B.FOR | WRM2X2B.LZH | 入力なし
|  | 演習問題 (4.7) | Wrm1x1s5.for | Wrm1x1s5.lzh | 入力なし
|  | 演習問題 (4.11)：非Galerkin法 | WRM1X1H.FOR | WRM1X1H.LZH | 入力なし
6 | 2 | 2 | 一次元 ヘルムホルツ方程式 1次要素で領域分割 | 1次要素基本プログラム (full matrix) | BUCKLE.FOR | Buckle.lzh | BUCKLE.DAT
4 |  | 6.4のインプットデータ |  |
4 |  | インプットデータ作成プログラム | SET1UP.FOR | Set1up.lzh | 指示に従う
2 | 3 | Tri-Diagonal Matrix活用 | BUCKLE1.FOR | Buckle1.lzh | BUCKLE.DAT
2 | 4 | 対称Tri-Diagonal Matrix活用 | BUCKLE1A.FOR | Buckle1a.lzh
8 | 4 | 2 | 変分法 | Neumann条件に対応した新しい要素 | BUCKLE1C.FOR | BUCKLE1C.LZH
9 | 3 | 1 | 一次元 ヘルムホルツ方程式 2次要素で領域分割 | 2次要素基本プログラム (full matrix) | BUCKLE2.FOR | Buckle2.lzh | BUCKLE2.DAT
3 | 2 | 9.3.2 の計算例の入力データ |  |
3 | 1 | 対称Tri-Diagonal Matrix活用 | BUCKLE2A.FOR | BUCKLE2A.lzh
3 | 1 | インプットデータ作成プログラム | SET1UP.FOR | Set1up.lzh | 指示に従う
10 | 1 | 4 | 1次元非線形 | 非線形ビーム解析 | BUCKLE1B.FOR | BUCKLE1B.LZH | BUCKLE.DAT
2 | 3 | ワイヤーの解析 | WIRE3.FOR | WIRE3.LZH | WIRE.DAT
11 | 9 | 1 | 2次元ラプラス方程式 | 三角形要素：基本形 | FEM3.FOR | FEM3.LZH | FEM3DATA.QQQ
8 | 1 | 11.8の例題の入力データ |  |
9 | 1 | 対称Tri-Diagonal Matrix | FEM3Q.FOR | FEM3Q.LZH
9 |  | インプットデータ作成プログラム | SETFEM3.FOR | SETFEM3.LZH | 指示に従う
12 | 6 | 1 | 2次元ラプラス方程式 （12.7 例題の計算） | 4節点アイソパラメトリック要素 | FEM4Q.FOR | FEM4Q.LZH | FEM4DATA.QQQ
インプットデータ作成プログラム | SETFEM4.FOR | SETFEM4.LZH | 指示に従う
8節点アイソパラメトリック要素 | FEM8Q.FOR | FEM8Q.LZH | FEM8DATA.QQQ
インプットデータ作成プログラム | SETFEM8.FOR | SETFEM8.LZH | 指示に従う
9節点アイソパラメトリック要素 | FEM9Q.FOR | FEM9Q.LZH | FEM9DATA.QQQ
インプットデータ作成プログラム | SETFEM9.FOR | SETFEM9.LZH | 指示に従う
8 | 1 | 楕円柱回りの流れ | 厳密解 | strmfnctn.for | strmfnctn.lzh | 入力なし
図12.26のデータ | FEM9Q.FOR | FEM9Q.LZH | FEM9DATA.QQQ
流速 u, v の計算 | torsion9q.for | torsion9q.lzh | TRS9DATA.QQQ
8 | 3 | 棒のねじり （ポアソン方程式を解く） | 厳密解（図12.36を再現） | strsfnctn.for | strsfnctn.lzh | 入力なし
4節点アイソパラメトリック要素 | torsion4q.for | torsion4q.lzh | TRS4DATA.QQQ
インプットデータ作成プログラム | SETTRS4.FOR | SETTRS4.LZH | 指示に従う
9節点アイソパラメトリック要素 | torsion9q.for | torsion9q.lzh | TRS9DATA.QQQ
インプットデータ作成プログラム | SETTRS9.FOR | SETTRS9.LZH | 指示に従う
8 | 5 | 音響振動と固有値問題 （ヘルムホルツ方程式を解く） | 固有値の厳密解 | excteigen.for | excteigen.lzh | 入力なし
固有値の近似解：4節点アイソパラメトリック要素 | EIGEN4Q8.FOR | EIGEN4Q8.LZH | EIGN4DAT.QQQ
4節点要素のデータ作成 | seteigen41.for | seteigen41.lzh | 指示に従う
固有値の近似解：9節点アイソパラメトリック要素 | EIGEN9Q8.FOR | EIGEN9Q8.LZH | EIGN9DAT.QQQ
9節点要素のデータ作成 | seteign9001.for | seteign9001.lzh | 指示に従う
EigenVectorの計算：4節点アイソパラメトリック要素 | HELM4Q.FOR | HELM4Q.LZH | HEL4DATA.QQQ
4節点要素のデータ作成 | SETHL41.FOR | SETHL41.LZH | 指示に従う
EigenVectorの計算：9節点アイソパラメトリック要素 | HELM9Q.FOR | HELM9Q.LZH | HEL9DATA.QQQ
9節点要素のデータ作成 | SETHL9-1.FOR | SETHL9-1.LZH | 指示に従う