OS-T:2095 矩形プレートの周波数応答解析

本チュートリアルでは、OptiStructを用いた周波数応答最適化について解説します。

開始する前に、このチュートリアルで使用するファイルを作業ディレクトリにコピーします。

まず最初に、既存の平板の有限要素(FE)モデルを読み込み、モーダル法による周波数応答解析によってピーク振幅を求めます。続いて、同じプレートに対し過渡応答最適化を実行して新規設計案を得ます。

新規設計案は、ピーク応答が最小化された最適材料配置になります。複素変位結果のアイソプロット、絶対値および位相を可視化するため、HyperViewでポスト処理ツール群を使用します。
1. プレートモデル

2095_plate_model
最適化問題の設定は次の通りです:
目標
体積の最小化
制約条件
Max FRF Disp.< 600 mm
設計変数
設計空間内の各要素の密度

HyperMeshの起動とOptiStructユーザープロファイルの設定

  1. HyperMeshを起動します。
    User Profilesダイアログが現れます。
  2. OptiStructを選択し、OKをクリックします。
    これで、ユーザープロファイルが読み込まれます。ユーザープロファイルには、適切なテンプレート、マクロメニュー、インポートリーダーが含まれており、OptiStructモデルの生成に関連したもののみにHyperMeshの機能を絞っています。

モデルの読み込み

  1. File > Import > Solver Deckをクリックします。
    Importタブがタブメニューに追加されます。
  2. File typeにOptiStructを選択します。
  3. Filesアイコンfiles_panelを選択します。
    Select OptiStruct Fileブラウザが開きます。
  4. 自身の作業ディレクトリに保存したfrf_response_input.femファイルを選択します。
  5. Openをクリックします。
  6. Import、続いてCloseをクリックし、Importタブを閉じます。

荷重と境界条件の適用

SPCと単位荷重コレクターの作成

モデルは1端で拘束されています。縦方向の単位荷重を、プレートの自由エッジのコーナーポイントに正のz-方向(上向き)に適用します。このステップでは、SPCとunit-loadの2つの荷重コレクターを作成します。
  1. SPC荷重コレクターを作成します。
    1. Model Browserで右クリックしcontext menuからCreate > Load Collectorを選択します。
      デフォルトの荷重コレクターがEntity Editorに表示されます。
    2. NemeにSPCと入力します。
    3. Colorをクリックし、カラーパレットから色を選択します。
    4. Card ImageをNoneに設定します。
    2.

    os_2095_01
  2. unit-load荷重コレクターを作成します。
    1. Model Browserで右クリックしcontext menuからCreate > Load Collectorを選択します。
      デフォルトの荷重コレクターがEntity Editorに表示されます。
    2. Nameにunit-loadと入力します。
    3. Colorをクリックし、カラーパレットから色を選択します。
    4. Card ImageをNoneに設定します。

拘束の作成

  1. Model BrowserのCollectorsフォルダーでSPCを右クリックし、context menuからMake Currentを選択します。
    3.

    2095_spcs
  2. Toolページからnumbersをクリックしてnumbersパネルを開きます。
  3. 拡張エンティティ選択メニューからnodes > by idを選択します。
  4. 次の数字を入力します:123、および4
  5. onをクリックします。
  6. returnをクリックします。
  7. Analysisページからパネルconstraintsをクリックします。
  8. パネル左側のラジオボタンを用いてcreateサブパネルが選択されていることを確認します。
  9. Nodesをクリックし、IDで節点1と2を選択します。
    1. 節点セレクターを使って、IDが12の節点を選択します。
    2. dof1 - dof6を選択します。
      チェックマークのついている自由度は拘束され、ついていないものはフリーとなります。Dofs 1、2および3は、x、y、z方向の並進自由度を表します。Dof 4、5、6 はそれぞれ全体座標系の x、y、z 軸周りの回転自由度です。
    3. createをクリックします。
  10. IDが4の節点に制約条件を付与します。
    1. 節点セレクターを使って、IDが4の節点を選択します。
    2. dof3を除いた全ての自由度からチェックマークを外します。
    3. createをクリックします。
  11. 平板の1点への単位荷重の生成
    1. Model BrowserのCollectorsフォルダーでunit-loadを右クリックし、context menuからMake Currentを選択します。
    2. Constraintsパネルで節点コレクターを使って、IDが3の節点を選択します。
    3. dof3を除いた全ての自由度からチェックマークを外します。
    4. dof3=欄に20と入力します。
    5. load types=をクリックしDAREAを選択します。
    6. createをクリックします。
  12. returnをクリックし、メインメニューに進みます。
4. 自由度のついたFEプレートモデル

2095_fe_plate

周波数範囲カーブの生成

  1. Model Browserで右クリックしてCreate > Curvesを選択します。
    Curve Editorが開きます。
  2. Curve editorウィンドウが表示されます。Newをクリックし、Name=にtabled1と入力してproceedをクリックします。
  3. 表に以下の値を入力してください:
    1. x(1)欄に0.0と入力します。
    2. y(1)欄に1.0と入力します。
    3. x(2)欄に1000.0と入力します。
    4. y(2)欄に1.0と入力します。
    5. 右上の X をクリックしてダイアログを終了します。
    5.


    これで、周波数域0.0から1000.0まで、この範囲での一定値荷重が設定されました。

  4. Colorをクリックし、カラーパレットから色を選択します。
  5. Card ImageをTABLED1に設定します。

周波数依存動的荷重の作成

  1. Model Browser内で右クリックし、Create > Load Step Inputsを選択します。
  2. Curve editorウィンドウが表示されます。Newをクリックし、Name=にrload2と入力してproceedをクリックします。
  3. Config typeにDynamic Load - Frequency dependentを選択します。
  4. Typeに、RLOAD2を選択します。
  5. EXCITEIDを定義します。
    1. <Unspecified> > Loadcolをクリックします。
    2. Select Loadcolダイアログでunit-loadを選択し、OKをクリックします。
  6. TBを定義します。
    1. Curvesをクリックします。
    2. Select Curvesダイアログで、tabled1を選択し、OKをクリックします。
  7. TYPEをLOADに設定します。
    これは、入力をフォースに定義します。

応答の解に用いる周波数セットの生成

  1. Model Browserで右クリックしcontext menuからCreate > Load Collectorを選択します。
    デフォルトの荷重コレクターがEntity Editorに表示されます。
  2. Curve editorウィンドウが表示されます。Newをクリックし、Name=にfreq5と入力してproceedをクリックします。
  3. Colorをクリックし、カラーパレットから色を選択します。
  4. Card ImageをFREQiに設定します。
  5. FREQ5を選択します。
  6. NUMBER_OF_FREQ5=欄に1と入力します。
  7. FREQ5_MAX_NUMBER_OF_FR=欄に3と入力します。
  8. Data: IDの横のicon_openをクリックします。
  9. NUMBER OF FREQ =ダイアログで、周波数の値を定義します。
    1. F1欄に1.0と入力します。
    2. F2欄に1000と入力します。
    3. FR(0)欄に1.0と入力します。
    4. FR(1)欄に0.8と入力します。
    5. FR(2)欄に0.2と入力します。
    6. ダイアログを閉じるには、Closeをクリックします。
    6.

    2095_num_of_freq_13
周波数範囲と固有周波数の範囲内での割合により、モーダル法による周波数応答解析を実施するための周波数のセットが定義されます。
7.

2095_eq

EIGRL荷重ステップ入力の作成

モーダル法として使用するEIGRL荷重ステップ入力を作成します。

  1. Model Browserで右クリックしてCreate > Load Step Inputsを選択します。
  2. Nameにeigrlと入力します。
  3. Config typeにReal Eigen Value Extraction を選択します。
  4. Typeに、EIGRLを選択します。
  5. NDに17と入力します。
    これで、Lanczos法を用いた最初の17の周波数の固有値抽出が指定されます。

荷重ステップの作成

荷重ステップはサブケースとも呼ばれます。
  1. Analysisページからloadstepsをクリックします。
  2. Curve editorウィンドウが表示されます。Newをクリックし、Name=にsubcase1と入力してproceedをクリックします。
  3. typeをクリックし、Freq. resp (modal)を選択します。
  4. SPCを定義します。
    1. SPCの前のボックスにチェックを入れます。
    2. 等号(=)をクリックして、荷重コレクターリストからspcを選択します。
  5. METHOD(STRUCT)を定義します。
    1. METHOD (STRUCT)の前のボックスにチェックを入れます。
    2. 等号(=)をクリックして、荷重ステップ入力リストからeigrlを選択します。
  6. DLOADを定義します。
    1. DLOADの前のボックスにチェックを入れます。
    2. 等号(=)をクリックして、荷重ステップ入力リストからrload2を選択します。
  7. FREQを定義します。
    1. FREQの前のボックスにチェックを入れます。
    2. 等号(=)をクリックして、荷重コレクターリストからfreq5を選択します。
  8. createをクリックします。
    8.


  9. editをクリックし、RESVECを定義します。
    1. RESVECを選択します。
    2. TYPEをAPPLOADに設定します。
    3. OPTIONをYESに設定します。

spc荷重コレクター内の拘束条件とrload2荷重ステップ入力内の単位荷重をfreq5荷重コレクターで定義された周波数セットおよびeigrl荷重ステップ入力で定義されたモーダル法と共に参照するOptiStructサブケースが作成されました。

FRFシミュレーションの前にモーダル解析を行うことが推奨されます。ここでは、Frequency Response Analysisのセットアップに焦点を当てるため、この手順は省略します。

出力結果のための節点セットの生成

  1. Model Browserで右クリックしcontext menuからCreate > Setを選択します。
    デフォルトのセットがEntity Editorに表示されます。
  2. NemeにSETAと入力します。
  3. Card ImageをSET_GRIDに設定します。
  4. Set Typeをnon-orderedにセットします。
  5. Entity IDsに、0 Nodes > Nodes.をクリックします。
  6. 節点セレクターを使って、IDが3の節点を選択します。
    これで、集中荷重がかかる節点が選択されます。
  7. パネル領域で、proceedをクリックします。
  8. returnをクリックし、ダイアログを抜けます。
FRFシミュレーションにおいては、生成されるデータの量によって大きな結果ファイルが得られる可能性があります。着目したい部分だけを指定できるセットについて作業することが推奨されます。これにより、CPU時間とデータの量が節減されます。

周波数応答解析用の出力と減衰のセットの作成

  1. Analysisページからパネルcontrol cardsをクリックします。
    Card Imageダイアログが開きます。
  2. GLOBAL_OUTPUT_REQUESTを定義します。
    1. GLOBAL_OUTPUT_REQUESTをクリックします。
    2. DISPLACEMENTSを選択します。
      新しいオプションのセットが作業領域のスクリーンに現われます。
    3. FORM(1)をクリックしPHASEを選択します。
    4. OPTION(1)をクリックしSIDを選択します。
      新しい欄SID(1)が現われます。
    5. SID(1)をダブルクリックし、SETAを選択します。
      値1がSID入力ボックスの下に現れます。これは、set 1内の節点に限った出力を設定しています。
      9.

      2095_displacement_13
    6. returnをクリックし、GLOBAL_OUTPUT_REQUESTから抜けます。
  3. FORMATを定義します。
    1. FORMATをクリックします。
    2. number_of_formats=欄に2と入力します。
    3. FORMAT_V1の下で、2回目のFORMATをクリックし、OPTIを選択します。
    4. returnをクリックします。
  4. PARAMを定義します。
    1. PARAMをクリックします。
    2. Gを選択します。
    3. G_V1をクリックし、0.05と入力します。
      これは、システムに臨界減衰比2.5%を割り当てるのと同じ意味になります。
    4. returnをクリックします。
  5. OUTPUTを定義します。
    1. OUTPUTをクリックします。
    2. KEYWORDをHGFREQに設定します。
    3. FREQをLASTに設定します。
    4. number_of_outputs=を1に設定します。
    5. returnをクリックします。
  6. returnをクリックし、メインメニューに戻ります。

データベースの保存

  1. menu barFile > Save As > Modelをクリックします。
  2. Save Asダイアログでファイル名欄にfrf_response_input.hmと入力し、自身の作業ディレクトリに保存します。

ジョブのサブミット

  1. AnalysisページからOptiStructパネルをクリックします。
    10. OptiStructパネルへのアクセス

    OS_1000_13_17
  2. save asをクリックします。
  3. Save Asダイアログで、OptiStructモデルファイルを書き出す場所を指定し、ファイル名としてfrf_response_analysisと入力します。
    OptiStruct入力ファイルには、拡張子 .femが推奨されます。
  4. Saveをクリックします。
    入力ファイル欄には、Save Asダイアログで指定されたファイル名と場所が表示されます。
  5. export optionsのトグルをallにセットします。
  6. run optionsのトグルをanalysisにセットします。
  7. memory optionsのトグルはmemory defaultにセットします。
  8. options欄を空にします。
  9. OptiStructをクリックし、OptiStructジョブを開始します。
ジョブが成功した場合、frf_response_analysis.femが書き出されたディレクトリに新しい結果ファイルがあるはずです。何らかのエラーがある場合、frf_response_analysis.outファイルはデバッグを手助けするエラーメッセージを探すのに良い場所です。

結果の表示

このステップでは変位結果(.mvw ファイル)をHyperGraphで確認し、この実行での変位出力(.dispファイル)についても確認します。結果ファイル(.h3d)には、節点セット出力で指定された3つの節点についての変位結果のみが含まれています。
  1. OptiStructパネル内でHyperViewをクリックし、解析からの結果を次のページに読み込みます。
  2. menu barFile > Open > Sessionをクリックします。
  3. Open Session Fileダイアログで、ジョブが実行されたディレクトリに進み、frf_response_analysis_freq.mvwファイルを開きます。
    1. オプション: OptiStructパネルから起動した場合、Yesをクリックして、現在のセッションを破棄します。
    2つのグラフが表示されます。グラフのタイトルは、Subcase 1(subcase1)-Displacements of grid 3です。上のグラフはPhase Angle verses Frequency(位相角vs周波数)、下のグラフは、変位振幅vs周波数を示しています。
    11.

    os_2095_graph
  4. CurvesツールバーでcurvesCreate-24をクリックし、Define Curvesパネルを開きます。
  5. X TransおよびY Transカーブを消去します。
    励振はZ方向にかかり、主効果はこの方向で検知されます。
  6. Resultsツールバーでpalette-24をクリックし、Curve Attributes パネルを開きます。
  7. ラインの属性を連続continuous_lineに変更します。
  8. Symbol Attributesタブで、正方形のシンボルを選択します。
    12.

    symbol_attributes
  9. AnnotationsツールバーでannotateAxes-24をクリックし、Axesパネルを開きます。
  10. AxisをVerticalに変更します。
    13.

    vertical_axis
  11. Scale and Tics (Magnitude)タブをクリックしてLogarithmicを選択します。
  12. Min欄に5と入力します。
  13. Max欄に200000と入力します。
  14. Scale and Tics (Phase)タブをクリックし、Tics per axisを7に変更します。
  15. AxisをHorizontalに設定します。
    14.

    horizontal_axis
  16. Min欄に5と入力します。
  17. Max欄に1000と入力します。
    15. 周波数応答関数 FRF (Node 3, Z-Displacement)

    2095_frf
  18. CurvesツールバーでcurvesInfo-24をクリックし、Coordinate Infoパネルを開きます。
  19. Find pointの下でMagnitudeを選択します。
    16.

    os_2095_mag
  20. maximumボタンをクリックし、表内でY-magnitudeの最大値が15055であることを確認します。ベースラインモデルのピーク変位。
    17.

    2095_maximum_button
  21. クライアントセレクターをに変更することで、HyperMeshに戻ります。

モデルのオープン

  1. File > Open > Modelをクリックします。
  2. 自身の作業ディレクトリに保存したfrf_response_input.hmファイルを選択します。
  3. Openをクリックします。
    frf_response_input.hmデータベースが現在のHyperMeshセッションに読み込まれます。

データベースの保存

  1. menu barFile > Save As > Modelをクリックします。
  2. Save Asダイアログでファイル名欄にfrf_response_optimization.hmと入力し、自身の作業ディレクトリに保存します。

最適化のセットアップ

Create Topology Design Variables

  1. From the Analysis page, click optimization.
  2. Click topology.
  3. Select the create subpanel.
  4. In the desvar= field, enter plate.
  5. Set type: to PSHELL.
  6. Using the props selector, select Design.
  7. For base thickness, enter 0.15.
  8. Click create.

    A topology design space definition, shield, has been created. All elements referring to the design property collector (elements organized into the "design" component collector) are now included in the topology design space. The thickness of these shells can vary between 0.15 (base thickness) and the maximum thickness defined by the T (thickness) field on the PSHELL card.

    The object of this exercise is to determine where to locate ribs in the designable region. Therefore, a non-zero base thickness is defined, which is the original thickness of the shells. The maximum thickness, which is defined by the T field on the PSHELL card, should be the allowable depth of the rib.

    Currently, the T field on the PSHELL card is still set to 0.15 (the original shell thickness). You will change this to a higher value to create a design space where the material can be removed.

  9. Update the design variable's parameters.
    1. Select the parameters subpanel.
    2. Toggle minmemb off to mindim=, then enter 2.0.
    3. Toggle maxmemb off to maxdim=, then enter 6.0.
    4. Click update.
  10. Click return.
  11. Edit the thickness of the design property.
    1. In the Model Browser, Properties folder, click design.
    2. In the Entity Editor, T field, enter 1.000.

Create Optimization Responses

  1. From the Analysis page, click optimization.
  2. Click Responses.
  3. Create the volume response, which defines the volume fraction of the design space.
    1. In the responses= field, enter volume.
    2. Below response type, select volume.
    3. Set regional selection to total and no regionid.
    4. Click create.
  4. Create the frequency response displacement (constraint), which defines the maximum magnitude on dof3.
    1. In the responses= field, enter frfdisp.
    2. Set the response type to frf displacement.
    3. Switch the component from real to magnitude.
    4. Set the function to all freq.
    5. Using the nodes selector, select the node with ID 3.
    6. Select dof3.
    7. Click create.
  5. Click return to go back to the Optimization panel.

Create Design Constraints

  1. Click the dconstraints panel.
  2. In the constraint= field, enter constr.
  3. Click response = and select frfdisp.
  4. Check the box next to upper bound, then enter 600.
  5. Using the loadsteps selector, select subcase1.
  6. Click create.
  7. Click return to go back to the Optimization panel.

Define the Objective Function

  1. Click the objective panel.
  2. Verify that min is selected.
  3. Click response= and select volume.
  4. Click create.
  5. Click return twice to exit the Optimization panel.

Run the Optimization

  1. From the Analysis page, click OptiStruct.
  2. Click save as.
  3. In the Save As dialog, specify location to write the OptiStruct model file and enter frf_response_optimization for filename.
    For OptiStruct input decks, .fem is the recommended extension.
  4. Click Save.
    The input file field displays the filename and location specified in the Save As dialog.
  5. Set the export options toggle to all.
  6. Set the run options toggle to optimization.
  7. Set the memory options toggle to memory default.
  8. Click OptiStruct to run the optimization.
    The following message appears in the window at the completion of the job:
    OPTIMIZATION HAS CONVERGED.
    FEASIBLE DESIGN (ALL CONSTRAINTS SATISFIED).
    OptiStruct also reports error messages if any exist. The file frf_response_optimization.out can be opened in a text editor to find details regarding any errors. This file is written to the same directory as the .fem file.
  9. Click Close.
The default files that get written to your run directory include:
frf_response_optimization.hgdata
HyperGraph file containing data for the objective function, percent constraint violations, and constraint for each iteration.
frf_response_optimization.HM.comp.tcl
HyperMesh command file used to organize elements into components based on their density result values. This file is only used with OptiStruct topology optimization runs.
frf_response_optimization.HM.ent.tcl
HyperMesh command file used to organize elements into entity sets based on their density result values. This file is only used with OptiStruct topology optimization runs.
frf_response_optimization.html
HTML report of the optimization, giving a summary of the problem formulation and the results from the final iteration.
frf_response_optimization.oss
OSSmooth file with a default density threshold of 0.3. You may edit the parameters in the file to obtain the desired results.
frf_response_optimization.out
OptiStruct output file containing specific information on the file setup, the setup of the optimization problem, estimates for the amount of RAM and disk space required for the run, information for all optimization iterations, and compute time information. Review this file for warnings and errors that are flagged from processing the frf_response_optimization.fem file.
frf_response_optimization.sh
Shape file for the final iteration. It contains the material density, void size parameters and void orientation angle for each element in the analysis. This file may be used to restart a run.
frf_response_optimization.stat
Contains information about the CPU time used for the complete run and also the break-up of the CPU time for reading the input deck, assembly, analysis, convergence, and so on.
frf_response_optimization_des.h3d
HyperView binary results file that contain optimization results.
frf_response_optimization_s#.h3d
HyperView binary results file that contains from linear static analysis, and so on.
frf_response_optimization.his_data
The OptiStruct history file containing iteration number, objective function values and percent of constraint violation for each iteration.

結果の表示

すべての反復計算における要素密度と要素板厚の結果がOptiStructから出力されます。

密度結果の静的プロットの表示

  1. OptiStructパネルから、HyperViewをクリックします。
  2. frf_response_optimization.mvwセッションファイルを開きます。
    1. menu barFile > Open > Sessionをクリックします。
    2. Open Session Fileダイアログで作業ディレクトリに移動し、frf_response_optimization.mvwセッションファイルを開きます。
  3. ResultsツールバーでresultsContour-24をクリックし、Contour panelを開きます。
  4. Results Browserから、最終荷重ケースシミュレーションを選択します。
    18.


  5. Contour panelで、averaging methodをsimpleに設定します。
  6. applyをクリックします。
モデル内の各要素に、選択された反復計算についての各要素の密度値を示すレジェンドカラーが割り当てられます。最終設計反復計算は、ベースラインモデルの最適材料レイアウトを与えます。
19. ベースラインモデルのコンター. 最終設計反復計算が表示されます。


最適化実行結果のピーク変位の比較

  1. FRF_response_analysis_freq.mvwセッションファイルを開きます。
    1. menu barFile > Open > Sessionをクリックします。
    2. Open Session Fileダイアログで作業ディレクトリに移動し、FRF_response_analysis_freq.mvwセッションファイルを開きます。
  2. CurvesツールバーでplotsCreate-24をクリックしてBuild Plotsパネルを開きます。これは、既存の解析情報に重ねて曲線を追加するために使用します。
  3. Data file欄に、最終反復解析を含んだfrf_response_optimization_s2.h3d最適化ファイルを読み込みます。
    20.

    os_2095_displ_freq
  4. Subcaseを最終反復計算に設定します。
  5. X TypeをFrequencyにセットします。
  6. Y Typeには、Displacement (Grids)を選択します。
  7. Y RequestにN3を選択します。
  8. Y ComponentにXYZを選択します。
  9. Applyをクリックし、新規情報を元のプロットに重ね書きします。
21. プレートの元の設計と最終設計結果

2095_frf_new_design