Flow model chain#3
Draft
bjarketol wants to merge 6 commits into
Draft
Conversation
Follow-up corrections to the PyWake-submodel schema expansion (6d58bb4), scoped to not break the foxes windIO reader. - rotor_averaging.name: restyle to engine-neutral lowercase names and add the native overlap models gaussian_overlap (Niayifar/TurbOPark) and area_overlap (Jensen/PARK2); keep the old capitalized names as deprecated aliases. Note the gaussian_overlap/area_overlap vs Weighted-superposition incompatibility (Weighted needs a node model, e.g. grid). foxes ignores this field (uses background_averaging/wake_averaging), so this is safe. - TI reference flag: remove the redundant top-level use_effective_ti and standardize on the nested wake_expansion_coefficient.free_stream_ti, which foxes already reads; document its polarity. - use_effective_ws: fix misleading title (True = local/effective, not freestream). - turbulence_model: add c0 (foxes IEC reader reads c0/c1/c2). - ws_superposition: add Vector (foxes capability). - example: flow_example_timeseries rotor_averaging name GQGrid -> gq_grid. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Assert multiple_types.yaml yields a multi-entry turbine_types map with a per-position index and distinct hub heights - Assert a wind_turbine-dimensioned resource round-trips through dict_to_netcdf with the per-turbine dimension and height preserved Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- load_yaml/_get_YAML/_ds2yml gain an nc_data option ("list" default,
"array" keeps numpy arrays), avoiding the ~4-28x memory blow-up of turning
large included netCDF resources into nested Python lists
- make _fmt ndarray-safe (the elementwise "!= {}" filter broke on arrays)
- validate() gains array_data=True for structure-only validation: numpy
arrays are replaced by [] so jsonschema checks keys/dims without
materialising or iterating the bulk data
Default behaviour (lists, full validation) is unchanged.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- turbulence_model.c: optional 4-element calibration array for the CrespoHernandez added-turbulence model, so a paper's coefficients (e.g. Niayifar, Zong) can be expressed in windIO. - rotor_averaging.name: add "none" (no rotor-averaging model). This is the only non-node option PyWake's Weighted superposition accepts, and is what the Zong (2020) literature model uses. Both fields are additive and optional; existing inputs are unaffected. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Add CrespoHernandez c-coefficients and 'none' rotor option
FUGA is already in the wind_deficit_model name enum, but its on-the-fly LUT generation (pyfuga, in WIFA) had no schema. Add a `fuga` object documenting the knobs: z0 (scalar or sweep list), zi, zeta0, n_z0, ti_min/ti_max/ti_qlo/ti_qhi, nkz0/nbeta/nx/ny, lut_vars, cache_dir. All optional — omitted fields fall back to WIFA defaults (z0 derived from the site TI, swept across its distribution). Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Modifications made for the FLOW validation model chain. Persisting branch with stand-alone PRs cherry-picked from here.