チェックと補正の作成 / 編集
新規のチェックと補正を作成し、また、デフォルトのチェックと補正を編集します。
HyperMeshはModel Checkerにおいて、デフォルトのチェックと補正をサポートします。CheckおよびCorrectionエンティティを用いて、新しいチェックや補正を作成することができます。
TCLチェックの新規作成
モデルチェッカーでは、新しいTCLチェックを作成することができます。
概要
- HM::ModelCheck::LsDyna - LS-DYNA固有のプロシージャー
- HM::ModelCheck::Nastran - Nastran固有のプロシージャー
- HM::ModelCheck::OptiStruct - OptiStruct固有のプロシージャー
- HM::ModelCheck::RadiossBlock - RADIOSS固有のプロシージャー
- HM::ModelCheck::Abaqus - Abaqus固有のプロシージャー
- HM::ModelCheck::Ansys - Ansys固有のプロシージャー
- HM::ModelCheck::Permas - Permas固有のプロシージャー
キーポイント
- check名は一意である必要があります。
- Configは“TclCheck”に設定します。
- Entityタイプは、チェックを実行するエンティティタイプと一致させる必要があります。
- チェックにレベルを関連付けます。
- 関数名には、名前空間を含むTCLプロシージャーの名前を使用します。
- TCLファイル名は、チェックの設定ファイルからの相対パスか、TCLプロシージャを含むTCLファイルの絶対パスのいずれかです。
図 1.
オプション
環境変数を使ってTCLファイルのパスを任意に設定する方法もあります。
環境変数HM_MODELCHECKER_TCLPATH_$profile_nameは、ソルバーのユーザープロファイルごとに使用する必要があります。この設定により、TCLファイル名の入力は“Tcl File” 欄のみに必要となります。
デフォルトでは、この環境変数はチェックの設定ファイルのパスを指します。TCLファイルと設定ファイルが同じ場所にある場合は、パスを指定する必要はありません。“Tcl File”欄には、ファイル名のみを入力してください。
*createmark mats 1 $failed_id_list
hm_setmodelcheckresultentids $checkDisplayname 1
失敗したエンティティが見つからない場合にチェックの空欄リストを上記の2行を使って更新することを推奨します。
サンプルTCLプロシージャー
proc :: HM::ModelCheck::Nastran::CheckPropsUnused { checkDisplayname } {
set entitytype [hm_getmodelcheckenttype $checkDisplayname];
if { $entitytype ne "Props" } { return; }
set lsProps [hm_propertylist id];
if {[llength $lsProps] == 0} {
hm_setmodelcheckcheckstatus $checkDisplayname 3;
return;
}
*EntityPreviewUnused properties 1;
set lsProps [hm_getmark props 1];
set lsFailed {};
foreach prop_id $lsProps {
lappend lsFailed $prop_id;
}
eval *createmark $entitytype 1 "by id" $lsFailed;
if { [hm_marklength $entitytype 1] } {
hm_setmodelcheckresultentids $checkDisplayname 1;
} else {
hm_setmodelcheckresultentids $checkDisplayname 1;
}
};
チェックの作成
補正の作成
Generic Checks
モデルチェッカーでは、いくつかの定義済みのチェックが用意されており、簡単にカスタマイズすることができます。これらのチェックのconfigは "GenericCheck "です。
概要
- 固有のチェック名の使用
- Entityタイプは、チェックを実行するエンティティタイプと一致させる
- チェックにレベルを関連付ける
- カスタマイズ可能な関数名は以下を参照
- 必要に応じて、フィルター、値、および参照を定義
- Filter definitions:
- Filter Attribute - "CARD"、"CONFIG"、"TYPE"、"GROUPTYPE"、またはテンプレートで定義されている属性名
- Filter Value - フィルターの基準、つまり属性名または値。“STATUS_OFF”を使って、上記のいくつかの関数で属性の状態をチェックすることができます。
- Filter Criteria - PASS、FAIL、EQ、NE、LT、LE、GT、GE。PASSとFAILは通常STATUS_OFFフィルターに使用されます。
図 4.
- Value definitions:
- Value Attribute - 上記の関数に適用される、テンプレートで定義されたデータ名または属性名
- Value Limit - 許容限界値
- Value Criteria - EQ、NE、LT、LE、GT、GE
図 5.
- Reference definitions:
- References - テンプレートで定義されたデータ名または属性名
図 6.
- References - テンプレートで定義されたデータ名または属性名
カスタマイズ可能な関数名
![](../../images/attributevaluerange.png)
図 7. Area is not defined for section beam
![](../../images/datanamevaluerange.png)
図 8. Admas having zero or negative mass
![](../../images/entityfielddefined.png)
図 9. Sid is missing for the airbag definition
![](../../images/undefinedentities.png)
図 10. Component is referring to undefined entity
![](../../images/Unresolved_entities.png)
図 11. Unresolved main or secondary in contact
![](../../images/entgetrefincludefile.png)
図 12. Mat and referenced curves not in same include
![](../../images/check_references_in_same_include.png)
図 13. Cload and referenced entities not in same include
![](../../images/entity_not_on_rigid_parts.png)
図 14. CRB referring to non-rigid part
チェックが追加されたら、モデルチェッカーのブラウザで右クリックして Save config fileをクリックすると、チェック内容がXMLの設定ファイルに書き出され、後でアクセスできるようになります。