Remove results dict #94
Copy link
Copy link
Labels
agent:reviewAgent task stateAgent task stateblockingOpen work waits on thisOpen work waits on thisenhancementNew feature or requestNew feature or requestperformance
Milestone
Description
- Make solve! less allocating
- Add all the Dict fields to the results struct
- Rewrite plotting functions to use the results struct
- Remove the solve() function
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
agent:reviewAgent task stateAgent task stateblockingOpen work waits on thisOpen work waits on thisenhancementNew feature or requestNew feature or requestperformance
Activity
ufechner7 commentedon Mar 22, 2025
I would suggest:
To be discussed: Do we want to have one VSMSolution struct, or two, a small and a large one.
1-Bart-1 commentedon Mar 22, 2025
One big struct for now, we can add a smaller one in a new issue. I marked the first point as done, as you did some great progress there already.
1-Bart-1 commentedon Mar 22, 2025
And for the struct field names: we should stay close to the current dict names. But things like "Fx", "Fy", "Fz" can be combined in one "F" or "force" field.
ufechner7 commentedon Mar 22, 2025
@1-Bart-1 Can you please create a pull request, just defining the new version of the VSMSolution struct that you suggest? I would then comment there. I think it would be good to have
Union{MVec, Nothing}for new fields like a force. Then we could skip calculating these values when we don't need them, for example using a parameter likeshortsolution=truefor the solve function.ufechner7 commentedon Mar 22, 2025
I prefer lower case names for variables and attributes. CamelCase case should be reserved for types and structs.
1-Bort-1 commentedon Sep 22, 2026
One PR, as asked: VSMSolution gets every Dict quantity (cl/cd/cs, lift/drag/side, *_distribution, alpha_uncorrected, rey, q_ref, va_ref_vec, span, AR, areas, center of pressure), filled by solve!; plotting, generate_polar_data, examples, docs and tests move onto it; solve() and calculate_results are removed (BREAKING). Benchmarked solve! before/after.
Built on #389, which rewrites calculate_results and calc_forces!; #391's plot keywords get merged in whichever lands second.
Leaving out a small results struct and renaming the existing cl_dist/cd_dist.
50 remaining items