OpenSees Blog 日本語 目次

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

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







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

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


2016年11月30日水曜日

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

11) シュミレーション結果の画像表示


行うシュミレーションの結果をグラッフィック表示させます。

最初に、表示するWindowsについて設定します。
recorder display "[表示するWindowのタイトル]" [表示するWindowの左上の位置(x)]  [表示するWindowの左上の位置(y)] [表示するWindowの大きさ(幅)] [表示するWindowの大きさ(高さ)] -wipe 

ここでの「表示するWindowの左上」は、コンピュータ画面の左上からの位置になります。
また、単位はピクセル(画素数)です。

# -------------------------------------
# create display for transient analysis
#--------------------------------------
#                    $windowTitle       $xLoc $yLoc $xPixels $yPixels
recorder display "Simply Supported Beam" 10     10      800     200    -wipe

Projector reference point (prp) 投影基準点
View-up vector (vup)
View-plane normal (vpn)
View Reference Point (vrp)
は、コンピュータグラッフィックスについての用語で、下図の様な定義となります。
詳細については、Viewpoint Projections and Specifications に記載されています。


prp 20 5.0 1.0;
 # projection reference point (prp); defines the center of projection (viewer eye)

vup  0  1 0;                                    
  # view-up vector (vup)

vpn  0  0 1;                                    
  # view-plane normal (vpn)

グラッフィックとして表示する座標範囲は、viewWindowコマンドで指定します。

viewWindow [ViewPlain上でのu方向左端]  [ViewPlain上でのu方向右端]  [ViewPlain上でのv方向下端]   [ViewPlain上でのv方向上端] 

viewWindow -30 30 -10 10;                    
  # coordiantes of the window relative to prp

最後に表示させる為のdisplayコマンドを設定する。

display [表示の見せ方] [拡大係数] [変形形状の強さ]

2階建てフレームでの固有値解析 では、[表示の見せ方] は、マイナスの値をとり、絶対値の値がn次固有モードを表したが、今回は 10を設定しているので、固有モードではないので、注意してください。

display 10 0 5;                                
  # the 1st arg. is the tag for display mode
  # the 2nd arg. is magnification factor for nodes, 
 # the 3rd arg. is magnif. factor of deformed shape

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

# -------------------------------------
# create display for transient analysis
#--------------------------------------
#                    $windowTitle       $xLoc $yLoc $xPixels $yPixels
recorder display "Simply Supported Beam" 10     10      800     200    -wipe
prp 20 5.0 1.0;                                
  # projection reference point (prp); defines the center of projection (viewer eye)
vup  0  1 0;                                      
  # view-up vector (vup)
vpn  0  0 1;                                      
  # view-plane normal (vpn)  
viewWindow -30 30 -10 10;                      
  # coordiantes of the window relative to prp
display 10 0 5;                                  
  # the 1st arg. is the tag for display mode
  # the 2nd arg. is magnification factor for nodes, the 3rd arg. is magnif. factor of deformed shape



 次のページ → 
OpenSees Basic Examples (F7::2D 梁への固体動力学問題) レイリー減衰を追加しての解析設定

2016年11月15日火曜日

ありがとうございます

OpenSees ユーザーズガイド: インストールと初めての使い方(Kindle版)
を出してから半月ほどになりました。

ご購入していただいた方、こちらではお名前等なにもわからないのが残念ですが、大変ありがとうございます。



本日kindle shopを見てみましたら、インテリアデザインのカテゴリーで一位になっていました。おそらく瞬間的なのでしょうが、記念にとったスクリーンショットが、こちらです。

 

この本が、プログラムを使うにあたっての助けになれば幸いです。
よろしくお願い致します。

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 コマンド 日本語解説 : 目次