feat: Add AtomizerField training data export and intelligent model discovery
Major additions: - Training data export system for AtomizerField neural network training - Bracket stiffness optimization study with 50+ training samples - Intelligent NX model discovery (auto-detect solutions, expressions, mesh) - Result extractors module for displacement, stress, frequency, mass - User-generated NX journals for advanced workflows - Archive structure for legacy scripts and test outputs - Protocol documentation and dashboard launcher 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
# NX 2412
|
||||
# Journal created by antoi on Fri Nov 21 10:00:35 2025 Eastern Standard Time
|
||||
#
|
||||
import math
|
||||
import NXOpen
|
||||
import NXOpen.CAE
|
||||
import NXOpen.Fields
|
||||
def main(args) :
|
||||
|
||||
theSession = NXOpen.Session.GetSession() #type: NXOpen.Session
|
||||
workSimPart = theSession.Parts.BaseWork
|
||||
displaySimPart = theSession.Parts.BaseDisplay
|
||||
probes1 = [NXOpen.CAE.ResultProbe.Null] * 1
|
||||
fieldManager1 = workSimPart.FindObject("FieldManager")
|
||||
resultProbe1 = fieldManager1.FindObject("ResultProbe")
|
||||
probes1[0] = resultProbe1
|
||||
theSession.ResultManager.ExportProbesToFieldFile(probes1, "C:\\Users\\antoi\\Documents\\Atomaste\\Atomizer\\examples\\Models\\Bracket\\export_field_dz.fld")
|
||||
|
||||
# ----------------------------------------------
|
||||
# Menu: Tools->Automation->Journal->Stop Recording
|
||||
# ----------------------------------------------
|
||||
|
||||
if __name__ == '__main__':
|
||||
main(sys.argv[1:])
|
||||
@@ -0,0 +1,37 @@
|
||||
# NX 2412
|
||||
# Journal created by antoi on Mon Nov 24 10:30:54 2025 Eastern Standard Time
|
||||
#
|
||||
import math
|
||||
import NXOpen
|
||||
import NXOpen.CAE
|
||||
def main(args) :
|
||||
|
||||
theSession = NXOpen.Session.GetSession() #type: NXOpen.Session
|
||||
workSimPart = theSession.Parts.BaseWork
|
||||
displaySimPart = theSession.Parts.BaseDisplay
|
||||
markId1 = theSession.SetUndoMark(NXOpen.Session.MarkVisibility.Visible, "Start")
|
||||
|
||||
theSession.SetUndoMarkName(markId1, "Solver Parameters Dialog")
|
||||
|
||||
markId2 = theSession.SetUndoMark(NXOpen.Session.MarkVisibility.Invisible, "Solver Parameters")
|
||||
|
||||
theSession.DeleteUndoMark(markId2, None)
|
||||
|
||||
markId3 = theSession.SetUndoMark(NXOpen.Session.MarkVisibility.Invisible, "Solver Parameters")
|
||||
|
||||
simSimulation1 = workSimPart.FindObject("Simulation")
|
||||
simSolution1 = simSimulation1.FindObject("Solution[Solution 1]")
|
||||
propertyTable1 = simSolution1.SolverOptionsPropertyTable
|
||||
|
||||
propertyTable1.SetBooleanPropertyValue("solution monitor", False)
|
||||
|
||||
theSession.DeleteUndoMark(markId3, None)
|
||||
|
||||
theSession.SetUndoMarkName(markId1, "Solver Parameters")
|
||||
|
||||
# ----------------------------------------------
|
||||
# Menu: Tools->Automation->Journal->Stop Recording
|
||||
# ----------------------------------------------
|
||||
|
||||
if __name__ == '__main__':
|
||||
main(sys.argv[1:])
|
||||
@@ -0,0 +1,42 @@
|
||||
# NX 2412
|
||||
# Journal created by antoi on Tue Nov 18 14:06:55 2025 Eastern Standard Time
|
||||
#
|
||||
import math
|
||||
import NXOpen
|
||||
import NXOpen.CAE
|
||||
def main(args) :
|
||||
|
||||
theSession = NXOpen.Session.GetSession() #type: NXOpen.Session
|
||||
workSimPart = theSession.Parts.BaseWork
|
||||
displaySimPart = theSession.Parts.BaseDisplay
|
||||
# ----------------------------------------------
|
||||
# Menu: Analysis->Solve All Solutions...
|
||||
# ----------------------------------------------
|
||||
markId1 = theSession.SetUndoMark(NXOpen.Session.MarkVisibility.Visible, "Start")
|
||||
|
||||
theSession.SetUndoMarkName(markId1, "Solve All Solutions Dialog")
|
||||
|
||||
markId2 = theSession.SetUndoMark(NXOpen.Session.MarkVisibility.Invisible, "Solve All Solutions")
|
||||
|
||||
theSession.DeleteUndoMark(markId2, None)
|
||||
|
||||
markId3 = theSession.SetUndoMark(NXOpen.Session.MarkVisibility.Invisible, "Solve All Solutions")
|
||||
|
||||
theCAESimSolveManager = NXOpen.CAE.SimSolveManager.GetSimSolveManager(theSession)
|
||||
|
||||
numsolutionssolved1, numsolutionsfailed1, numsolutionsskipped1 = theCAESimSolveManager.SolveAllSolutions(NXOpen.CAE.SimSolution.SolveOption.Solve, NXOpen.CAE.SimSolution.SetupCheckOption.CompleteCheckAndOutputErrors, NXOpen.CAE.SimSolution.SolveMode.Foreground, False)
|
||||
|
||||
numsolutionssolved2, numsolutionsfailed2, numsolutionsskipped2 = theCAESimSolveManager.SolveAllMetaSolutions(NXOpen.CAE.SimSolution.SolveOption.Solve, NXOpen.CAE.SimSolution.SetupCheckOption.CompleteCheckAndOutputErrors, NXOpen.CAE.SimSolution.SolveMode.Foreground, False)
|
||||
|
||||
theSession.DeleteUndoMark(markId3, None)
|
||||
|
||||
theSession.SetUndoMarkName(markId1, "Solve All Solutions")
|
||||
|
||||
theSession.DeleteUndoMark(NXOpen.Session.UndoMarkId.ValueOf(1988), None)
|
||||
|
||||
# ----------------------------------------------
|
||||
# Menu: Tools->Automation->Journal->Stop Recording
|
||||
# ----------------------------------------------
|
||||
|
||||
if __name__ == '__main__':
|
||||
main(sys.argv[1:])
|
||||
@@ -0,0 +1,71 @@
|
||||
# NX 2412
|
||||
# Journal created by antoi on Tue Nov 18 14:01:45 2025 Eastern Standard Time
|
||||
#
|
||||
import math
|
||||
import NXOpen
|
||||
import NXOpen.CAE
|
||||
def main(args) :
|
||||
|
||||
theSession = NXOpen.Session.GetSession() #type: NXOpen.Session
|
||||
workSimPart = theSession.Parts.BaseWork
|
||||
displaySimPart = theSession.Parts.BaseDisplay
|
||||
# ----------------------------------------------
|
||||
# Menu: Analysis->Solve...
|
||||
# ----------------------------------------------
|
||||
markId1 = theSession.SetUndoMark(NXOpen.Session.MarkVisibility.Visible, "Start")
|
||||
|
||||
theSession.SetUndoMarkName(markId1, "Solve Dialog")
|
||||
|
||||
markId2 = theSession.SetUndoMark(NXOpen.Session.MarkVisibility.Invisible, "Solve")
|
||||
|
||||
theSession.DeleteUndoMark(markId2, None)
|
||||
|
||||
markId3 = theSession.SetUndoMark(NXOpen.Session.MarkVisibility.Invisible, "Solve")
|
||||
|
||||
theCAESimSolveManager = NXOpen.CAE.SimSolveManager.GetSimSolveManager(theSession)
|
||||
|
||||
psolutions1 = [NXOpen.CAE.SimSolution.Null] * 1
|
||||
simSimulation1 = workSimPart.FindObject("Simulation")
|
||||
simSolution1 = simSimulation1.FindObject("Solution[Solution 1]")
|
||||
psolutions1[0] = simSolution1
|
||||
numsolutionssolved1, numsolutionsfailed1, numsolutionsskipped1 = theCAESimSolveManager.SolveChainOfSolutions(psolutions1, NXOpen.CAE.SimSolution.SolveOption.Solve, NXOpen.CAE.SimSolution.SetupCheckOption.CompleteDeepCheckAndOutputErrors, NXOpen.CAE.SimSolution.SolveMode.Background)
|
||||
|
||||
theSession.DeleteUndoMark(markId3, None)
|
||||
|
||||
theSession.SetUndoMarkName(markId1, "Solve")
|
||||
|
||||
markId4 = theSession.SetUndoMark(NXOpen.Session.MarkVisibility.Visible, "Activate Solution")
|
||||
|
||||
simSolution2 = simSimulation1.FindObject("Solution[Solution_Normal_Modes]")
|
||||
simSolutionStep1 = simSolution2.FindObject("SolutionStep[Subcase - Normal Modes 1]")
|
||||
simSolution2.ActiveStep = simSolutionStep1
|
||||
|
||||
# ----------------------------------------------
|
||||
# Menu: Analysis->Solve...
|
||||
# ----------------------------------------------
|
||||
markId5 = theSession.SetUndoMark(NXOpen.Session.MarkVisibility.Visible, "Start")
|
||||
|
||||
theSession.SetUndoMarkName(markId5, "Solve Dialog")
|
||||
|
||||
markId6 = theSession.SetUndoMark(NXOpen.Session.MarkVisibility.Invisible, "Solve")
|
||||
|
||||
theSession.DeleteUndoMark(markId6, None)
|
||||
|
||||
markId7 = theSession.SetUndoMark(NXOpen.Session.MarkVisibility.Invisible, "Solve")
|
||||
|
||||
psolutions2 = [NXOpen.CAE.SimSolution.Null] * 1
|
||||
psolutions2[0] = simSolution2
|
||||
theSession.Post.PostviewDelete(9)
|
||||
|
||||
numsolutionssolved2, numsolutionsfailed2, numsolutionsskipped2 = theCAESimSolveManager.SolveChainOfSolutions(psolutions2, NXOpen.CAE.SimSolution.SolveOption.Solve, NXOpen.CAE.SimSolution.SetupCheckOption.CompleteDeepCheckAndOutputErrors, NXOpen.CAE.SimSolution.SolveMode.Background)
|
||||
|
||||
theSession.DeleteUndoMark(markId7, None)
|
||||
|
||||
theSession.SetUndoMarkName(markId5, "Solve")
|
||||
|
||||
# ----------------------------------------------
|
||||
# Menu: Tools->Automation->Journal->Stop Recording
|
||||
# ----------------------------------------------
|
||||
|
||||
if __name__ == '__main__':
|
||||
main(sys.argv[1:])
|
||||
Reference in New Issue
Block a user