Dimension 0 in FLORIS v4 #753
misi9170
started this conversation in
v4 Design Discussion
Replies: 1 comment
-
See also the pull request rafmudaf#60 but please continue the discussion here rather than in that pull request. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
In FLORIS v3, generally numpy arrays in the
simulation
module are 5D, with indices(wd, ws, turbine, rotor_grid_index1, rotor_grid_index2). In
time_series
mode, the ws dimension is functionally collapsed to length 1.FLORIS v4 will always operate in such a
time_series
mode (with thetime_series=True
option no longer explicit but simply the default behavior), and the length 1 dimension will be removed, resulting in 4D numpy arrays with indices (findex, turbine, rotor_grid_index1, rotor_grid_index2).@rafmudaf @paulf81 and I discussed what the new collapsed zeroth index should be called. There are two issues here:
1. Source code variable
For the first, we considered the following options:
sample
,condition
,state
,event
row
,index
,run
,calculation
,simulation
,iteration
,instance
We decided that physical descriptors are potentially subject to misinterpretation (as they may mean different things to different users), and are also possibly too rigid. Software descriptors, on the other hand, are arguably too general, and also difficult to find in the code because they are used to mean various things.
In the end, we decided on a "specific" software descriptor,
findex
, roughly standing for "Floris index" but possibly pronounced "findex" as it reads. This allows:row
,index
, etc.findex
is not used elsewhere in the code.Additionally, the length of the
findex
dimension will be denotedn_findex
.2. Description of dimension 0
We'll also need a way to describe the zeroth dimension in documentation and in-code comments at the top level (e.g. examples, possibly
FlorisInterface
). We have decided, for now, to leave this open and see how we end up referring to the dimension as the development of the low-level code progresses, because we anticipate that the documentation and examples will be the last components to be finalized for v4.0. This will very likely be a physical descriptor, such as "sample", "condition", "state", or "event".Please add comments to provide other options in the discussion.
Beta Was this translation helpful? Give feedback.
All reactions