OpenSees Blog 日本語 目次

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

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







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

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


2015年8月26日水曜日

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




Reinforced Concrete Portal Gravity Analysis 参照



OpenSees Basic Examples (曲げモーメント-曲率計算) 例題 で、使用した鉄筋コンクリート
を使用して、実際に門型フレームで解析します。

まず、重力のみ、かけたものについての解析です。

element 1 と 2 に先ほどの鉄筋コンクリート部材が使用されています。
長さは、12feet (144inch) です。
桁の部分は、30feet (360inch)です。

Node 3  と 4 に 重力加速度による力として(180kip)  が掛っています。


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



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


2015年8月21日金曜日

OpenSees Basic Examples (B7: 曲げモーメント-曲率計算) 解析結果


曲げモーメント-曲率計算(ここ)で作成した、MomentCurvature.tclファイル内の OpenSeesコマンドを実行すると、以下の様な画面が表示されます。


また出力されるファイルは、以下の通りです。

曲率は、

上記の降伏曲率の値 (Ky) 

塑性率 μ 、 15
(曲率φ が 15倍になるまでを解析します) 
曲げモーメントと曲率を計算するために解析を行う回数、100
から

解析する時の曲率の増加量は、
(Ky * μ) / (解析回数)
= 0.0000190476

下記の出力ファイルは、0.0000190476づつ曲率が増えていったときの曲げモーメントの値を表しています。


<section1.out>

曲率 曲げモーメント
0.0000000000 0.00
0.0000190476 1245.30
0.0000380952 1809.51
0.0000571429 2250.69
0.0000761905 2658.24
0.0000952381 3052.58
0.0001142860 3441.32
0.0001333330 3820.88
0.0001523810 4058.79
0.0001714290 4136.33
0.0001904760 4212.59
0.0002095240 4287.53
0.0002285710 4361.08
0.0002476190 4433.19
0.0002666670 4503.62
0.0002857140 4566.44
0.0003047620 4628.14
0.0003238100 4688.68
0.0003428570 4746.96
0.0003619050 4771.71
0.0003809520 4783.53
0.0004000000 4792.99
0.0004190480 4802.29
0.0004380950 4811.43
0.0004571430 4819.23
0.0004761900 4826.00
0.0004952380 4832.76
0.0005142860 4839.50
0.0005333330 4840.28
0.0005523810 4839.74
0.0005714290 4839.11
0.0005904760 4838.41
0.0006095240 4837.61
0.0006285710 4836.72
0.0006476190 4835.73
0.0006666670 4834.65
0.0006857140 4833.47
0.0007047620 4832.18
0.0007238100 4830.78
0.0007428570 4829.27
0.0007619050 4827.64
0.0007809520 4825.89
0.0008000000 4824.01
0.0008190480 4822.00
0.0008380950 4819.85
0.0008571430 4817.55
0.0008761900 4815.10
0.0008952380 4812.49
0.0009142860 4809.72
0.0009333330 4806.76
0.0009523810 4803.62
0.0009714290 4800.28
0.0009904760 4796.73
0.0010095200 4792.89
0.0010285700 4788.64
0.0010476200 4784.08
0.0010666700 4779.16
0.0010857100 4773.84
0.0011047600 4768.07
0.0011238100 4761.77
0.0011428600 4754.87
0.0011619000 4746.10
0.0011809500 4735.07
0.0012000000 4728.23
0.0012190500 4725.51
0.0012381000 4722.32
0.0012571400 4718.57
0.0012761900 4714.15
0.0012952400 4708.89
0.0013142900 4702.55
0.0013333300 4693.79
0.0013523800 4692.23
0.0013714300 4694.87
0.0013904800 4697.92
0.0014095200 4700.96
0.0014285700 4704.00
0.0014476200 4707.04
0.0014666700 4710.08
0.0014857100 4713.11
0.0015047600 4716.15
0.0015238100 4719.18
0.0015428600 4722.21
0.0015619000 4725.24
0.0015809500 4728.26
0.0016000000 4731.29
0.0016190500 4734.31
0.0016381000 4737.33
0.0016571400 4740.34
0.0016761900 4743.36
0.0016952400 4746.37
0.0017142900 4749.38
0.0017333300 4752.39
0.0017523800 4755.40
0.0017714300 4758.40
0.0017904800 4761.40
0.0018095200 4764.40
0.0018285700 4767.39
0.0018476200 4770.38
0.0018666700 4773.37
0.0018857100 4776.36
0.0019047600 4779.34

このデータをグラフ化したものです。







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

2015年8月19日水曜日

OpenSees Basic Examples (B6: 曲げモーメント-曲率計算) コマンドのサマリ


Basic Examples (曲げモーメント-曲率計算)  解説
のコマンドのサマリは以下の通りです。

このコマンドを ファイル名 MomentCurvature.tcl として、テキストフォーマットで作成し、


OpenSeesの起動環境 で 起動しているOpenSees のコマンドラインに


OpenSees MomentCurvature.tcl  <Enter>

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


----- MomentCurvature.tcl 始まり ------

proc MomentCurvature {secTag axialLoad maxK {numIncr 100} } {
# Define two nodes at (0,0)
node 1 0.0 0.0
node 2 0.0 0.0

# Fix all degrees of freedom except axial and bending
fix 1 1 1 1
fix 2 0 1 0

# Define element
#                         tag ndI ndJ  secTag
element zeroLengthSection  1   1   2  $secTag

# Create recorder
recorder Node -file section$secTag.out -time -node 2 -dof 3 disp

# Define constant axial load
pattern Plain 1 "Constant" {
load 2 $axialLoad 0.0 0.0
}

# Define analysis parameters
integrator LoadControl 0.0
system SparseGeneral -piv; # Overkill, but may need the pivoting!
test NormUnbalance 1.0e-9 10
numberer Plain
constraints Plain
algorithm Newton
analysis Static

# Do one analysis for constant axial load
analyze 1

# Define reference moment
pattern Plain 2 "Linear" {
load 2 0.0 0.0 1.0
}

# Compute curvature increment
set dK [expr $maxK/$numIncr]

# Use displacement control at node 2 for section analysis
integrator DisplacementControl 2 3 $dK 1 $dK $dK

# Do the section analysis
analyze $numIncr
}


# Define model builder
# --------------------
model basic -ndm 2 -ndf 3

# 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]

}    

# Estimate yield curvature
# (Assuming no axial load and only top and bottom steel)
set d [expr $colDepth-$cover] ;# d -- from cover to rebar
set epsy [expr $fy/$E] ;# steel yield strain
set Ky [expr $epsy/(0.7*$d)]

# Print estimate to standard output
puts "Estimated yield curvature: $Ky"

# Set axial load 
set P -180

set mu 15; # Target ductility for analysis
set numIncr 100; # Number of analysis increments

# Call the section analysis procedure
MomentCurvature 1 $P [expr $Ky*$mu] $numIncr


----- MomentCurvature.tcl 終わり ------


次のページ →
OpenSees Basic Examples (曲げモーメント-曲率計算) 
解説(解析結果)



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

2015年8月9日日曜日

夏休みのお知らせ

OpenSeesファンの皆様

このブログを見ていただきましてありがとうございます。
8/10の週、お盆休みにさせていただきます。再開は8/19予定です。

2014年5月から始めましたこのブログ、ページも含めて現在公開している投稿は104ページになりました。

またView数は、気づいてみると1015/8/9現在 10177 (*)  になりました。
。。。10000ジャストのスクリーンショットを取れなかったのが残念です(^^;)

国別では以下の通りです。
日本 7571
アメリカ合衆国 674
ウクライナ 544
フランス 294
ロシア 208
インド 192

日本語で書いているにもかかわらず、海外からのViewもあるんですね。
皆様のヒントに、どのくらい役に立っているかわかりませんが、見ていただきまして
本当にありがとうございます。

さすがに投稿が100ページを超えると、全体の構成が分かりにくくなってきましてので
このブログをみるためのガイド
のページをつくりました。 ブログの全体構成が、こちらでわかるかと思います。

現在、
OpenSeesコマンド日本語解説
<<Moment Curvature Example >> 曲げモーメント-曲率 計算
に取り組んでいます。
次に
<<Reinforced Concrete Portal Gravity Analysis >> 鉄筋コンクリート門型フレーム重力の柱軸力のみを作用させた解析
までいきましたら、再び
<<Moment Curvature Example >> 曲げモーメント-曲率 計算
のtclコマンドを使用して
OpenSees のソースコード解析
に挑戦していきたいと考えております。

今後も週1回ペースでまったりと追記していきますので
よろしくお願いします。

Innovativeな建物がたくさんできますように!
2015/8/9 Satoko Toengawa

(*)Tonegawaが閲覧したビュー数、リダイレクトしたビュー数は除いた数字です

2015年8月4日火曜日

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



Basic Examples (鉄筋コンクリート門型フレーム :重力の柱軸力のみを作用させた解析)  解説
のコマンドのサマリは以下の通りです。

このコマンドを ファイル名 RCF-G.tcl として、テキストフォーマットで作成し、


OpenSeesの起動環境 で 起動しているOpenSees のコマンドラインに


OpenSees RCF-G.tcl  <Enter>

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


----- RCF-G.tcl 始まり ------


# Create ModelBuilder (with two-dimensions and 3 DOF/node)
model basic -ndm 2 -ndf 3

# Create nodes
# ------------

# Set parameters for overall model geometry
set width    360
set height   144

# 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

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

# 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]

}  


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

# Geometry of column elements
#                tag

geomTransf PDelta 1

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

# 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

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


# 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
}

# ------------------------------
# End of model generation
# ------------------------------



# ------------------------------
# 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
# ------------------------------


# ------------------------------
# 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




----- RCF-G.tcl 終わり ------


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


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