Skip to content

Conversation

FDsteven
Copy link
Collaborator

@FDsteven FDsteven commented Apr 16, 2025

Largely synced up with #133, but we for sure need to make sure both get merged into main, to include the following new features:

  • TrackedState to ensure that each state variable is updated once and only once in each time step unless we deliberately override that behavior, which is necessary in a few edge cases
  • no more direct variable access to Rust struct fields -- use to_pydict() and from_pydict() methods instead because these provide a much cleaner user experience
  • nearly everything that can/should be synchronized now is synchronized with fastsim-3, making for easier back-and-forth improvements and a platform for eventually transitioning to a common dependency crate for both FASTSim and ALTRIOS
  • improvements to hybrid locomotive controls

Tasks before altrios 1.0.0 release

  • consolidate plotting functions in demos to remove duplication of code
  • dig into these warning messages from running rollout_demo.py:
    SpeedLimitTrainSim history doesn't include time and/or speed, so meet pass events cannot be counted. Units of detailed not supported for freight movement calculation.
    see message in f0f103e
  • make sure none of the demo scripts generate empty plots
  • update calibration framework to match fastsim-3 #130

FDsteven and others added 30 commits March 17, 2025 10:09
…te is somehow not working, need to take deeper look.
Chad Baker and others added 8 commits June 16, 2025 10:31
@garrettlanderson
Copy link
Collaborator

@calbaker @mbbruch

I'm digging into the rollout demo. I have made progress in getting it to work, but I have run into something that I don't fully understand what is going on in the utilities.py set_param_from_path function. I think I know what is going on, and I think we could maybe simplify this a lot since we're dealing with dictionaries and not objects. Let me know what you think.

https://github.com/NREL/altrios/blob/main/python/altrios/utilities.py#L158

image

Chad Baker added 6 commits June 23, 2025 11:51
To duplicate verificiation:
- run python/altrios/demos/speed_limit_train_sim_demo_with_derating.py
- run
```python
to_dataframe = train_sim.to_dataframe()[-1]
common_cols = set(train_sim.to_dataframe()[-1].columns) & set(to_dataframe_expected.columns)
[col for col in common_cols if not to_dataframe_expected[col].equals(to_dataframe[col])]
```
rollout_demo.py runs but plots need attention
…data that needs to be checked and updated if no errors are found
@calbaker calbaker mentioned this pull request Jun 25, 2025
3 tasks
@garrettlanderson
Copy link
Collaborator

@calbaker I had some time tonight to dig back into ALTRIOS proper. I ran build and test with pixi on my windows computer. I noticed this note about not find maturin. Everything else seemed to pass. I do have maturin in this environment because I was aable to run "pixi run maturin develop --release" from my command line. Not sure if this concerning or not. Let me know if you have any other specific tasks that I can help with.

image

@calbaker calbaker merged commit b9f7adc into main Jul 16, 2025
4 checks passed
@calbaker calbaker deleted the Consolidate-plotting-functions branch July 16, 2025 17:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants