固体力学
大学院工学研究科機械工学専攻
固体力学(2単位)
005
可視化
構成
シミュレーション
計算機としてのPC
シミュレーションのための計算機環境
ハードウエア
ソフトウエア
シミュレーションのための計算法
有限要素法
メッシュ
連立一次方程式の解法
可視化
参考書
有限要素法概説
有限要素法
矢川元基・吉村忍著,培風館
Finite Element Implementation
菊地文雄著,サイエンス社
Y.K.Cheung, S.H.Lo, A.Y.T.Leung, Blackwell
Numerical Computation
C.W.Ueberhuber, Springer
可視化
可視化(Scientific Visualization)
有限要素解析結果の可視化
可視化のためのハードウエア
節点値と要素(積分点)値
CPU
GPU
可視化のためのソフトウエア
AVS
OpenGL
可視化のためのハードウエア
PC
CPU
Pentium4,Xeon
Athlon
GPU
高速な描画には特に重要
グラフィックバス・・・AGP,PCI-Express
ATI Radeon → FireGL
Nvidia Geforce → Quadro
可視化のためのソフトウエア
FEMソフトウエアの専用
プリポスト専用ソフトウエア
FEMAP,PATRAN
可視化ソフトウエア
MENTAT(MARC),TAURUS(DYNA3D)
AVS,MicroAVS
CGライブラリ
OpenGL,DirectX
可視化のためのソフトウエア
汎用FEMソフトウエアの解析結果可視化
専用ポスト
汎用ポスト
自作FEMコードの解析結果可視化
汎用ポスト → データフォーマットの変換
可視化ソフト → AVS UCDフォーマット
自作可視化ソフト
FEM解析のAVSによる可視化
AVS UCDファイルフォーマット
非構造格子データ(Unstructured Cell Data)
アスキー形式,バイナリ形式
拡張子 .inp
MicroAVSで使用可能
要素形状・・・4面体,6面体
要素次数・・・1次要素が基本
FEM解析のAVSによる可視化
AVS UCDファイルフォーマット
節点データ(節点座標)
要素データ(要素コネクティビティ)
節点における物理量(スカラー,ベクトル)
有限要素解析結果の可視化
応力可視化の問題点(1)
変位法に基づく応力解析では,各節点の変位が未知
数となり,連立一次方程式を解くことにより各節点の
変位が求められる
応力は要素内の積分点における値が算出される
有限要素解析結果の可視化
応力可視化の問題点(2)
変位: 節点値
応力: 積分点値
可視化ソフトウエアは節点値に対応するものが多い
応力の可視化(応力分布など)には
応力の節点値(節点における応力値)が必要
有限要素解析結果の可視化
節点応力(1)
応力節点値の算出法
1.最近接積分点値
2.要素内積分点値の平均値
3.形状関数による外挿
節点
積分点
4.形状関数による内挿
有限要素解析結果の可視化
節点応力(2)
応力節点値の算出法
3.形状関数による外挿
1.積分点を節点とする要素を想定
2.要素内の応力が形状関数に従うと想定
3.節点位置の局所座標を代入
P N j P , P G
4
i
節点(P1~P4)
積分点(G1~G4)
j 1
i
i
j
有限要素解析結果の可視化
節点応力(3)
応力節点値の算出法
4.形状関数による内挿
1.要素内の応力が形状関数に従うと想定
2.積分点応力の式を逆に解く
G1 N1 G1 N 4 G1 P1
N
G
N
G
4
4 P4
G4 1 4
節点(P1~P4)
積分点(G1~G4)
P1 N1 G1 N 4 G1
N
G
N
G
4
4
P4 1 4
1
G1
G4
有限要素解析結果の可視化
節点応力(4)
複数の要素に共有される節点の応力
変位は要素間境界で連続
応力は要素間境界で不連続
節点
積分点
複数の要素が共有する節点では
各要素で算出された節点応力を
平均化
グラフィックスライブラリ
OpenGL
Windows
Xwindow(Linux,FreeBSD)
3次元ComputerGraphics
グラフィックスアクセラレータによる高速化
市販ソフトウエアではできない表現も可能
グラフィックスライブラリ
#include <GL/glut.h>
static void displayCallback(void){
glClearColor(0.0,0.0,0.0,1.0);
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_TRIANGLES);
glVertex3f(-1.0,-1.0,0.0);
glVertex3f(1.0,0.0,0.0);
glVertex3f(0.0,1.0,0.0);
glEnd();
glutSwapBuffers();
}
int main(int argc,char *argv[]){
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);
glutCreateWindow();
glutDisplayFunc(displayCallback);
glutMainLoop();
}
等高線表示アルゴリズム
等高線
100
・要素(面素)毎に処理
・線形な分布を仮定し,辺上の点を求める
90
60
80
70
© Copyright 2025 Paperzz