# Copyright (c) 2026 JSOL CORPORATION # # 本スクリプトはMITライセンスのもとで公開しています。 # ライセンス全文は以下を参照してください。 # https://www.jmag-international.com/jp/scriptlibrary/jmag_script_library_mit/ def generateMesh(study, caseNo): """引数で指定されたスタディのケースでメッシュが未生成であれば生成""" # SetCurrentCaseの引数は0ベースのインデックスのため、ケース番号-1とする caseIndex = caseNo - 1 study.SetCurrentCase(caseIndex) if not study.HasMesh(): study.CreateMesh() def checkNumNodesAndElems(study, caseNo): """引数で指定されたスタディのケースで節点数と要素数を取得し表示""" caseIndex = caseNo - 1 study.SetCurrentCase(caseIndex) if study.HasMesh(): report = study.GetReport() num_nodes = report.NumVertices() num_elements = report.NumElements() print(f"Nodes of Case{caseNo}: {num_nodes}") print(f"Elements of Case{caseNo}: {num_elements}") else: print(u"No mesh generated for the current case") app = designer.GetApplication() targetCase = 2 study = app.GetCurrentStudy() if targetCase > study.GetDesignTable().NumCases(): print(u"The case", targetCase, u"doesn't exist in this study.") else: generateMesh(study, targetCase) checkNumNodesAndElems(study, targetCase)