FEM

FrontISTR【ヒートソースの導入】

FrontISTRのHeatにユーザー定義でヒートソースを導入しようとした取り組みです。なお、要素形状は361(六面体1次)要素限定です。 @analysis/heat/heat_mat_ass_bc_DFLUX ! if( .true. ) then allocate( Bbak(size(hecMAT%B)) ) vol =0.d0; Bbak=0.d0 do ic…

FrontISTR【伝熱解析での変数の追加】

力学解析(fstrSOLID)ではユーザーサブルーチンが使用でき、ユーザー定義の材料定数(matl)や内部変数(fstat)を使えますが、伝熱解析(fstrHEAT)には該当する変数がないので追加しました。 目標 パラメータを定義し、.cntファイルから読み込むこと。 要素の…

FrontISTR【Newton法の反復数】

FrontISTRで遊んでいたら、以下のコメントがでて停止しました。 ### Fail to Converge : at total_step=... Newton法の反復回数の上限(50回で設定)に達したようです。ソースコードを眺めていると当該箇所見つけました。 @/analysis/static/fstr_solve_NonL…

FrontISTR【umatの設定のメモ書き】

ユーザー定義材料物性をいろいろといじった時のメモです。基本的に、umat.f90を修正することになりますが、欲しいパラメータを共連れで引っ張るために追加でいくつか修正しています。 umat.f90(fistr1/src/lib/user) 一番いろいろと追加するところ。 matl【…

FrontISTR【VSCodeデバッガ】

FrontISTRのデバッグ環境構築を目指します。VSCode+WSL。FrontISTRのインストール環境はautofistrを使っています。 qiita.com まず、autofistrをデバッグモードでコンパイル。 Makefile.inを編集して、BUILD_TYPE = DEBUGにします。 続いて、lanch.jsonを編…

FrontISTR【AMPLITUDE】

経時変化する境界条件の設定方法について。 解析制御データ(.cnt)での設定 AMP = 流束履歴テーブル名 (!AMPLITUDE で指定) 具体的な記述は、各境界条件の設定方法に準拠。例えばFIXTEMPの場合 !FIXTEMP, AMP=FTEMP ALL, 1.0 単一領域メッシュデータ(.msh…

FrontISTR【makeで再コンパイル】

メモ書き程度に。 ソースコードを修正した時にmakeをする場所。 FrontISTR/build/fistr1 build中でコンパイルできるけど、他のプログラムもコンパイルされる。

FEniCS【インストール】

ネットサーフィンをしていたら見つけたので。 fenicsproject.org 偏微分方程式の問題をサクッととりあつかえるみたい。 NumFOCUSからも支援されているようです。 オープンソース支援団体NumFOCUSについて - Qiita 日本でも、ぼちぼち使用している人がいるみ…

熱伝導方程式と熱拡散方程式

熱伝導方程式は、熱収支に対して実験的事実(フーリエの法則:Fourier's law)を反映したもの。三次元の熱伝導方程式は ここで、熱拡散率(thermal diffusivity)をとして定義した場合に となる。この場合の”熱拡散方程式”と呼ぶことが多い(ようです)。 数…