LuaCOMによるMicrosoft WordおよびMicrosoft Excelの制御
Luaスクリプトを使用して、Microsoft WordもMicrosoft Excelも開くことなく、指定した内容でそれらの文書を生成します。
最新のリリースで新規に追加された機能の紹介です。
Feko Getting Started Guideでは、Fekoをはじめて使用する場合に必要となる部分を手順を追って紹介します。
Feko Example Guideでは、Fekoのコンセプトと基本を学ぶための例題集を掲載しています。
Fekoは、任意形状の3Dオブジェクトを含む電磁界解析に使用される複数の解法を備えた包括的な電磁気ソルバーです。
CADFEKOを使用して、グラフィカル環境で形状またはモデルのメッシュを作成およびメッシングし、解析設定と計算要求を指定します。
POSTFEKOはFekoのポストプロセッサであり、モデル(設定とメッシュ)、グラフ上の結果、3Dビューの表示に使用します。
POSTFEKOを使用して、メッシュした形状を検証し、結果を解析して後処理します。
ここでは、POSTFEKOグラフィカルユーザーインターフェース(GUI)内の主な要素と用語を示します。
POSTFEKOには、好みに合わせてカスタマイズできるさまざまなデフォルト設定が用意されています。
大量のサンプル点を持つ3Dモデルとグラフを効率的にレンダリングできるように、多数のレンダリングオプションが用意されています。
モデルを追加したり、既存のプロジェクトを開いたり、プロジェクトを保存したりできます。
テキストファイル、ネイティブデータファイル、およびTouchstone形式ファイルをインポートします。
POSTFEKO では、ネイティブファイル形式によるエクスポートをサポートしています。他のセッションで使用する場合や、詳しい後処理が必要な場合に、これらのファイルをエクスポートできます。
本書では、データセット、スライス、トレース、および3D結果の各用語を広く使用しています。ここでは、これらの定義を確認して、その概念を十分に理解します。
結果のデータをグラフ上で表示することで、人間が読める形式でデータを視覚的に解釈し、レポートやプレゼンテーションで結果を伝達できるようになります。
Cartesian surface graphは、2本の独立軸を変数として結果をプロットした平面カラープロットです。
シミュレーションデータを3D ビューで表示することで、人間が読める形式でデータを視覚的に解釈し、レポートやプレゼンテーションで結果を伝達できるようになります。3D ビューを使用して、CADFEKOまたはEDITFEKOモデルが正しいかどうか確認することもできます。
ソルバーにはいくつかの周波数領域の解法と、時間領域の解法が1つ含まれています。POSTFEKOで時間解析ツールを明示的に使用して結果を時間領域に変換しない限り、デフォルトでは、すべてのシミュレーション結果が周波数領域で取得されます。
POSTFEKOの時間解析ツールを使用して、電磁散乱の問題を時間領域で解析できます。周波数領域でのシミュレーション結果に逆高速フーリエ変換(IFFT)を適用することによって、時間領域結果が得られます。
アニメーションを使用して、容易に結果を把握できるようにする効果や、プレゼンテーションやレポートで使用するアニメーションのエクスポートを実現します。
POSTFEKOは、解析を支援し、有効な形式でデータを提示するために役立つツールです。これは、多くの場合、処理済みの結果をレポートやプレゼンテーションで使用するのに必要となります。こうしたレポートを簡単に生成できるように、POSTFEKOにはいくつかのツールが用意されています。
アクティブなビューのイメージをファイルにエクスポートします。
事前定義のレポートテンプレートを使用し、POSTFEKOセッションで選択した画像とヘッダーを使用して最小限の作業でレポートを生成します。
POSTFEKOレポートテンプレートを作成するときに使用するテーマ、企業ロゴ、およびブランドを定義するためのMicrosoftテンプレートを決定します。
一貫性のあるレポートを作成する必要がある場合は、POSTFEKOレポートテンプレートを作成します。Microsoft PowerPointテンプレートまたはMicrosoft Wordテンプレートのスタイル設定を使用して、事前設定済みのPOSTFEKOレポートテンプレートを基にレポートを生成します。
レポートテンプレートを定義し、それを使用してレポートを作成します。
レポートテンプレートをXML形式でエクスポートして、他のPOSTFEKOセッションで再利用できます。
XMLファイル形式のレポートテンプレートをインポートして、現在のPOSTFEKOセッションで再利用できます。
Luaスクリプトを使用して、Microsoft WordもMicrosoft Excelも開くことなく、指定した内容でそれらの文書を生成します。
Fekoに用意されている強力なスクリプト言語を使用して、CADFEKOとPOSTFEKOを制御するスクリプトを作成できます。
POSTFEKOには、距離の測定、角度の測定、特定のメッシュ要素の検索など、モデルをすばやく検証するためのツールが揃っています。
ここでは、POSTFEKOによって関連付けられ、生成されるファイルを示します。
POSTFEKOの操作を迅速で容易なものにするためにPOSTFEKOに用意されているショートカットキーを表示します。
EDITFEKOは、ループや条件文を含む高水準のスクリプト言語を使用して(形状要件と解析要件の両面で)高度なモデルを構築するために使用されます。
Fekoの主な特長として、独自の解析方法と復号化した解析方法が幅広く用意されていることが挙げられます。Fekoの機能を効果的に使用するには、使用可能な手法を理解する必要があります。
Fekoは、遺伝的アルゴリズム(GA)などの手法に基づく最先端の最適化エンジンを提供します。これを使用することにより、設計を自動的に最適化し、最適解を決定することができます。
Fekoのユーティリティは、PREFEKO、OPTFEKO、ADAPTFEKO、Launcher ユーティリティ、アップデーター、およびクラッシュレポーターで構成されています。
Fekoでは、すべての結果が、ASCII出力ファイル.outと、POSTFEKOで使用するバイナリ出力ファイル.bofに書き込まれます。解析に関する追加情報を入手するには.outファイルを使用します。
アプリケーションマクロは、CADFEKOとPOSTFEKOで利用可能です。
CADFEKOとPOSTFEKOでは、高機能、高速で軽量なスクリプト言語がアプリケーションに組み込まれています。この言語を使用すると、モデルの作成、シミュレーション結果やモデル設定情報の取得、データの操作、繰り返し処理の自動化などが実現します。
Reference information is provided in the appendix.
POSTFEKOはFekoのポストプロセッサであり、モデル(設定とメッシュ)、グラフ上の結果、3Dビューの表示に使用します。
POSTFEKOは、解析を支援し、有効な形式でデータを提示するために役立つツールです。これは、多くの場合、処理済みの結果をレポートやプレゼンテーションで使用するのに必要となります。こうしたレポートを簡単に生成できるように、POSTFEKOにはいくつかのツールが用意されています。
Luaスクリプトを使用して、Microsoft WordもMicrosoft Excelも開くことなく、指定した内容でそれらの文書を生成します。
Luaスクリプトを使用して、Microsoft WordもMicrosoft Excelも開くことなく、指定した内容でそれらの文書を生成します。
-- MS WORD require "luacom" -- Open Word local msword = luacom.CreateObject("Word.Application") assert(msword, "Could not open MS Word") -- Initialise the document msword.Visible = true doc = msword.Documents:Add() -- Add content insertionPoint = doc.ActiveWindow.Selection insertionPoint.Style = "Heading 1" insertionPoint:TypeText( "Feko Says..." ) insertionPoint:TypeParagraph() insertionPoint:TypeText( "Hello world!" )
-- MS EXCEL require "luacom" -- Open Excel local excel = luacom.CreateObject("Excel.Application") assert(excel, "Could not open MS Excel") -- Initialise the worksheet excel.Visible = true workbook = excel.Workbooks:Add() worksheet = workbook.Worksheets:Add() -- Populate the data and display the contents of cell A3 worksheet.Range( "A1", "A1" ).Value2 = [[hello]] worksheet.Range( "A2", "A2" ).Value2 = [[world]] worksheet.Range( "A3", "A3" ).Value2 = [[=CONCAT(A1," ",A2,"!!")]] feko.Form.Info( "Excel says...", worksheet.Range( "A3", "A3" ).Value2 ) -- Change an input value and display A3 once again worksheet.Range( "A2", "A2" ).Value2 = [[everybody]] feko.Form.Info( "Excel says...", worksheet.Range( "A3", "A3" ).Value2 )
(c) 2021. Altair Engineering Inc. All Rights Reserved.