サンプルマクロ

事例36: VBAマクロからPythonマクロを作成するコツ

学べるテクニック

FemtetにはVBAマクロを出力する機能がありますが、このマクロサンプルでは
VBAマクロをベースにPythonマクロを作成するコツを解説しています。
圧縮ファイルにはPythonマクロのサンプルが4種類同梱されていますので
コード記述を確認したり、動作確認することが可能です。

例題イメージ

事例35: ボディ毎のポテンシャルの積分値と平均値を取得

学べるテクニック

ボディ毎のポテンシャルの積分値と平均値を取得するマクロです。

全ボディ(単一モード指定)または全モード(単一ボディ指定)での結果取得に対応しています。
熱伝導解析の温度、電磁波解析の損失密度の2つのポテンシャルの積分値と平均値の取得に対応しています。
他のポテンシャルの積分値、平均値を取得する場合は標準モジュールのSetResultField関数、SetResultMode関数を編集することで機能変更追加が可能ですが、
要望をいただければ本サンプルマクロを更新します。

例題イメージ

事例34: MATLAB/Simulinkの1D熱モデル自動生成マクロ

学べるテクニック

Femtetの熱伝導解析では熱等価回路の情報を出力できますが、それをもとに手作業で1Dシミュレーションのモデルを作成するのは手間がかかります。

Femtetの熱伝導解析の結果をもとに、MATLAB/Simulinkの1D-熱モデルを自動生成するマクロをご紹介します。

例題イメージ

事例33: ボディ毎の最大値と最小値を取得

学べるテクニック

全ボディ(単一モード指定)または全モード(単一ボディ指定)での結果取得に対応しています。
熱伝導解析の温度、電場解析の電界ベクトルの大きさ、応力解析の最大主応力、圧電解析の最大主応力の4つの結果取得に対応しています。
他の節点結果の最大値、最小値を取得する場合は標準モジュールのSetResultField関数、SetResultMode関数、GetResult関数を編集することで機能変更追加が可能です。

応力や電界など要素境界で不連続となるフィールドの場合は描画設定の平均化オンオフによって最大値最小値が変化しますがその平均化オンオフの設定にも対応しています。

(2021/07/15)圧電解析の最大主応力にも対応しました。

例題イメージ

事例32: 指定トポロジ(辺、面)の最大値最小値を取得

学べるテクニック

あらかじめ指定したトポロジー(辺または面)における節点結果の最大値と最小値を取得するマクロです。

複数のトポロジー(単一モード指定)または全モード(単一トポロジー指定)での結果取得に対応しています。
熱伝導解析の温度、電場解析の電界ベクトルの大きさ、応力解析の最大主応力の3つの結果取得に対応しています。
他の節点結果の最大値、最小値を取得する場合は標準モジュールのSetResultField関数、SetResultMode関数、GetResultNode関数を編集することで機能変更追加が可能です。

例題イメージ

事例31: 指定面上の節点結果を取得する

学べるテクニック

電場解析の結果ファイルを開いて、指定した面上の節点の電界ベクトルを取得するマクロです。
各節点の電界ベクトルを取得する前に節点が面上に存在するかどうかの判定を行っています。
※本マクロを使用するモデルにおいてあらかじめ着目する断面でボディ切断しておくことを推奨します。

例題イメージ

事例30: 指定した温度範囲の面積や体積を算出

学べるテクニック

熱伝導解析の結果ファイルを開いて、指定した温度範囲の面積や体積を計算するマクロです。
面積計算の場合は境界条件、体積計算の場合はボディ属性を指定します。
被積分関数の中で積分点における温度を確認する条件分岐処理を行っています。
(2021/07/15)FaceIDおよびBodyIDを指定して計算する機能を追加しました。

例題イメージ

事例29: 結果図を自動ファイル保存(熱伝導解析)

学べるテクニック

指定した結果ファイルの温度分布図を自動的にファイル保存します。
過渡解析のような複数のモードがある場合にもすべて自動保存します。
視点ベクトル、画像サイズ、温度カラーバーの最小値と最大値の設定が可能です。

例題イメージ

事例28: ボディ属性名自動付与(Pythonマクロ)

学べるテクニック

事例4:ボディ属性名自動付与
のpythonマクロ版です。

・指定したプロジェクトファイルに保存されているボディに、指定したボディ属性を自動付与するマクロです。
・複数のボディに決まった処理を一括でおこなうテクニックを学べます。

例題イメージ

事例27: 解析条件比較マクロ

学べるテクニック

2つのプロジェクトファイルを指定して解析条件の差分を確認するマクロです。2つのプロジェクトで共通するボディ属性、材料定数の差分を確認することも可能です。

例題イメージ

事例26: 指定範囲の最大主応力とミーゼス相当応力抽出マクロ

学べるテクニック

・指定した計算結果ファイルから、指定した3次元格子状に最大主応力とミーゼス相当応力を抽出するマクロです。
・計算結果から所望の結果を自動抽出するテクニックを学べます。

例題イメージ

事例25: アクセスログ集計マクロ

学べるテクニック

・Femtetを利用したユーザー、ログイン時間などを集計するマクロです。

例題イメージ

事例24: 変形形状を考慮したNastranファイルをSTLフォーマットに変換するマクロ

学べるテクニック

・変位を含む解析結果のメッシュデータを出力したNastranファイルをSTLフォーマットに変換するマクロです。
・Femtetで得られた解析結果の形状をNastranファイルに出力し、このマクロを使用してSTLフォーマットに変換して他のCADソフトにインポートすることが可能です。
・変換処理の進捗が分かるように改良しました。(2020/12/25)

例題イメージ

事例23: 自由曲線を生成するマクロ

学べるテクニック

・入力された複数の座標値のデータを読み込み、すべての座標を繋げた自由曲線を作成するマクロです。
・放物線の式から求めた座標値を入力し放物線ボディを作成するといった事が可能です。

例題イメージ

事例22: Femtetマクロを活用したDELPHIモデル(1次元熱解析モデル)の導出

学べるテクニック

マクロを活用することにより、FemtetのモデルからDELPHIモデル(1次元熱解析モデル)を導出する手順を自動化したマクロです。
詳しくは解析事例のページをご覧ください。

例題イメージ

事例21: 被積分関数を使用して指定面の磁束密度を積分

学べるテクニック

・複数の解析結果で指定した面の磁束密度を積分するマクロです。
・被積分関数を使用して任意の面の積分結果を取得する方法を学べます。

例題イメージ

事例20: 音波の減衰の計算(音波解析)

学べるテクニック

・音波解析で呼吸球が損失のある媒質を伝搬するときの減衰を計算するマクロです。
・複素音速を設定する方法、音圧の結果を取得する方法などが学べます。

例題イメージ

事例19: Excelのゴールシークを使った最適化

学べるテクニック

・Excelのゴールシークを使用して、マイクロストリップラインの特性インピーダンスが50Ωになる電極幅を計算するマクロです。
・Excelのゴールシークを使用した最適化計算の方法、特性インピーダンスの結果を取得する方法などが学べます。

例題イメージ

事例18: 自由落下する磁性体の軌道計算(磁場解析)

学べるテクニック

・磁場解析で磁性体が自由落下中に磁石から受ける吸引力を計算し、磁性体の軌道計算を行うマクロです。
・計算結果から電磁力を取得する方法、得られた計算結果からグラフを作成する方法などが学べます。

例題イメージ

事例17: 2ポート間のインピーダンスを計算(電磁波解析)

学べるテクニック

・Hertz(電磁波解析)の結果を使い、2ポート間のインピーダンスを計算するマクロです。
・SパラからZパラへの変換手法について学ぶことができます。

例題イメージ

事例16: 解析結果をフィードバックして再計算(応力解析)

学べるテクニック

・解析結果の内容に応じてモデルを変更して再計算するマクロです。
・解析結果からモデル、条件へのフィードバック方法を学べます。

例題イメージ

事例15: 解析結果をフィードバックして再計算(熱伝導解析)

学べるテクニック

・解析結果の内容に応じて条件を変更して再計算するマクロです。
・解析結果からモデル、条件へのフィードバック方法を学べます。

例題イメージ

事例14: モデル全体の重心を計算

学べるテクニック

・ボディの重心と体積、密度を取り出し、モデル全体の重心を計算するマクロです。
・ボディのプロパティ(重心、体積)を取り出す手法を学ぶことができます。

例題イメージ

事例13: 計算結果ファイルを指定して結果画面を保存(圧電解析)

学べるテクニック

・計算結果ファイルを指定し、全モードの計算結果画面を画像として取り出すマクロです。
・結合係数を指定して不要なモードを取りださないようにフィルターをかけることができます。

例題イメージ

事例12: 計算結果ファイルを指定して結果画面を保存(応力解析)

学べるテクニック

・計算結果ファイルを指定し、全モードの計算結果画面を画像として取り出すマクロです。

例題イメージ

事例11: VBでのマクロ実行

学べるテクニック

・VBで記述されたマクロで、指定したパスに電場解析プロジェクトを作成して、特定の面の電界の積分値を自動で求めます。
・VBでのマクロコードの記述方法、積分の実行方法を学べます。

例題イメージ

事例10: 初期応力を考慮した共振解析

学べるテクニック

・指定したcadデータをインポートし静解析を行い、得られた結果を初期応力として共振解析を自動実行するマクロです。
・cadデータのインポート、プロジェクトの複製、解析結果の抽出を自動でおこなうテクニックを学べます。

例題イメージ

事例9: 3次元格子状に磁束密度の結果を出力

学べるテクニック

・指定した計算結果ファイルから、指定した3次元格子状に磁束密度の計算結果を抽出するマクロです。
・計算結果から所望の結果を自動抽出するテクニックを学べます。
・磁束密度以外の計算結果を取り出したい場合は、サンプルマクロ内のモード、フィールドの設定を変更してください。

例題イメージ

事例8: 既存メッシュを参照して解析実行

学べるテクニック

・既存メッシュでの解析実行を自動でおこなうマクロです。
・複数のファイルに対する操作、特定の処理を実行するテクニックを学べます。

例題イメージ

事例7: 複数のプロジェクトのメッシュ生成のみ実行

学べるテクニック

・指定したプロジェクトのメッシュ生成のみをまとめて実行するマクロです。
・複数のファイルに対する操作、特定の処理を実行するテクニックを学べます。

例題イメージ

事例6: 指定時刻に解析を実行

学べるテクニック

・指定した時刻に指定したプロジェクトの解析を実行させるマクロです。
・ExcelVBAのOnTimeメソッドを使用して処理を制御するテクニックが学べます。

例題イメージ

事例5: 材料定数名リストアップ

学べるテクニック

・指定したプロジェクトファイル内に定義されている材料定数名をリストアップするマクロです。
・所望の情報を自動で抽出するテクニックを学べます。

例題イメージ

事例4: ボディ属性名自動付与

学べるテクニック

・指定したプロジェクトファイルに保存されているボディに、指定したボディ属性を自動付与するマクロです。
・複数のボディに決まった処理を一括でおこなうテクニックを学べます。

例題イメージ

事例3: トロイダルコイル作成マクロ

学べるテクニック

・巻き終わりの位置指定、コイルの多角柱化が可能です。
・手動では作成が困難な形状を自動作成するテクニックを学べます。

例題イメージ

事例2: 全モードの計算結果画面保存

学べるテクニック

・モデル作成⇒各条件設定⇒解析実行を行い、全モードの計算結果画面をファイル保存するマクロです。
・モデル作成、条件設定、解析実行、結果の抽出処理をマクロでおこなう方法を学べます。

例題イメージ

事例1: DXFファイルインポート

学べるテクニック

・指定したDXFファイルをインポートしたプロジェクトファイルを自動生成するマクロです。
・複数のDXFファイルを指定した場合、各DXFファイルをインポートしたプロジェクトを複数自動生成します。
・マクロによるファイル操作が学べます。

例題イメージ

サポート一覧にもどる

まずはFemtetを試してみたい

試用版・無償版はこちら

もっとFemtetについて詳しく知りたい

イベント・セミナー情報はこちら