09:49このチュートリアルでは、スクリプトで記述されたサンプルモデルを使って、そのスクリプトの各部分の意味について説明します。このチュートリアルの主な内容です。1.28.10解析の概要シングルポートを持つSAW(弾性表面波)フィルターの単一セルモデルを解析します。単一セルモデルで解析することで、デバイス性能を迅速に検討することができます。そのため、複雑な3次元形状での解析を行う事前検討として、非常に幅広く設計検討を行うことができます。単一セルモデルは、圧電基板、及び基板上一対のアルミニウム電極から構成されています。基板の材質はタンタル酸リチウム(LiTaO3)またはニオブ酸リチウム(LiNbO3)です。チュートリアルでは、Yカットをシミュレートするように設定されており、Yカットを目的の角度に回転できます。GHzでせん断水平(SH)モードを生成します。単一セルモデルは、3次元SAWフィルターのセクションになります。このモデルにより、SAWフィルターの重要なパラメータを検討することができます。解析のワークフローチュートリアルのワークフローになります。以下、スクリプトについて説明します。解析モデルのダウンロード解析モデルファイルをダウンロードします。解析モデルを説明する前に、Symbol言語の基本的な機能について説明します。Symbol言語とは、OnScale開発者によって開発された特殊なスクリプト言語です。PythonやMatlabスクリプトを使った経験があれば、理解しやすい言語となっております。シンボル言語では、変数はコマンドsymbによって定義されます。3800.変数名の前に「$」を追加してすることで、スクリプト内で使用できます。$freqint行頭の前に「c」を追加することで、行をコメントアウトします。*」を入れてください。velocityコメントアウト行、及びコメントは緑色で表示されます。コメントを入れることで、スクリプトの可読性が向上します。SymbolコマンドとOnScale関数の説明についてコマンドや関数の説明が必要な時は、マニュアルで確認することができます。マニュアルはスクリプト上から簡単に開くことができます。スクリプト内で意味を確認したいコマンド、関数をクリックします。Nameは、例えは#keycord)をクリックします。ヘルプが表示されます。コマンドの説明があります。コマンドの使用例を紹介しております。Analystモードのスクリプトは、常に次のコマンドで始まります。コマンドの詳細は、コメントとして記載しております。解析モデル内では、いくつかのキーとなる変数が定義されています。Desingerのみを使う場合は、スクリプト内でユーザ定義した変数をみることはできません、スクリプトを開いたときのみ確認することができます。(スクリプトは.flxinpファイルにて保存されています)解析モデルでユーザー定義されている変数です。'$(piezo_mat)struc'これらの変数は、モデル形状を定義しております。モデル形状以外にも、解析に必要な変数が定義されています。boundaries上記の例は、メッシュサイズを指定するために、周波数とメッシュ設定が使用されています。Meshingの記事をご参照下さい。X-Y-ZおよびI-J-K座標の仕組みOnScaleでは、2つの座標系を使用しています。グリッドの位置を指定する座標系X-Y-Z座標系の定義は次のようになります。zI-J-K座標系の定義は次のようになります。メッシュ数をコンソール出力するためのスクリプトを記載しております。次に紹介する2つのコマンドは必須です。$kndgrdGeomは、グリッドのノード座標を定義するために使用されます。Geometryの記事を参照してください。最後にメッシュの適切な領域にマテリアルを割り当ててジオメトリの設定が完了します。領域の割り当ては、Step5でキーポイントを作成することで簡単になります。*を使用すると、その方向の最初のキーポイントから最後のキーポイントまでマテリアルが割り当てられます。材料物性を割り当てられたので、境界条件を指定します。end境界条件はBOUNコマンドを使用して定義されます。このチュートリアルでは周期境界を使用しているため、BONDコマンドを使って、周期境界条件を設定します。周期境界は、領域の両端に対して指定し、お互いに平行である必要があります。負荷条件を設定する前に、入力波形が必要です。波形の定義は、funcコマンドで行います。OnScaleでは、広帯域性能と中心周波数の2.5倍を超える低いスペクトル漏れのため、リッカーウェーブレット(wvlt)時間関数の使用を推奨しています。圧電の負荷はPIEZコマンドを使って定義します。メッシュ領域を使って、圧電負荷の場所が指定されます。ここでも周期境界を定義する必要があります。end定義された2つの電極の位置を示します。計算結果出力の設定OnScaleの時間履歴データは、モデル内の特定のノード/メッシュについてのデータです。OnScaleは計算されたデータ配列のいずれかを一連のタイムヒストリーとして生成できます。idt1に接続された入力波形とその電極の電圧と電荷「vq」をvqiに変更して電流を出力することもできます。モード形状は、ハーモニックアナリシスにより算出します。指定された周波数でDFTを実行することにより挙動を抽出します。これは、変位のデータフィールドに対しても実行できます。Normalisationを参照してください。モデル実行と解析結果の出力モデルを実行する前に、PRCSコマンドを発行する必要があります。タイムステップと時間安定性係数の詳細については、リンクされた記事を参照してください。stepprcs解析を実行するために、時間刻み、解析の実時間、およびタイムステップの観点からのシミュレーション時間です。シミュレーション時間をすでに定義しており、prcsを呼び出すとタイムステップが計算されます。これを変数に格納し、それを使用してタイムステップ(nexec)の観点からシミュレーション時間を計算するだけです。loopループを実行する前に、プロットの設定をします。loopと似ています。この手順は、PROCコマンドを使用して何度も呼び出すことができるスクリプトの一部です。ここでは、nexec2を使用します。これは、単純なタイムステップでのシミュレーション時間を、表示するループの数で割ったものです。proc最後に、ファイル.flxdatoを出力さるための設定を行います。これは結果処理に必要なファイルです。詳細は以下のページをご参照下さい。Outputs設定は簡単です。endモデルで使用されているすべてのシンボル変数を出力することで、ユーザーは使用されている設定を理解したり、変数を結果処理用のスクリプト内で読み取ったりすることができます。ダウンロードしたファイル内では出力させていませんが、ユーザーは自由に追加することが可能です。クラウド上で解析実行モデルの設定が完了しましたので、クライド上で解析を実行します。Cloudをクリックします。Estimateをクリックして計算で消費するコア時間(概算)を算出します。ファイルをローカルマシンへダウンロードする必要があります。ダウンロードは結果処理を行うために必要です。シミュレーションが完了したら、クラウドストレージにアクセスして結果をダウンロードすると、結果を後処理する準備ができました。Storageをクリックします。Jobのプルダウンメニューからジョブ名を選択します。結果処理はPost-processorで行います。DesignerからPost-processorへGUIをスイッチアイコンをクリックして、Post-processorのGUIへスイッチします。Explorerからflxhstファイルとflxdatoファイルをダブルクリックします。flxhstは時間履歴データ、flxdatoファイルは結果の可視化で使用します。インピーダンス(グラフ)を作成します。作成方法については、以下のページをご参照下さい。作成方法はアドミタンスの場合とまったく同じです。Impedance同様に、Y方向変位のモード形状のコンター図、あるいはアニメーションを作成します。作成方法については、以下のページをご参照下さい。Shapesまとめこのチュートリアルでは、スクリプトで記述されたサンプルモデルを使って、そのスクリプトの各部分の意味について説明しました。チュートリアルの内容やモデルファイル等が必要でしたら弊社サポートまでお問合せ下さい。0人中0人がこの記事が役に立ったと言っています0件のコメントログインしてコメントを残してください。