🐛 Troubleshooting

Q: Simulation failed, how to debug?

1. Check the log file:

# View the log of the latest run
tail -f results/<timestamp>/simulation_*.log

2. Common errors and solutions:

Error Message Possible Cause Solution
Model not found Incorrect model path Check if package_path is correct
Failed to compile Modelica syntax error Open the model in OMEdit to check for errors
Variable not found Variable in variableFilter does not exist Check the variable name spelling and use the correct path
Out of memory Too many concurrent processes or model is too large Reduce max_workers or increase system memory
Permission denied File permission issue Check the read/write permissions of the working directory

3. Enable detailed logging:

{
    "logging": {
        "level": "DEBUG"
    }
}

Q: GUI fails to start or display incorrectly?

Windows/Linux Local: * Make sure Tkinter is installed: pip install tk * Check the display environment variable: echo $DISPLAY

Docker Container: * Windows 11: Make sure the WSLg feature of WSL2 is enabled * Linux: Run xhost +local: to allow the container to access X11 * Use an image with GUI support: tricys_openmodelica_gui

Q: Parameter scan results are incomplete?

Possible reasons:

  1. Some simulations failed:
  2. Check the error messages in the log file
  3. Check if the parameter values are reasonable (e.g., avoid division by zero, negative values, etc.)

  4. The output variable filter is too strict:

  5. Check if variableFilter matches the required variables

  6. Concurrency issues:

  7. Try disabling concurrency: "concurrent": false
  8. Check if any processes have crashed
Q: How to report a bug?

Please create a new issue in GitHub Issues and provide:

  1. Environment information:
  2. Operating system and version
  3. Python version
  4. OpenModelica version
  5. TRICYS version

  6. Steps to reproduce:

  7. The complete configuration file
  8. The command you ran
  9. The model you used (if possible)

  10. Error information:

  11. The full error stack trace
  12. Relevant log snippets

  13. Expected behavior:

  14. What you expected to happen
  15. What actually happened