OpenSees Blog 日本語 目次

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

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







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

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


2015年7月23日木曜日

OpenSees Basic Examples (B5: 曲げモーメント-曲率計算)  曲げモーメント-曲率の計算


ここまでで、
部材についての定義を終えたあと、この部材についての 曲げモーメント-曲率の計算を行います。

この計算は、他でも使用できるように、functionの形になっています。

function名と、その定義は、

MomentCurvature
{ (計算したいセクションのタグ番号),  (外力P),  (計算したい最大曲率)、(解析回数)}
です。

まず、このfunctionを呼ぶ側は、以下の通りです。

(部材の定義3)の後で、

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

とすることで、このfunctionを呼び出すことができます。

ここで、$でセットされているシンボルは、以下の通りです。

右側からの力Pは、-180
塑性率(mu) μ は、 15
曲率(Ky)φ が 15倍になるまでを解析します
曲げモーメントと曲率を計算するために解析を行う回数(numIncr) は、100

# Set axial load 
set P -180

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

次に、MomentCurvature( ) の中身について解説します。

最初にNodeを設定します。ここでは、非常に微細な部分に対して解析しますので
同じ座標点(原点)2つに対して、Node, Element を設定します。
ここでNode 1については、3つの自由度すべてに対して固定
Node2については、Y座標のみ固定
と、設定します。


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

# 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

ここで$secTag には 1 が入り、部材の定義2で、設定した
uniaxialMaterial Concrete01  1 
の部材として、取り扱われます。



この解析結果を記録するコマンドは、以下の通りです。


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


recorderコマンドについては、「OpenSeesコマンド集」を参照してください

次に、下記の外力P、モーメント M について設定し、解析をします。



最初にPの外力は、Node2に対して、X方向(の逆)に、180かかります。
$axialLoad に 180 の値が入っています。

patternコマンドについては、「OpenSeesコマンド集」を参照してください


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

この外力に対して、解析するためのパラメーターは、以下のとおりです。
パラメーター及びanalyzeコマンドについては、「OpenSeesコマンド集」を参照してください

# 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

1回 解析します

# Do one analysis for constant axial load
analyze 1

次に外力、モーメント M の設定は以下の通りです。
モーメントは、Node2のX軸座標からY軸座標方向に 1 をかけます

pattern , loadコマンドについては、「OpenSeesコマンド集」を参照してください

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

外力をかける大きさを、

降伏曲率の値 (Ky) 

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


$dKとして計算します。

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

パラメーターは
# Define analysis parameters
でセットされたものから引き継がれますが、<<工事中>>

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

解析する回数は、$numIncr 100 回です。

# Do the section analysis
analyze $numIncr


次のページ →
OpenSees Basic Examples (曲げモーメント-曲率計算) 
解説(コマンドのサマリ)


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

0 件のコメント:

コメントを投稿