Probeの操作
Probeは、選択したoutput variableをCoreformが評価する位置を記述します。Abaqusの永続recordであり、model databaseとともに保存され、再open時に復元され、public API経由で変更するとjournalへ記録されます。
1 Probe typeを選択
1つの位置には point Probe 、segment上の等間隔位置には line Probe 、相互に無関係な位置の明示的な集合には multi-point Probe を使用します。
各Probeは、次のAbaqus repository typeのうち正確に1つをtargetとします。
instanceNamesはassembly instanceを選択します。setNamesはassembly setを選択します。partNamesはmodel partを選択します。
評価位置を含むgeometryを持つtargetを選択してください。複数のtarget kindを同時に指定するとinvalidです。
2 Probeを作成・更新
次のscriptではline Probeを作成し、targetとsampling densityを変更してからportable specificationを確認します。
from abaqus import mdb
import coreform.abaqus
coreform.abaqus.init_iga_mdb()
model = mdb.models["Beam"]
probes = model.steps.customData.CoreformIGA
probe = probes.LineProbe(
name="Centerline",
instanceNames=("BEAM-1",),
variables=("S", "U"),
startLocation=(0.0, 0.0, 0.0),
stopLocation=(10.0, 0.0, 0.0),
numEvalPoints=41,
)
probe.setValues(
setNames=("CENTERLINE",),
numEvalPoints=81,
)
spec = probe.toSpec()
print(spec.start_location)
print(spec.stop_location)
print(spec.num_eval_points)target keywordを1つ setValues() へ渡すとtarget kindが切り替わります。省略したその他のvalueは現在のstateを保持します。
3 portable specificationから開始
portable Probeをsingle source of truthとして扱う場合は spec= を使用します。flatなAbaqus definition parameterと spec= を混在させないでください。
from coreform.probe import MultiPointProbeSpec, ProbeRegion
portable = MultiPointProbeSpec(
name="Fasteners",
region=ProbeRegion.sets(("FASTENER-REGION",)),
variables=("S",),
locations=(
(1.0, 0.0, 0.0),
(3.0, 0.0, 0.0),
(5.0, 0.0, 0.0),
),
)
probe = probes.MultiPointProbe(spec=portable)互換性のあるspecificationから生成したmappingも spec= 経由で受け付け、record作成前にvalidationされます。
4 Probeの確認と削除
Probe recordは名前をkeyとして probes.probesに保存されます。active target kindについて、解決済みの instances, sets、および parts propertyからlive Abaqus objectを取得できます。周辺のAbaqus model dataを変更した後は、保存済みtarget名が引き続き解決できるか validate() を呼び出して確認してください。
操作をjournalへ記録するため、Probeはnamespace経由で削除します。
probes.deleteProbe(name="Centerline")すべてのfactory、record attribute、method、portable class、parameter、return valueについては、生成済みの Abaqus Probeリファレンス および portable Probeリファレンス を参照してください。