OpenSees Blog 日本語 目次

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

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







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

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


2016年11月9日水曜日

OpenSees Basic Examples (F5:2D 梁への固体動力学問題)解析の設定


10)解析の設定

9)外力の設定で指定した荷重をかけている間の解析について設定しています。

解析する時の、連立方程式の解き方の手法などを設定します。
各コマンドの説明は、「OpenSeesコマンド集」を参照してください

解析は、Static で行い(analysis コマンド)、解析の間隔は1secから10secまで、1secづつ行う。(Integratorコマンド) 

analysis [解析タイプ] Static / Transient / VariableTransient

# Type of analysis analysis
analysis Static

integrator LoadControl  [解析する時間間隔] [解析を行う時間間隔の頻度間隔] [初期時間] [ 最終時間] 

(注) [解析を行う時間間隔の頻度間隔] は、
1がセットされた場合は、(初期値が1secの場合) 1, 2, 3, 4, 5sec となる
2がセットされた場合は、(初期値が1secの場合) 1, 3, 7, 15sec となる

# Load control with variable load steps
#                      init Jd min max
integrator LoadControl 1.0   1 1.0 10.0

連立方程式を解く時の収束判定は、エネルギーの変化をもとにして行う(testコマンド)

test EnergyIncr [耐性基準] [もし収束判定がエラーだった場合、再試行する回数] [判定結果の表示方法の指定]

注)  [判定結果の表示方法の指定] は 「何も表示しない」(=0) と指定している

# Convergence test
#              tolerance maxIter displayCode
test EnergyIncr 1.0e-12    10         0

方程式の解法は、Newton法を使用します。(algorithmコマンド)

# Solution algorithm
algorithm Newton

有限要素法解析で生成される係数行列での疎行列を解く場合の、行列の再配列方法は逆カットヒル・マキー法 (Reverse Cuthill–McKee algorithm ,RCM)を使用する (numbererコマンド)

# DOF numberer
numberer RCM

制約のついた非線形問題を制約なし問題に変換して解く変換法は、Plainを使用する(constraintsコマンド)

# Cosntraint handler
constraints Plain

線形連立方程式)の解法のために使用するプログラムは、LAPACKライブラリ(DPOSV)の実対称正定値連立一次方程式を使用する (systemコマンド)

# System of equations solver
system ProfileSPD

解析設定が終わった時点で、9)外力の設定で指定した荷重をかけて10secシュミレーションします。

analyze [実行する回数] 

まとめると、以下の通り。

# --------------------------------------------------------------------
# Start of static analysis (creation of the analysis & analysis itself)
# --------------------------------------------------------------------

# Load control with variable load steps
#                      init Jd min max
integrator LoadControl 1.0   1 1.0 10.0

# Convergence test
#              tolerance maxIter displayCode
test EnergyIncr 1.0e-12    10         0

# Solution algorithm
algorithm Newton

# DOF numberer
numberer RCM

# Cosntraint handler
constraints Plain

# System of equations solver
system ProfileSPD

# Type of analysis analysis
analysis Static

# Perform the analysis
analyze 10

# --------------------------
# End of static analysis
# --------------------------


 次のページ → 
OpenSees Basic Examples (F6::2D 梁への固体動力学問題) シュミレーション結果の画像表示

2016年11月4日金曜日

OpenSees Basic Examples (F4:2D 梁への固体動力学問題) レコーダー、外力の設定


8)解析結果を記録するレコーダーの設定
Node(節点)の解析結果を記録するためのファイル名、Node番号を設定します

recorder Node -file [ 出力ファイル名 ] -time(時間を基準として記録) -node[記録したいNode番号] -dof[記録したい自由度] disp(相対的な変位を出力) 

Node 9 での X,Y成分における変位を時間ごとに記録します。

# define the recorder
#---------------------
recorder Node -file Data/Node.out -time -node $l1 -dof 2 disp

$I1 は、ここで定義された 値が入ります。
I1 は、底辺の真ん中  → 9

Data/Node.out
の表記は、OpenSeesを動作させているフォルダーの下に、Dataというフォルダーを作成した上で、ファイル名 Node.out  に 出力結果を書きだします。

(参照ページはここ)

9)外力の設定
この構造物に加える外力(緑の部分)を設定します。

$I1、$I2 は、ここで定義された 値が入ります。
I1 は、底辺の真ん中  → 9
I2 は、上辺の真ん中  → 77

pattern Plain [Loadの通し番号] Linear  {
     load [Node番号] [自由度の1番目に対してかける力(X方向)] [ 自由度の1番目に対してかける力(Y方向)] 

      [ 自由度の3番目に対してかける力(θ方向)]
}

時間ごとに一定に、Node9 と Node77 に対して、Y方向 -1.0 の荷重をかけます。

# define load pattern
#---------------------
pattern Plain 1 Linear {
load $l1 0.0 -1.0
load $l2 0.0 -1.0


 次のページ → 
OpenSees Basic Examples (F5::2D 梁への固体動力学問題)解析の設定

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

2016年10月6日木曜日

OpenSees ユーザーズガイド: インストールと初めての使い方 Kindle版






OpenSees ユーザーズガイド: インストールと初めての使い方 Kindle版


出荷を開始しました。

Blogにぽちぽち書いていた内容が、古くなっておりましたので、新しいデータと2016年10月現在の情報に書き直したものを、まとめました。

OpenSeesのInstall 方法、はじめての使い方を解説している Getting stared の内容の説明と、実際にOpenSeesで動作させた出力結果、および、”PEER Ground Motion Database”のデータベースの使い方 おもに「コンピュータの使い方」の視点からの解説しています。約100ページ。

ご使用いただけましたら幸いです。



2016年8月27日土曜日

現在 公開停止中です

この数週間、あるIPアドレスが示す国から、異常な数の閲覧数が、数日続いて起こったため、
しばらく、最新の情報と目次以外を残して、公開を止めています。

もし特別なご希望などがありましたら、メール、コメントいただければ対応いたします

よろしくご理解お願いします
管理者2016年 8月1日

しばらく時間がたったので、一部、もとに戻しました。
管理者2016年9月4日


2016年7月20日水曜日

OpenSees Basic Examples (F3:2D 梁への固体動力学問題)Node(節点), Element(要素)の設定


6) Node(節点), Element(要素)の設定

下図の様な構造物を設定します。



















構造物は、メッシュで設定されていますが、
X方向、Y方向それぞれのブロックの数は、Xは4つ、Yは16つです。

# set up the number of elements in x (nx) and y (ny) direction
set nx 16; # NOTE: nx MUST BE EVEN FOR THIS EXAMPLE
set ny 4

重要な部分のNodeの番号をシンボルとして代入しておきます。
bn は、右下 → 17
I1 は、底辺の真ん中  → 9
I2 は、上辺の真ん中  → 77

# define numbering of node at the left support (bn), and the two nodes at load application (l1, l2)
set bn [expr $nx + 1]
set l1 [expr $nx/2 + 1]
set l2 [expr $l1 + $ny*($nx+1)]

矩形の場合は、block2D コマンドで、自動的に設定できます。
block2Dコマンドの説明は、ここです。

block2Dコマンドでは、下記の点についての値を設定すると、Node、Elementを設定したことになります。(便利ですね)














構造物のX方向の長さは40feet、Y方向の長さは10feet です。

Quad と eleArgs は Mode、係数などの設定 で代入した値が入っています。

# create the nodes and elements using the block2D command
block2D $nx $ny 1 1 $Quad $eleArgs {
1   0   0
2  40   0
3  40  10
4   0  10
}

7) 固定点の設定
Nodeのどこを固定するかを設定します

fix [ nodeの番号 ] [ uの固定の定義]  [ vの固定の定義]  [ θの固定の定義] 
0: 固定されていない
1: 固定されている

(参照ページはここ

# define boundary conditions
fix   1 1 1
fix $bn 0 1


 次のページ → 
OpenSees Basic Examples (F4::2D 梁への固体動力学問題)レコーダー、外力の設定

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

2016年7月13日水曜日

OpenSees Basic Examples (F2:2D 梁への固体動力学問題)Model、係数などの設定

1)  今までの設定をクリアします
wipe; # clear opensees model 

2) データ保存用に、"Data"という名前のディレクトリを作成します
# create data directory
file mkdir Data

3)Modelの設定
解析するモデルを設定します。
解析する時の、次元、自由度を設定するためのOpensees のコマンドは、以下の通りです。

model ModelBuilder -ndm [次元数] -ndf [自由度数] 

# Create ModelBuilder with 2 dimensions and 2 DOF/node
model BasicBuilder -ndm 2 -ndf 2

(参照ページはここ

4) 部材を定義します。
部材は、等方性材料です
nDMaterial ElasticIsotropic [通し番号] [ 弾性係数] [ポアソン比] [質量密度]

# create the material
nDMaterial ElasticIsotropic 1 1000 0.25 3.0

5)  有限要素法で使用する解析方法を定義
この例題では、矩形構造体をのメッシュとして設定した時の、有限要素法で解析する時の方法を定義しています。

ここではさらに、3つの方法で、解析する用意がされています。
a) 双一次アイソパラメトリック要素
b)Bマトリクス誘導による双一次アイソパラメトリック要素
c)拡張ひずみモードを考慮した 双一次アイソパラメトリック要素

それぞれの項目を使用するには、使用する以外の項目に#をつけることによってコメントアウトします。

# set type of quadrilateral element (uncomment one of the three options)
set Quad quad
#set Quad bbarQuad
#set Quad enhancedQuad

上の例では、a) 双一次アイソパラメトリック要素での解析を行います。

# set up the arguments for the three considered elements
if {$Quad == "enhancedQuad" } {
set eleArgs "PlaneStress2D 1"
}
if {$Quad == "quad" } {
set eleArgs "1 PlaneStress2D 1"
}
if {$Quad == "bbarQuad" } {
set eleArgs "1"
}

それぞれ、下記の様な定義になります

a) 双一次アイソパラメトリック要素
Quadは "quad"
eleArgsは "PlaneStress2D 1"

b)Bマトリクス誘導による 双一次アイソパラメトリック要素
Quadは "bbarQuad"
eleArgsは "1"

c)拡張ひずみモードを考慮した 双一次アイソパラメトリック要素
Quadは "enhancedQuad"
eleArgsは "PlaneStress2D 1"


 次のページ → 
OpenSees Basic Examples (F3::2D 梁への固体動力学問題)Node(節点), Element(要素)の設定

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

2016年7月6日水曜日

OpenSees Basic Examples (F1:2D 梁への固体動力学問題)例題


 Simply supported beam modeled with two dimensional solid elements 参照


固体動力学の問題です。
下記の様なメッシュの四角形構造の梁に対して、真ん中に上から垂直方向に力(緑)をかけ、一度にその力がなくなった時、どのように波動が伝播していくかを解析します。






















赤のNode1の部分はX,Y方向とも固定され、青のNode9の部分は、Y方向は固定されていますが、X方向は固定されていません。
なお、
上記の図では、X方向のブロックは8つ、Y方向のブロックは2つですが、
実際の例題では、X方向は16個、Y方向は4個で計算しています。

長さはX方向40inch, Y方向10inchです。

単位は kip, inch, sec. 

弾性係数は 1000 ksi, ポアソン比は 0.25, 質量密度は 6.75 kip/cu in.

 次のページ → 
OpenSees Basic Examples (F2::2D 梁への固体動力学問題)Mode、係数などの設定

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