One Dimensional Finite Element Method
Wire and Chain-5

■入力データと計算方法■
ファイルWIRE0.DATは、ProgramWIRE3.FORのSUBROUTINE INPUTで取り込まれます。そして、SUBROUTINE INPUT を見ると次の様になっています。

行目 変数名 意 味
1 NE 要素数
2 DOMAINL 領域のx方向の全長
3 WDENSITY Wire の単位長さ当りの質量
4 TXMAX,
TXMIN,
TXSTEP
3つの実数があります。これらが、計算の手順を示しています。微分方程式は、非線形ですから、z(x) の推測値が必要ですよね。一番簡単なz(x)の推測値として、両境界点を直線で結ぶ線が考えれます。このとき Wire の Tension は、無限大になりますよね。 そこで、計算方法として、まず、大きい値の Tx (TXMAX) と直線のguessのz(x)で解析を行い、z(x)を得ます。この場合、少ない繰り返し数で、解がえられます。次のステップとして、 Tx から少し小さな値(TXSTEP)を引いて、計算されたばかりのz(x)を使って解析します。この計算を Tx=TXMIN まで行います。
5 Z1 x=0 でのz座標値
6 ZN x=DOMAINL でのz座標値

入力データでは、Z1=0,ZN=10となっていますので注意して下さいね。ProgramWIRE3.FORを実行すると、 計算結果は、SOLUTION.FEMSUMMARY.FEMの2つのファイルに入る様に設計されています。Excel で容易に読める様にフォーマットしてありますので、試してくださいね。

次に、入力データファイルのWIRE1.DATを見て下さい。要素数=60、領域の水平方向の長さ=60cm、Wire の質量=0.3571428571429grams/cm、TXMAX,TXMIN,TXSTEP=20grams, 4.grams, 1.gram となっていますね。プログラムの中で、重力は、1 としています。境界条件は、Z1=0.,ZN=0. となっていますね。

■計算例と実測■
この手の実験は、簡単ですので、やってみることにしました。上で説明した材料は、ホームセンター等で買える chain です。全長=112cm、全質量=40grams でした。壁に長さ60cmの水平線を描き、線の両端にchainの両端を画鋲で吊るしました。すると、最初のページで紹介した様に、chainは、曲線を描きます。この実験では、chain の最大深さは、約43cmになりました。この様な状況を実現するには、Tx=5.228grams になっていることが、計算からわかりました。 このときの結果を下図に示します。計算結果の半分を表示しています。実験と計算結果は、よく一致していますね。計算には、上のデータと同じWIRE1.DATを使いました。図をクリックすると、Excelで書かれた実験結果が得られます。

もう皆さんお気付きと思いますが、有限要素法のプログラムは、全てFortranで書いてあります。私は、Fortranが好きだからです。ところが、Fortranのcompilerは、Windows/DOS/Unix ベースが多く、私も、Windows用Windowsのcompilerを使っています。(しかし、htmlは、Macを使っていますがね。)ということで、皆様に使って頂けるMac用の実行ファイルが有りませんでした。

ところが、Viewerの一人のかど野 勝様よりMacの実行ファイルを頂きました。了解を頂いておりますので、是非、皆さん使ってみて下さい。かど野さん、有難うございます。

BACK NEXT Two Dimensional FEM
Menu View Helm wrm Lin Element Rmrk Vari Para Non-L Wire