OpenSees Blog 日本語 目次

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

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







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

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


2015年9月30日水曜日

OpenSees Basic Examples (G5:鉄筋コンクリート門型フレーム :重力の柱軸力のみを作用させた解析) 解析結果


鉄筋コンクリート門型フレーム 重力の柱軸力のみを作用させた解析(ここ)で作成した、RCF-G.tclファイル内の OpenSeesコマンドを実行すると、以下の様な画面が表示されます。




上図は、下記のコマンドで表示されているものです

# ------------------------------
# Finally perform the analysis
# ------------------------------

# perform the gravity load analysis, requires 10 steps to reach the load level
analyze 10

# Print out the state of nodes 3 and 4
print node 3 4

# Print out the state of element 1
print ele 1 



表示されるのは、この解析を10ステップ行った後の
Node 3 4 の 自由度3つ(x, y, θ)の値 を全体座標系で、
および
Element 1 (Node 1と3) の、 両端の 軸力、せん断力、モーメントの値を部材座標系で表示しています。






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

2015年9月24日木曜日

OpenSeesで紹介されているサンプルで使用するtclスクリプトやデータの取得方法


OpenSeesで紹介されているサンプルで使用するtclスクリプトやデータの取得方法の説明です。


    Examples 参照


には、OpenSeesを使用するための、OpenSeesコマンドを使ったスクリプトの説明がありますが、
ここで使用している

  • tcl スクリプトファイル
  • OpenSeesを起動する時に使用する地震データ

は、バークレー校のサーバーからSVN(SubVersion)を使用して、ダウンロードできます。

ダウンロードの方法は、以下の通りです。


1) SubVersionをインストールしてください。
2) OpenSeesのソースコードをSubVersionを使ってダウンロードします。
ソースコードのダウンロートの仕方は、ここを見てください。


または
http://opensees.berkeley.edu/WebSVN/

で、SVNに登録しているファイルを参照することができます。
スクリプトファイル、example で使用している地震データなどは

(root)/trunk/EXAMPLES/ExampleScripts/
(root)/trunk/EXAMPLES/ExamplesForTesting/

に保管されています。

2015年9月16日水曜日

OpenSees Basic Examples (L3:鉄筋コンクリート門型フレーム: 横荷重解析) コマンドのサマリ


Basic Examples (鉄筋コンクリート門型フレーム: 横荷重解析)   解説
のコマンドのサマリは以下の通りです。

このコマンドを ファイル名 RCF-GP.tcl として、テキストフォーマットで作成し、
OpenSeesの起動環境 で 起動しているOpenSees のコマンドラインに

OpenSees RCF-GP.tcl  <Enter>

と打ち込んで、実行します。

この時、このtcl スクリプトは、
Basic Examples (鉄筋コンクリート門型フレーム:重力の柱軸力のみを作用させた解析)  で作成した
RCF-G.tcl
も使用しますので、同じディレクトリに、RCF-G.tcl ファイルもおいておきます。

----- RCF-GP.tcl 始まり ------


# Units: kips, in, sec
#
# Written: GLF/MHS/fmk
# Date: January 2001


# ----------------------------------------------------
# Start of Model Generation & Initial Gravity Analysis
# ----------------------------------------------------

# Do operations of Example3.1 by sourcing in the tcl file
source RCF-G.tcl
puts "Gravity Analysis Completed"

# Set the gravity loads to be constant & reset the time in the domain
loadConst -time 0.0

# ----------------------------------------------------
# End of Model Generation & Initial Gravity Analysis
# ----------------------------------------------------


# ----------------------------------------------------
# Start of additional modelling for lateral loads
# ----------------------------------------------------

# Define lateral loads
# --------------------

# Set some parameters
set H 10.0; # Reference lateral load

# Set lateral load pattern with a Linear TimeSeries
pattern Plain 2 "Linear" {

     # Create nodal loads at nodes 3 & 4
     #    nd    FX  FY  MZ
     load 3 $H 0.0 0.0
     load 4 $H 0.0 0.0
}

# ----------------------------------------------------
# End of additional modelling for lateral loads
# ----------------------------------------------------



# ----------------------------------------------------
# Start of modifications to analysis for push over
# ----------------------------------------------------

# Set some parameters
set dU 0.1;        # Displacement increment

# Change the integration scheme to be displacement control
#                             node dof init Jd min max
integrator DisplacementControl  3   1   $dU  1 $dU $dU

# ----------------------------------------------------
# End of modifications to analysis for push over
# ----------------------------------------------------


# ------------------------------
# Start of recorder generation
# ------------------------------

# Stop the old recorders by destroying them
# remove recorders

# Create a recorder to monitor nodal displacements
recorder Node -file node32.txt -time -node 3 4 -dof 1 2 3 disp

# Create a recorder to monitor element forces in columns
recorder EnvelopeElement -file ele32.txt -time -ele 1 2 forces

# --------------------------------
# End of recorder generation
# ---------------------------------


# ------------------------------
# Finally perform the analysis
# ------------------------------

# Set some parameters
set maxU 15.0;        # Max displacement
set currentDisp 0.0;
set ok 0

while {$ok == 0 && $currentDisp < $maxU} {

set ok [analyze 1]

# if the analysis fails try initial tangent iteration
if {$ok != 0} {
   puts "regular newton failed .. lets try an initail stiffness for this step"
   test NormDispIncr 1.0e-12  1000
   algorithm ModifiedNewton -initial
   set ok [analyze 1]
   if {$ok == 0} {puts "that worked .. back to regular newton"}
   test NormDispIncr 1.0e-12  10
   algorithm Newton
}

set currentDisp [nodeDisp 3 1]
}


if {$ok == 0} {
  puts "Pushover analysis completed SUCCESSFULLY";
} else {
  puts "Pushover analysis FAILED";  
}



----- RCF-GP.tcl 終わり ------

 次のページ →
OpenSees Basic Examples (鉄筋コンクリート門型フレーム 横荷重解析)解析結果


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

2015年9月9日水曜日

OpenSees Basic Examples (G3:鉄筋コンクリート門型フレーム 重力の柱軸力のみを作用させた解析) 解説(外力、解析の設定)



4)外力の設定
Node 3,4 に垂直方向にかかる力は、
OpenSees Basic Examples (曲げモーメント-曲率計算) 部材の定義3
において、
# Set axial load 
set P -180
と、定義しました、180です。これは、

「10% of axial capacity of columns」ということで、重力加速度による力として全体の 10%の力として180という値がセットされています。

Opensees のコマンドは、以下の通りです。

各コマンドの説明は、「OpenSeesコマンド集」を参照してください

# --------------------
# Define gravity loads

# --------------------

# Set a parameter for the axial load
set P 180.0;                # 10% of axial capacity of columns

# Create a Plain load pattern with a Linear TimeSeries
pattern Plain 1 "Linear" {

        # Create nodal loads at nodes 3 & 4
#    nd    FX          FY  MZ 
load  3   0.0  [expr -$P] 0.0
load  4   0.0  [expr -$P] 0.0
}


5)解析の設定


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




# ------------------------------
# Start of analysis generation
# ------------------------------

# Create the system of equation, a sparse solver with partial pivoting
system BandGeneral

# Create the constraint handler, the transformation method
constraints Transformation

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

# Create the convergence test, the norm of the residual with a tolerance of 
# 1e-12 and a max number of iterations of 10
test NormDispIncr 1.0e-12  10 3

# Create the solution algorithm, a Newton-Raphson algorithm
algorithm Newton

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

# Create the analysis object
analysis Static

# ------------------------------
# End of analysis generation
# ------------------------------

10回分解析し、10回後のNode3 4 および 要素 1 の結果を表示します。

# ------------------------------
# Finally perform the analysis
# ------------------------------

# perform the gravity load analysis, requires 10 steps to reach the load level
analyze 10

# Print out the state of nodes 3 and 4
print node 3 4

# Print out the state of element 1
print ele 1 

 次のページ →
OpenSees Basic Examples (鉄筋コンクリート門型フレームの柱軸力のみを作用させた解析) コマンドのサマリ



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

2015年9月2日水曜日

OpenSees Basic Examples (G2:鉄筋コンクリート門型フレーム 重力の柱軸力のみを作用させた解析) 解説(節点、要素、部材の定義)



1)Model, Node(節点)の設定
解析する時の、次元、節点(Node)の
Opensees のコマンドは、以下の通りです。

各コマンドの説明は、「OpenSeesコマンド集」を参照してください

1.1) 2次元、自由度2 で、解析するよう設定します
model BasicBuilder [次元数] [自由度数] 

model basic -ndm 2 -ndf 3


1.2) パラメーターをセットします。
# Set parameters for overall model geometry

set width    360 #  30feetをinchに換算した値
set height   144 #  12feetをinchに換算した値



1.3) Node(節点) の 座標を設定します
Node [ nodeの番号 ] [ x座標] [y座標]

# Create nodes
#    tag        X       Y 
node  1       0.0     0.0 
node  2    $width     0.0 
node  3       0.0 $height
node  4    $width $height


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

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


# Fix supports at base of columns
#    tag   DX   DY   RZ
fix   1     1    1    1
fix   2     1    1    1


2) 部材の定義


前回の
OpenSees Basic Examples (曲げモーメント-曲率計算) 
で、使用したものと同じコマンドで
鉄筋コンクリートを定義します。


# Define materials for nonlinear columns
# ------------------------------------------
# CONCRETE                  tag   f'c        ec0   f'cu        ecu
# Core concrete (confined)
uniaxialMaterial Concrete01  1  -6.0  -0.004   -5.0     -0.014

# Cover concrete (unconfined)
uniaxialMaterial Concrete01  2  -5.0   -0.002   0.0     -0.006

# STEEL
# Reinforcing steel 
set fy 60.0;      # Yield stress
set E 30000.0;    # Young's modulus
#                        tag  fy E0    b
uniaxialMaterial Steel01  3  $fy $E 0.01

# Define cross-section for nonlinear columns
# ------------------------------------------

# set some paramaters
set colWidth 15
set colDepth 24 

set cover  1.5
set As    0.60;     # area of no. 7 bars

# some variables derived from the parameters
set y1 [expr $colDepth/2.0]
set z1 [expr $colWidth/2.0]

section Fiber 1 {

    # Create the concrete core fibers
    patch rect 1 10 1 [expr $cover-$y1] [expr $cover-$z1] [expr $y1-$cover] [expr $z1-$cover]

    # Create the concrete cover fibers (top, bottom, left, right)
    patch rect 2 10 1  [expr -$y1] [expr $z1-$cover] $y1 $z1
    patch rect 2 10 1  [expr -$y1] [expr -$z1] $y1 [expr $cover-$z1]
    patch rect 2  2 1  [expr -$y1] [expr $cover-$z1] [expr $cover-$y1] [expr $z1-$cover]
    patch rect 2  2 1  [expr $y1-$cover] [expr $cover-$z1] $y1 [expr $z1-$cover]

    # Create the reinforcing fibers (left, middle, right)
    layer straight 3 3 $As [expr $y1-$cover] [expr $z1-$cover] [expr $y1-$cover] [expr $cover-$z1]
    layer straight 3 2 $As 0.0 [expr $z1-$cover] 0.0 [expr $cover-$z1]
    layer straight 3 3 $As [expr $cover-$y1] [expr $z1-$cover] [expr $cover-$y1] [expr $cover-$z1]

}  

3) Element(要素)の設定


解析する時の、要素(Element)の
Opensees のコマンドは、以下の通りです。

各コマンドの説明は、「OpenSeesコマンド集」を参照してください



# Define column elements
# ----------------------

# Geometry of column elements
#                tag 

geomTransf PDelta 1 



ガウスーロバート積分を使用しますが、その積分点は5つです

# Number of integration points along length of element
set np 5

柱には、forceBeamColumn を使用します。

# Create the coulumns using Beam-column elements
#               e            tag ndI ndJ nsecs secID transfTag
set eleType forceBeamColumn
element $eleType  1   1   3   $np    1       1 
element $eleType  2   2   4   $np    1       1 

# Define beam elment
# -----------------------------

# Geometry of column elements
#                tag 
geomTransf Linear 2  

桁には、elasticBeamColumnを使用します。
断面積は360、ヤング率は4030、モーメントは8640です。

# Create the beam element
#                          tag ndI ndJ     A       E    Iz   transfTag
element elasticBeamColumn   3   3   4    360    4030  8640    2


 次のページ → 

OpenSees Basic Examples (鉄筋コンクリート門型フレーム の柱軸力のみを作用させた解析)解説(外力、解析の設定)



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