Posts

初心に戻って少し復習

Image
たわみ量の話題が続いていたので、次に作用する力についても計算をやっていきたい、というノリなのだが、その前に少し復習をしてみたいと思う。 どのような作業でもそうだが、実際取り組もうとしている事柄を事前にイメージしてから、作業すると「よく考えてみれば当たり前だった」というような簡単なミスをなくすことに繋がる。また、いきなり、難しい式を並べ立てると、私自身、何をやっているのか段々と分からなくなってくる性格であるので、難しく考えすぎず、まず大体のイメージを理解したいと思う。そこで、定式化を行う前に、まず、シンプルなモデルにおいて、どのような速度、加速度波形になるか、想像してイメージして十分捉えてから、定式化作業に入りたいと思う。 まず、図1 のような問題を考えてみた。 地面に置かれている物体(剛体)が、後ろから、ポンッと押されて、移動した後、地面との摩擦によって停止するモデルだ。地面との摩擦というと、なにか、難しいような気がしてくるのだが、振動の教科書に記載されるような一般化モデルで表現すると、図2 のように表現できると思う。(ただし物体は返ってこないので、バネ定数項はゼロ) 図1. 図2. これは、実際に、テーブルに消しゴムなどを置いて指で、はじいている感じを想像すれば良いのだと思う。初速度ゼロの物体は、押されて、速度が上昇し暫くした後、最高速度に達する。その後、また速度は低下し、速度ゼロになって停止するといった具合になると、私はイメージする。最高速度が 3.0 [m/sec] で、移動時間が、3.0 [sec] であった場合を例にとって考えると、以下の図3 のような感じになると思う。尚、時間のズレであるとか、停止における速度低下の方が、もっと緩やかであるとか、色々と細かな違いは、実際にはあると思う。 図3. 速度を表現できれば、あとは、それを微分して加速度。また積分して変位量を表現することが出来るので、加速度、変位量波形も、上の図3に記載してみた。 ここで、平均速度(図3 内では、 Average Velocity )という値がある。これは、以下の式によって求められる。 平均速度 = 結果として移動した距離 / 移動時間 上の図3には、この平均速度というのも記載してみた。 今回の場合、移動距離が 4.5 [m] 移動時間が 3.0 [sec] としたので 平均速度 =

Impactをもっと使ってみる3

Image
Fig.1 のように、質量 m の剛体が、v 0 の一定速度で、運動しているとします。 剛体が、長さ L , 断面積 A の棒に衝突したとき、棒はどの程度たわむ(圧縮)ことになるか、求めてみようと思います。 ただし、棒自身の質量による、慣性力(静止していようとする慣性力)は無視するとします。また、剛体が、棒に衝突した瞬間から、剛体は棒と一体となって運動する(跳ね返りは無かった)ものとします。 剛体の運動エネルギーを、棒の弾性歪みエネルギーで、完全に吸収したとした(剛体の運動が静止し、棒のたわみ量が最大となった)と考えます。 剛体が速度 v 0 で運動している場合、剛体が持っている運動エネルギーは、 1 / 2 ⋅ ( m ⋅ v 0 2 ) バネ定数 k のバネが、x だけ縮むとき、その弾性歪みエネルギーは、 1 / 2 ⋅ ( k ⋅ x 2 ) ここで、棒の軸方向に荷重 F を加えた時の、たわみ量 x を求める式は、 x = ( F ⋅ L ) / ( A ⋅ E ) 上式を、F= となるように整理すると、 F = ( ( A ⋅ E ) / L ) ⋅ x となる。 上式と、フックの法則式 F = k ⋅ x を比較すると、ちょうどバネ定数 k に相当する部分がわかる。よって、長さ L , 断面積 A , 縦弾性係数 E の棒を考えた場合、そのバネ定数 k は、 k = ( ( A ⋅ E ) / L ) となる。 よって、バネの弾性歪みエネルギーの式より、棒の弾性歪みエネルギーは、 1 / 2 ⋅ ( k ⋅ x 2 ) = 1 / 2 ⋅ ( ( ( A ⋅ E ) / L ) ⋅ x 2 ) 今、剛体の運動エネルギーを、棒の弾性歪みエネルギーで、完全に吸収したときを考えているので、 1 / 2 ⋅ ( m ⋅ v 0 2 ) = 1 / 2 ⋅ ( ( ( A ⋅ E ) / L ) ⋅ x 2 ) となる。 よって、棒の軸方向たわみ量 x は、 x = √( m ⋅ v 0 2 ⋅ L / ( A ⋅ E ) ) となるはず。 次に、たわみが最大となる時間について考えてみる。 Fig.3 のように、バネ⋅マス系と捉えると、これは周期的な振動をする1自由度系の振動モデルと捉えることができる。このような単純な1自由度系の振動モデルの、固有円

Impactをもっと使ってみる2

Image
物体の運動方程式(運動量の保存則)の理解を深めるために、以下のような問題について、理論式と解析の比較を行ってみた。以下の問題は、 陰解法と陽解法による非線形構造解析の実際 に記載してある問題を、そのまま使わせて頂いています。 傾いた棒(長さ l , 質量 m)が、壁面に向かって、ある速度でもって運動していくとき、壁面との接地点(A点)での跳ね返りは無かったと仮定すると、右図のような運動をする。(Fig.1 から Fig.2 の状態に、棒は運動する) 壁面との衝突後に、棒が回転しながら運動する速度 v c ' を求めてみる。 棒は衝突直前までは、速度v c でもって、並進方向に運動していく。角運動量 L = r × m ⋅ v より、壁との接地点(A点)での角運動量で整理すると、 L A = r × m ⋅ v = l / 2 × m ⋅ (v c cosα) ただし、棒の幅寸法については、その寸法値は十分小さいもので、結果に対しても影響が小さいと仮定し、無視(幅寸法 -> ゼロ)してある。 次に、衝突直後について整理する。壁面との摩擦が0であると仮定すると、壁面から及ぼされる衝撃力は、壁面から垂直上方向となる。よって、棒の速度方向は、その方向を変えることなく、新たな速度 v c ' でもって運動を継続する。また、壁面との接地点(A点)が、壁面上で左方向に滑る運動が付け加わる為、棒は回転運動をすることになる。ここで、棒の回転運動の角速度を仮に ω' とする。ある慣性モーメント I rod を持つ物体が、角速度 ω' で運動するとき、その角運動量は、L = I rod ⋅ ω' と表現できる。 よって、衝突後での棒の角運動量は、 L A ' = ( r × m ⋅ v ) + ( I rod ⋅ ω' ) = ( l / 2 × m ⋅ (v c ' cosα) ) + ( I rod ⋅ ω' ) ここで、角運動量の保存則より、 L A = L A ' が成り立つ。 上に述べた式から整理していくと、v c ' を求める式が得られる。 ここで、 I rod , ω' についても、既知の数値(棒の長さ,棒の質量,v c ' , α) で、表現し

Impactをもっと使ってみる

Image
前回、 Impact で単純な棒波の計算を実施して理論との比較とかいう ややこしいことをしてましたが、いかんせん、形が単純すぎて現実感がない。やはり、おもしろさをもっと向上するためには、現実感があり、目で見て触れて感じれるぐらいのものが良いような感じがしたので、形だけでも車らしくした、下のような計算をしたりしてました。 このモデルは、 Blender で作りました。 たしかに、これぐらいの形状を表現してくると、見栄えはよく現実感みたいなものが得られるんですが、うちの iBook G4 では、計算時間が大変かかるようになってきて、なかなか結果を鑑賞することが出来ない問題がでてきました。陽解法での、衝突計算は、Δt との戦いみたいですね。 ちなみに、この、 Impact は、接触問題をペナルティ法によって解いてるようです。このペナルティ法のクセと、あとΔtの取り方を理屈ではなく経験によって理解度を向上させるのに、この Impact の利用は、大変有益でした。 ペナルティ法って、接触体の間に、バネを発生させて、あたかも接触しているような変形をそれぞれの接触面に発生させる方法ですが、 あたかも当たっているような状態 であって、 当たっている状態 とは違う。当然 あたかも当たっているような状態 なだけで、 当たっている とは認識されていないので、間に発生させているバネ力より、接触面間の運動による力の方が勝れば、突き抜けていくモードになるんですね。実際には、どんだけ力が大きくなっても 当たっている 限りは、破壊でもしない限り貫通なんてことは起きないんですけど。あと、接触間に見えないバネを作るということで、バネは弾性体なので、接触間の見えない要素(バネ)によって、エネルギが散逸されてしまう という実際には無いエネルギ散逸現象が付け加わるデメリットもあるみたいですね。短い計算時間で接触問題を解く良い手法なんですが、なんでもかんでも良いものなってなかなか無いですね。

物体内の波動伝播

Image
物体内の波動の伝播を表現する式は、要素のタイプによって異なるが、ビーム(棒)要素の場合の伝播速度は、c = √(E / ρ) で表されるらしい。ここで、Eは縦弾性係数、ρは質量密度。これは、物体内を振動波が伝播していく速度を表現したもので、空気をその媒介物として考えた場合、音速を表現したものとも言える。 ところで、物体内の伝播速度が上記であるとした場合、例えば、長さ=L の棒があった場合、その先端から波動が入力されて、反対側まで到達する為の時間は、time = L / c 。 また、反対側から波動が跳ね返って先端に返ってくる時間もまた、time = L / c 。 ということで、棒に波動を与えて変形させた場合、その波動が、また先端まで返ってくるまでの総時間は、time total = 2L / c となるはず。 ここで、有限要素法の解法の一つである陽解法では、運動方程式による陽関数によって変形モードが算出される解法で、波動の伝播を扱う問題について、良好な精度を示すということを聞いた。そこで、陽解法で解くフリーソフト Implact Finite Element Program を使って棒に波動を与えた場合に、波動が跳ね返ってくる時間を計算してみることにした。 モデルは、SI単位系で統一し、長さL=100[m]、直径=2.0[m] の棒(Rod_2) 。波動の速度を計算しやすくするために、縦弾性係数E=1000[Pa] , 質量密度&rho=0.1[kg/m 3 ] の材料特性。それに、初速度1.0[m/sec] の衝撃速度(棒の圧縮方向)を与えてみた。物体内の波動伝播速度は、c = 100 [m/sec] となるので、先端にまで跳ね返ってくる時間は、time total = 2 * 100 / 100 = 2.0 [sec] となるはず。 Implact Finite Element Program で計算を実施し、棒の先端部の変位量をプロットしたグラフを右に示す。グラフを見ると、圧縮して変形した棒が、時間1.0[sec]で、圧縮しきって次に変形が元に戻りはじめ、時間2.0[sec]には変位0に戻っていることがわかる。減衰は考慮しない材料特性としたので、波動は減衰せず、さらに棒は伸びていく変形になり、また伸びきった後、縮んでいく変形が繰り返されるこ

Gmsh

Gmsh の新しいバージョンv2.0 がリリースされているようです。(情報おそい) 起動してすぐのぱっとみた感じ、すぐにはどこが変わってるのかよくわからなかったんですが、よく見たら、ファイルの読み込み(Open)可能なファイル形式欄に、STEP , IGES , BREP のCADファイル形式が追加されていました。なにげに、持っていたSTEPファイルを読み込んでみたのですが、読み込んで開きましたよ。これはビックリ。 これで、CADシステムで作った形状データを書き出して、Gmshに読み込んでMeshを生成し、計算に持ち込んで遊ぶといったことができそうです。以前までは、CADデータを読み込むことが出来なかったので、demo ファイを読み込んでみたり、シンプルなデータをGmsh上で作ってみて、ちまちまと遊んでみたりといったことしか出来なかったので、活用の場面があまり想像できなく残念だったんですが、これで色々な使い道が考えられそうです。 でも、Gmsh上で 読み込んだ後のGeometry の編集作業は難しそう。そうすると、3次元CADが、すぐ近くに欲しい気になってきます。なにか、機能制限付きCADとかで、フリーライセンスのCADないですかね。

コメントについて

今日、BloggerをBeta版から、正式版にUpgradeした。そうすると、「未確認の投稿」というものがハイライトされていました。そこを見ると、私のBlogに対して2件のコメントがあることを知らせていました。 しかし、公開しているブログを見ても、 0 comments のまま。どうやら、このBlogの管理者が承認しないとコメントも表示されない設定にしてしまっていたようでした。そのため、たまに、ログインせずにブログを表示して下にあるコメント数を見ていたのですが、 0 comments となっていて、コメントを頂いていることに気づいていませんでした。コメント書いて頂いた方、投稿に気づかず放置状態となっていて、すみませんでした。