OpenSees Blog 日本語 目次

最初に「このブログをみるためのガイド」をご覧ください。

Update中OpenSees コマンド 日本語解説 の 目次 OpenSeesコマンド はじめての方は「ここから
このblogで使用しているOpenSeesコマンド集は「ここ」 Update中
OpenSees のソースコード 解析に挑戦してみる 目次最初のページは「ソースコードのダウンロードとビルド」
Appendix:C言語での 「有限要素法における平面トラスの解析」目次最初のページは「Microsoft Visual Studioの導入方法」







目次の中で、更新したページにはNewがついています

このブログ内の単語を検索したい場合は、左上OpenSeesロゴの上に検索窓から検索できます。


2015年6月23日火曜日

<有限要素法>マトリクスなど、必要となるデータのメモリーを解放(free)する


プログラムを終わらせる前に、念のためアロケートしていたすべてのメモリ領域を解放(free)します。





次のページ →

<有限要素法>マトリクス計算のファンクション



「有限要素法における平面トラスの解析」プログラムをC言語で書いてみる : 目次

2015年6月18日木曜日

<有限要素法>マトリクス計算のファンクション


「有限要素法における平面トラスの解析」プログラムをC言語で書いてみる


で使用しているマトリクス関連計算を行うためのプログラム(function) をまとめて記載します。


4行4列の2つの行列を掛け合わせるためのfunction MxM( )






4行4列の逆行列と行列を掛け合わせるためのfunction WxM( )







4行4列の行列と成分4のベクトルを掛け合わせるためのfunction MxV( )






次のページ →
<有限要素法>LAPACKを使用した、変位の計算


「有限要素法における平面トラスの解析」プログラムをC言語で書いてみる : 目次

2015年6月9日火曜日

<有限要素法> 応力の計算とバランスチェック


各部材の応力を計算します。

変位 displacement から要素節点変位ベクトル displacement_vector_of_element_points[ESM_NUM]
を作成します。
ESM_NUM は4です

これに 剛性マトリックス all_valid_ESmatrix_EK をかけると要素節点力ベクトル
force_vedtor_of_element_points[ESM_NUM]
が作成できます。
このベクトルは、全体座標系上での表現ですので、部材座標系に変換するために、
全体座標系から部品座標系への変換マトリクス tranGtoE をかけて、
部品座標系上での要素節点力ベクトルが求められます。
この求められたベクトルの第3成分が軸力になります。

求める応力は、この軸力を断面積element_areaで割ったものです。
すべての要素について、応力をもとめます。

次にバランスチェックを行います。
すべての要素について、上記でもとめた
要素節点力ベクトルforce_vedtor_of_element_points[ESM_NUM]
の総和が、0に近い残差であることを確認することによって、バランスチェックを行います。


<有限要素法> 応力の計算とバランスチェック のプログラムをまとめたものは、以下の様になります。
(途中、いらなくなったメモリを解放しています)



次のページ →
<有限要素法> 全体座標系における剛性マトリックス、変位などのデータをcsvファイルに書き込む


「有限要素法における平面トラスの解析」プログラムをC言語で書いてみる : 目次

2015年6月2日火曜日

OpenSees Developer : 構造計算(静的・非線形解析) 4


OpenSees Developer :構造計算(静的・非線形解析)3
で求めた「軸力、せん断力、曲げを受ける部際が任意の方向を向いている場合の剛性マトリクス」を利用して、
実帯連立一次方程式を解く
部分についてのプログラムです。


theSOE->solve()は、
C:\OpenSees-work\OpenSees5621\OpenSees\SRC\system_of_eqn\linearSOE\bandGEN\BandGenLinLapackSolver.cpp
または
\system_of_eqn\linearSOE\bandGENプロジェクトのBandGenLinLapackSolver.cpp
にあります。

LAPACKライブラリの実帯連立一次方程式DGBSV を呼ぶことによって、変位を計算が行われます。




ここで DGBSVの
Aptrに線形剛性マトリックス(入力)
Xptrに外力(入力) と 変位(出力)
が 該当することになります。


OpenSees のソースコード解析に挑戦してみる : 目次