OpenSees Blog 日本語 目次

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

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







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

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


2014年9月2日火曜日

OpenSees Basic Examples (H3: 弾性フレーム解析) 解説(Gravity Loads 重力荷重)

2)重力荷重の設定

この構造物に加える重力荷重(紫の矢印部分)を設定します。

timeSeries Linear [タグ番号] 
このコマンドについての説明は、ここ
「時間ごとに線形に一様に変位する力」という定義です。


また、Element(要素)にかける外力なので、Elemental Loadを使用します。
(参照ページはここ
このコマンドは、一本線であらわされる要素に適用できるもので、連続体での要素には適用できません。

pattern Plain [Loadの通し番号] [ 上記のtimeSeriesで指定したタグ番号]  {
     eleLoad -ele [Element番号] -type -beamUniform [分散荷重]

timeSeries Linear 1

pattern Plain 1 1 {
    eleLoad -ele 13 14 15 -type -beamUniform -$w1
    eleLoad -ele 16 17 18 -type -beamUniform -$w2
    eleLoad -ele 19 20 21 -type -beamUniform -$w3
}



3)OpenSeesで用意されているツールの設定
有限要素法で使用する連立方程式の解法を設定します。
ここで使用しているコマンドについての
参照ページは ここ と ここ


# Create the system of equation, a SPD using a band storage scheme
system BandSPD

# Create the DOF numberer, the reverse Cuthill-McKee algorithm
numberer RCM

# Create the constraint handler, a Plain handler is used as homo constraints
constraints Plain

# Create the integration scheme, the LoadControl scheme using steps of 1.0
integrator LoadControl 1.0

# Create the solution algorithm, a Linear algorithm is created
test NormDispIncr 1.0e-10 6
algorithm Newton

# create the analysis object 
analysis Static 


4)解析開始
ここでは、解析を1行のみ行うように指定しています。
(参照ページは、ここ

analyze 1

5) 平衡点(バランス)のチェックと結果表示

「analyze 1 」の結果は、もしRecorderコマンドでの出力ファイルの指定があった場合は、このファイルに結果を出力します。(参照ページは ここ

ここではスクリーン上に出力します。

抗力の結果を出力することを指示するコマンド
# invoke command to determine nodal reactions 
reactions

Node1,2,3,4の抗力を、node1Rxn, node2Rxn, node3Rxn, node4Rxn にセットします
# nodeReaction command returns nodal reactions for specified node in a list
set node1Rxn [nodeReaction 1]
set node2Rxn [nodeReaction 2]
set node3Rxn [nodeReaction 3]
set node4Rxn [nodeReaction 4]

Y方向の想定される力は重力のみ inputedFyに、ここで定義した固定荷重をセットします。
# loads added negative Fy diren to ele
set inputedFy  [expr -$Load1-$Load2-$Load3]; 
ちなみに、X方向の想定される力は無いので、0

解析結果で出力されるX方向の抗力をcomputedFxにセットします
set computedFx [expr [lindex $node1Rxn 0]+[lindex $node2Rxn 0]+[lindex $node3Rxn 0]+[lindex $node4Rxn 0]]

解析結果で出力されるY方向の抗力をcomputedFyにセットします
set computedFy [expr [lindex $node1Rxn 1]+[lindex $node2Rxn 1]+[lindex $node3Rxn 1]+[lindex $node4Rxn 1]]

バランスチェックは、想定されていた力と、解析した力の残差で行います
puts "\nEqilibrium Check After Gravity:"

X方向は、想定される力0と、computedFxの残差を計算します
puts "SumX: Inputed: 0.0 + Computed: $computedFx = [expr 0.0+$computedFx]"
Yh向は、inputedFyと、computedFxの残差を計算します
puts "SumY: Inputed: $inputedFy + Computed: $computedFy = [expr $inputedFy+$computedFy]"



次のページ →
Basic Examples  (Elastic Frame) 
解説(Lateral Load 横荷重)


Opensees コマンド 日本語解説 : 目次



0 件のコメント:

コメントを投稿