Skip to content

Increase stellarator-helias epsfcn#4440

Open
timothy-nunn wants to merge 2 commits into
mainfrom
stellarator-epsfcn
Open

Increase stellarator-helias epsfcn#4440
timothy-nunn wants to merge 2 commits into
mainfrom
stellarator-epsfcn

Conversation

@timothy-nunn

Copy link
Copy Markdown
Collaborator

At the moment stellarator-helias does not converge within its first 100 iterations. PROCESS then automatically revises the epsfcn (step length for calculating derivatives) from 1e-3 to 1e-2. Instead of waiting for this to happen automatically, I propose the input file is updated to reflect this.

@jjwalkowiak what do you think?

@timothy-nunn
timothy-nunn requested a review from a team as a code owner July 15, 2026 09:19
@codecov-commenter

codecov-commenter commented Jul 15, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 48.63%. Comparing base (c667257) to head (923c341).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #4440   +/-   ##
=======================================
  Coverage   48.63%   48.63%           
=======================================
  Files         151      151           
  Lines       29673    29673           
=======================================
  Hits        14432    14432           
  Misses      15241    15241           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@jjwalkowiak

Copy link
Copy Markdown
Contributor

My only concern would be that someone can try to use this regression test as template for other study and then start with 1e-2 as default option. But if you add a comment in the input file which explains that usually we start with 1e-3, then it is fine.
There might be also some issue with the results. I think it might be slightly different when you start directly from 1e-2 However I am not sure how it exactly works. Does the new epsfcn inherits the result from the last iteration of the previous epsfcn as a starting point, or it gets back to the defaults?

@timothy-nunn

timothy-nunn commented Jul 15, 2026

Copy link
Copy Markdown
Collaborator Author

My only concern would be that someone can try to use this regression test as template for other study and then start with 1e-2 as default option. But if you add a comment in the input file which explains that usually we start with 1e-3, then it is fine. There might be also some issue with the results. I think it might be slightly different when you start directly from 1e-2 However I am not sure how it exactly works. Does the new epsfcn inherits the result from the last iteration of the previous epsfcn as a starting point, or it gets back to the defaults?

Thanks for the reply @jjwalkowiak. I will add a comment. I suspect that some of the state remains over from the previous failed optimisation hence why the regression tests have changed. However, this optima will be just as valid as the previous solution, it is probably just closer to the initial point.

Looking at the two solutions:
Old (main) objective value (cost of electricity): 1.21492798588871253e+02
New (this PR) objective value: 1.21493505404321311e+02

This is so small that it does not even show up in the 0.2% difference regression report.

The only large changes to the solution are constraint residuals. These changing indicate that a different solution is being found, however this solution has near identical objective value and all the constraints are being satisfied.

@clmould

clmould commented Jul 17, 2026

Copy link
Copy Markdown
Collaborator

The reasoning for this change makes sense to me, so if @jjwalkowiak is happy I can merge it :)

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