The FEA Assisted Agent automates Abaqus finite element simulations. It leverages OpenAI models through LlamaIndex and presents a Streamlit interface for executing jobs, extracting stresses and running parametric studies. Phoenix provides tracing and evaluation capabilities so each run can be analysed in detail.
- Abaqus Input File Generator – Creates parameterised
.inpfiles and stores them undersrc/abaqus_files. - Abaqus Job Executor – Runs the simulation and gathers all generated output files.
- Von‑Mises Stress Extractor – Parses the ODB file and records the peak stress value in
max_vm_stress.txt. - Parametric Studies – Uses a ReAct-based agent to automate multiple displacement trials.
- Real-Time Stress Evaluation – Logs whether the stress exceeds the
STRESS_THRESHOLDduring each step.
- User Query Input: Submit a request describing the desired analysis.
- Task Automation: The agent selects tools and performs the simulation steps.
- Real-time Updates: Intermediate reasoning and outputs are shown while the job runs.
- Final Results: The agent summarises the outcome and recorded evaluations.
- Streamlit for the user interface.
- LlamaIndex for agent and tool integration.
- Phoenix for tracing and grading tool calls and answers.
- OpenAI models for both the agent and evaluation judges.
- Custom Modules:
tools,prompt_temp, andeval_utils.
- Tool-Calling and Unit Evaluation – Grades whether the chosen tool and units are correct.
- Final Result Evaluation – Detects hallucination and checks if stress exceeds the configured threshold.
- Stress Threshold Logging – Adds a metric to the latest agent step whenever a new stress value is produced.
- Install the requirements:
pip install -r requirements.txt
- Start the Streamlit app:
Set the
streamlit run app.py
STRESS_THRESHOLDenvironment variable if a different limit is desired.