OpenSees Blog 日本語 目次

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

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







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

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


2014年12月22日月曜日

OpenSees Developer : プログラムの基本的な流れ(メモ)







このTclModelBuilderでは、
OpenSees の node, element, fix 等のデータも読み込んでいます。

<Opensees コマンド>

node 1   0.0  0.0
node 2 144.0  0.0
node 3 168.0  0.0
node 4  72.0 96.0

<Opensees コマンド>
fix 1 1 1
fix 2 1 1
fix 3 1 1

<Opensees コマンド>
element Truss 1 1 4 10.0 1
element Truss 2 2 4  5.0 1
element Truss 3 3 4  5.0 1

これらOpenSeesコマンドは、すべてTcl_CreateCommand( )ファンクションを起動することによって、
その内容を読み込んでいます。
読み込む作業を行っているファンクションも、Tcl_CreateCommand( )に下記の様に書かれています。


 Tcl_CreateCommand
(interp, "<Openseesコマンド>", 
<OpenSeesコマンドを読み込むファンクション>,
 (ClientData)NULL, NULL);



たとえば
Tcl_CreateCommand(interp, "node", TclCommand_addNode,  (ClientData)NULL, NULL);


は、 OpenSeesコマンドのnodeを読み込みますが、
読み込むファンクションは、TclCommand_addNode( )です。

このTclCommand_addNode( )の中で、
Nodeクラスに OpenSeesコマンドのNodeのデータをセットします。

--------------

他のコマンドも同じようにして、データをセットしていきます。

セットしたデータをつかっての構造計算は、
<Opensees コマンド> analyze 1
で、行いますが、これは、


C:\OpenSees-work\OpenSees5621\OpenSees\SRC\tcl\commands.cpp
または
tclプロジェクトのcommands.cpp
の中の
int OpenSeesAppInit(Tcl_Interp *interp)

の中で定義されていた

Tcl_CreateCommand(interp, "analyze", &analyzeModel,
     (ClientData)NULL, (Tcl_CmdDeleteProc *)NULL);
における
&analyzeModel( )
で、計算が行われます。
(&がついているので、同じファイルの中に、ファンクションが定義されています)

----------------

そして

















0 件のコメント:

コメントを投稿