Skip to content

Inputs

GENERATED FROM THE CODE by pyflightstream. Do not edit: it is rewritten.

Every key an input artifact of a workspace may state, one row each: what it sets, its unit or the values it takes, the run types or builds that accept it where the code says, and the solver command it reaches where one does. Each meaning is read from the code beside the key, so a key the package gains arrives here with its meaning. A key whose value no line of the run's script carries says so, "No line of the script carries its value", and names what takes the value instead. A blank Accepted by means the code states no restriction of run type or build; a blank command means the key reaches no command of its own. What the products state is in VARIABLES.md beside this page.

The run matrix

One row per line of the pipe-delimited matrix file, in the columns below. FLIGHT_CONDITION holds KEY:value pairs separated by commas, and VAR_NAMES_VALUES holds KEY: value pairs separated by /. A key no run type reads is refused, naming the run types that do.

The columns

The columns of a row, in file order.

Key What it sets Unit or values Accepted by Command
POL The row's identifier: the simulation id its points are recorded and named under. an id, unique in the matrix
HIDDEN Whether the solver runs without its window. 1 is hidden
RUN Whether the row runs at all; only a row reading 1 is active. an integer
AIRCRAFT The configuration's name. text
CONFIGURATION The user's own label for the configuration; it configures nothing. text
DESCRIPTION Free text about the row. text
FLIGHT_CONDITION The flow condition and the attitude of every point: the keys given decide which quantity is solved for, and the swept key carries the word sweep. KEY:value pairs, comma separated; see the table below
SWEEP_VALUES The values of the key the FLIGHT_CONDITION cell sweeps, one point each. numbers, comma separated
GEOMETRY The geometry the row opens, a file of inputs/geometries/. a file name with its extension OPEN, IMPORT
REF The reference artifact the row's lengths, frames, rotors and discs come from. an id of inputs/references/
SET The setup artifact the row's solver settings come from. an id of inputs/setups/
PPROC The post-processing artifact the row's sections, plots, probes, exports and products come from. an id of inputs/pproc/
SYMMETRY The symmetry the solver is initialized under, which states what was meshed. NONE, MIRROR or PERIODIC INITIALIZE_SOLVER
SYMMETRY_LOADS Whether the reported loads are the meshed sector's or the whole wheel's. true or false SET_ANALYSIS_SYMMETRY_LOADS
NCPUS The processor count: the solver's thread count and, on a cluster, the scheduler's ncpus. a count SET_MAX_PARALLEL_THREADS
WALLTIME The wall clock the row asks for: the scheduler's limit on a cluster, and what the watchdog counts down on an unsteady row. No line of the script carries its value: on an unsteady row, stating it registers the wall-clock actions, and the run writes the deadline into the program they run; on a cluster, the job asks the scheduler for it. a number and its unit, s (seconds), m (minutes), h (hours), d (days), as 240m or 4h
FS_BUILD The solver build the row runs on, as inputs/executables.toml names it. a build identifier
WORKFLOW The run type that builds the row's script, or LEGACY for a row a recipe of the user builds. steady, unsteady, unsteady_rotor or LEGACY
VAR_NAMES_VALUES The row's own keys, the ones its run type reads; see the table of row keys. KEY: value pairs separated by /

The FLIGHT_CONDITION cell

The flow keys are a set of constraints on one flow state, and the keys given decide which quantity is solved for; the attitude keys fix where the aircraft points. Matched case-insensitively; the swept key carries the word sweep.

Key What it sets Unit or values Accepted by Command
MACH Constrains velocity, through the speed of sound at the state's own temperature. dimensionless
TASmps Constrains velocity directly. m/s
REmi Constrains density. millions
ALTFT Constrains pressure, and temperature through the standard lapse. feet
dISA Constrains temperature, as an offset on the standard value. Celsius, a DELTA
RHOkgm3 Constrains density directly, overriding both the atmosphere and REmi. kg/m^3
MUPas Constrains dynamic viscosity, which REmi then solves the density against. Pa s
ASMPS Constrains sonic velocity, which MACH is then taken against. m/s
TK Constrains temperature, stated rather than lapsed. kelvin
PPA Constrains pressure, stated rather than lapsed. pascal
ALPHA The incidence of the free stream. degrees
BETA The sideslip of the free stream. degrees
ADVANCE_RATIO The speed of every motion that states none. dimensionless
RPM The speed of every motion that states none, a magnitude: the sense is the reference's rpm_sign. rev/min
roll_rate The roll rate of the aircraft, about the REF's MRP. deg/s
pitch_rate The pitch rate of the aircraft, about the REF's MRP. deg/s
yaw_rate The yaw rate of the aircraft, about the REF's MRP. deg/s

The row keys, by run type

Every key a run type reads off its row. Most are written in the VAR_NAMES_VALUES cell; a key with its own column, or of the FLIGHT_CONDITION cell, is written there, as its meaning says. A key [[flags]] of the row's setup declares is a key of the row too.

Key What it sets Unit or values Accepted by Command
GEOMETRY The geometry the row opens, a file of inputs/geometries/; written in the GEOMETRY column since 0.17.0. a file name with its extension every run type OPEN, IMPORT
SYMMETRY The symmetry the solver is initialized under, which states what was meshed; written in the SYMMETRY column since 0.17.0. NONE, MIRROR or PERIODIC, as the build's database spells them; absent is NONE every run type INITIALIZE_SOLVER
SYMMETRY_LOADS Whether the reported loads are the meshed sector's or the whole wheel's; written in its column, and it wins over the setup's symmetry_loads. true or false every run type SET_ANALYSIS_SYMMETRY_LOADS
ALPHA The angle of attack, stated in the FLIGHT_CONDITION cell as a number or as the word sweep. deg every run type SOLVER_SET_AOA
BETA The sideslip angle, stated in the FLIGHT_CONDITION cell as a number or as the word sweep. deg every run type SOLVER_SET_SIDESLIP
IGNORE_MISSING_FAMILIES Whether a family the opened mesh lacks is left out or refuses the point; set by --ignore-missing-families of the command line and refused in a cell. true or false; the command line's default is true every run type
EXPORT_LOG Whether the script exports the solver log; written by the run from the HPC profile's [log] table, never by a cell. false, the only value ever written every run type EXPORT_LOG
PERIODIC_COPIES How many periodic copies the meshed sector stands for; required with SYMMETRY PERIODIC and refused otherwise. a count every run type INITIALIZE_SOLVER
BASE_REGIONS The boundaries that become base regions, the flat base and never the body carrying it; it wins over the pproc's base_regions. boundary names, comma separated every run type DETECT_BASE_REGIONS_BY_SURFACE
ROTATE Rotations of the opened mesh, one record each, applied in the order written and after every translation. records {ANGLE: deg / AXIS: - / ALIAS: }, with AUX_FRAMES optional every run type ROTATE_SURFACE, SURFACE_ROTATE
TRANSLATE Translations of the opened mesh, one record each along one axis of a frame, applied in the order written and before every rotation. records {DISTANCE: m / AXIS: - / ALIAS: }, with AUX_FRAMES optional every run type TRANSLATE_SURFACE_IN_FRAME
VELOCITY The free-stream velocity of a case written in Python; a matrix row's comes from its FLIGHT_CONDITION. m/s every run type SOLVER_SET_VELOCITY
ADVANCE_RATIO The rotor speed as an advance ratio, J = V / (n D) with D the rotor's diameter; stated in the FLIGHT_CONDITION cell or in a MOTIONS record, and written in the point's name. dimensionless every run type
roll_rate The roll rate of the aircraft about the roll axis of the REF's [body_axes], positive right wing down; stated in the FLIGHT_CONDITION cell, it turns the free stream. deg/s every run type SET_FREESTREAM
pitch_rate The pitch rate of the aircraft about the pitch axis of the REF's [body_axes], positive nose up; stated in the FLIGHT_CONDITION cell, it turns the free stream. deg/s every run type SET_FREESTREAM
yaw_rate The yaw rate of the aircraft about the yaw axis of the REF's [body_axes], positive nose right; stated in the FLIGHT_CONDITION cell, it turns the free stream. deg/s every run type SET_FREESTREAM
LOG_OUTPUT Which of a case's OUTPUTS is the solver log; a case written in Python states it, and a matrix row is refused it. a 1-based position every run type EXPORT_LOG
NCPUS The processor count: the solver's thread count and, on a cluster, the scheduler's ncpus; written in the NCPUS column. a count every run type SET_MAX_PARALLEL_THREADS
WALLTIME The wall clock the row asks for: the scheduler's limit on a cluster, and what the watchdog counts down on an unsteady row; written in its column. No line of the script carries its value: on an unsteady row, stating it registers the wall-clock actions, and the run writes the deadline into the program they run; on a cluster, the job asks the scheduler for it. a number and its unit, s (seconds), m (minutes), h (hours), d (days), as 240m or 4h every run type
CONFIGURATION The user's own name for the configuration; it configures nothing, and reaches a comment of the script and the custom polar header. text every run type
ACTUATOR The actuator disc the row loads: the name of a block of the row's REF that declares kind = "actuator"; one disc per row. a block name every run type CREATE_NEW_ACTUATOR
ACTUATOR_RPM The disc's speed, a magnitude: its hand is the block's rpm_sign. A row stating ADVANCE_RATIO and not this key turns the disc at n = V / (J D) with the disc's own diameter. rev/min every run type SET_PROP_ACTUATOR_RPM
ACTUATOR_THRUST The disc's net thrust, which selects the elliptical model. N every run type SET_PROP_ACTUATOR_THRUST
PROFILE The profile file of the disc, which selects the custom model. the stem of a file of inputs/profiles/ every run type SET_PROP_ACTUATOR_PROFILE
FREESTREAM A custom free stream in place of the uniform one: a velocity field over the YZ plane of the global frame, in m and m/s, read from its file when the point is built. The field is the flow's direction (SOLVER_SET_AOA does not turn it, T14 on 26.124), so it is refused beside a non-zero ALPHA or BETA, as beside a non-zero or swept body rate and on a LEGACY row. the stem of a file of inputs/freestreams/, whose extension is its form: a .txt is the STRUCTURED form (a first line 'Npts Mpts', then the rows), a .dat the UNSTRUCTURED form (rows 'x y z vx vy vz' only) every run type SET_FREESTREAM
ADDITIONAL_PPROC A second pproc the row names for the additional post; on 26.124 only, and refused on a LEGACY row. No line of the script carries its value: no builder reads it, so the row runs byte for byte as it would without it; pyfs-matrix post --additional-pproc reads it, reopens each recorded point's final .fsm with no solve and extracts that pproc from it. one pproc id, p every run type
COLD_START Starts each point of a steady sweep over the attitude from a cleared solution instead of the previous point's converged one. An unsteady row refuses it, since every point of it is its own job and starts cold; a steady row sweeping the flow, where every point is also its own job, starts every point cold whatever it states. true or false; absent is a warm start every run type; builds 25.100, 26.000, 26.100, 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 CLEAR_SOLUTION
DELTA_TIME The physical time step of the run. s unsteady, unsteady_rotor SET_SOLVER_UNSTEADY
TIME_ITERATIONS The number of physical time steps of the run. a count unsteady, unsteady_rotor SET_SOLVER_UNSTEADY
DELTA_THETA The rotor's rotation per time step, from which the time step follows at the rotor's speed. deg unsteady, unsteady_rotor SET_SOLVER_UNSTEADY
REVOLUTIONS The total revolutions of the run, from which, with DELTA_THETA, the number of time steps follows. revolutions unsteady, unsteady_rotor SET_SOLVER_UNSTEADY
LAST_ITERS_AVG The averaging window of a row that turns no rotor: the last time steps every unsteady product is averaged over. No line of the script carries its value: the post stage averages the products over it. time steps unsteady, unsteady_rotor
BLADES The blade count of the row's reductions, where no rotor block of the reference states it. No line of the script carries its value: the post stage's reductions read it. a count unsteady, unsteady_rotor
EXPORT_UNSTEADY_AFTER_ITER The time step from which the per-step exports begin, each file stamped with its iteration. No line of the script carries its value: stating it registers the per-step actions, and the run writes the step into the program they run. a time step unsteady, unsteady_rotor
RESTART How to continue a run that stopped on the wall clock. {FINISH_PENDING}, {ADDITIONAL_ITERS=} or {ADDITIONAL_REVS=} unsteady, unsteady_rotor
LAST_REVS_AVG The averaging window of a rotor row: the last revolutions every unsteady product is averaged over. No line of the script carries its value: the post stage averages the products over it. revolutions, a float unsteady_rotor
CLOCK_MOTION The motion that owns the row's clock: the time step and the run length are that motion's. a motion the row states unsteady_rotor
RPM The rotor speed; stated in the FLIGHT_CONDITION cell, it reaches every motion that states none. rev/min unsteady_rotor; builds 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 SET_MOTION_ROTOR_RPM
RPM_SIGN The hand of a speed derived from ADVANCE_RATIO; refused beside an explicit RPM, and a rotor block's rpm_sign wins over it. 1 or -1; absent is 1 unsteady_rotor; builds 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 SET_MOTION_ROTOR_RPM
ROTOR_AXIS The axis the rotor of a flat row turns about; a rotor block of the reference states its own. X, Y or Z unsteady_rotor; builds 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 SET_MOTION_ROTOR_AXIS
ROTOR_ORIGIN The hub of the rotor of a flat row; a rotor block of the reference states its own. three coordinates, comma separated, or a rotor point of inputs/reference_points.toml unsteady_rotor CREATE_NEW_COORDINATE_SYSTEM
ROTOR_SHEDDING The direction the relaxed trailing edges of a rotor case shed their wake. No line of the script carries its value: a workflow row checks it, refusing anything but AXIAL or AZIMUTH, and does not apply it, because the direction is a field of the relaxed trailing-edge component definition and no command sets it. To shed in it, pass the definition's specifications through rotor_relaxed_trailing_edges and write the ones it returns back into the definition the geometry carries. AXIAL or AZIMUTH; absent asks nothing unsteady_rotor
MOVING_BOUNDARIES The boundaries a flat rotor row turns; a MOTIONS record names its rotor by MOVING_BC_ALIAS instead. family names, or an alias unsteady_rotor SET_MOTION_BOUNDARIES
MOTIONS The rotor motions of the row, one record each, every rotor named by the alias of a rotor block of the reference. records {MOVING_BC_ALIAS: / RPM: rev/min}, or ADVANCE_RATIO in place of RPM unsteady_rotor; builds 25.100, 26.000, 26.100, 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 CREATE_NEW_MOTION
EXPORT_UNSTEADY_AFTER_REV The revolution of the rotor clock from which the per-step exports begin. No line of the script carries its value: stating it registers the per-step actions, and the run writes the step it falls on into the program they run. revolutions unsteady_rotor
RAW Solver command lines the row states verbatim, one record each or a file of them, each emitted before the phase it names. records {COMMAND: / BEFORE: }, or FILE: in place of COMMAND every run type, and a LEGACY row

The setup artifact, inputs/setups/<id>.toml

The solver settings a row's SET names, in this package's words or in the solver's own. A key that names no setting, no alias and no reserved key is refused, naming the keys that apply.

Solver settings

Solver runtime settings of one case.

Key What it sets Unit or values Accepted by Command
iterations Solver iteration limit. an integer, >= 1, default 500 SOLVER_SET_ITERATIONS
convergence Residual threshold declaring convergence (SRC-003 p.200). a number, > 0.0, default 1e-05 SOLVER_SET_CONVERGENCE
forced_iterations Run the full iteration count regardless of convergence. true or false, or ENABLE or DISABLE, optional SOLVER_SET_FORCED_ITERATIONS
boundary_layer The boundary layer model: LAMINAR, TRANSITIONAL, or TURBULENT. one of LAMINAR, TRANSITIONAL, TURBULENT, optional SET_BOUNDARY_LAYER_TYPE
viscous_coupling Couple the boundary layer model to the potential solution. true or false, or ENABLE or DISABLE, optional SET_SOLVER_VISCOUS_COUPLING
max_threads Parallel core count; a row's NCPUS column wins over it. an integer, >= 1, optional SET_MAX_PARALLEL_THREADS
timeout_s Wall-clock limit for one point's solver process; enforced by the executor, not by FlightStream. No line of the script carries its value: the executor stops the solver process at it. a number, > 0.0, optional
walltime_margin_s How much of a row's WALLTIME to leave for the exports, in seconds; twenty minutes when unstated. No line of the script carries its value: the wall-clock program the run writes beside the script reads it. a number, > 0.0, optional
solver_model The flow model the solver is initialized with, INCOMPRESSIBLE, SUBSONIC_PRANDTL_GLAUERT, TRANSONIC_FIELD_PANEL, TANGENT_CONE or MODIFIED_NEWTONIAN; an argument of INITIALIZE_SOLVER. text, optional INITIALIZE_SOLVER
wall_collision_avoidance The wall-collision avoidance argument of INITIALIZE_SOLVER, the other one a preset states. true or false, or ENABLE or DISABLE, optional INITIALIZE_SOLVER
convergence_iterations Iterations the residual must hold under the threshold before the solver calls the run converged. an integer, >= 1, optional SET_SOLVER_CONVERGENCE_ITERATIONS
minimum_cp Floor applied to the pressure coefficient. a number, optional SOLVER_MINIMUM_CP
farfield_layers Farfield layer count. an integer, >= 1, optional SOLVER_SET_FARFIELD_LAYERS
mesh_induced_wake_velocity Switches the solver's mesh-induced wake velocity. true or false, or ENABLE or DISABLE, optional SOLVER_SET_MESH_INDUCED_WAKE_VELOCITY
unsteady_pressure_and_kutta Switches the unsteady Bernoulli and Kutta terms of the unsteady solver. true or false, or ENABLE or DISABLE, optional SOLVER_UNSTEADY_PRESSURE_AND_KUTTA
wake_on_wake_induction Switches the wake-on-wake induced velocity computation. true or false, or ENABLE or DISABLE, optional builds 26.100, 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 SET_WAKE_ON_WAKE_INDUCTION
additional_wake_relaxation Asks for one additional wake relaxation iteration. true or false, or ENABLE or DISABLE, optional builds 26.100, 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 ADDITIONAL_WAKE_RELAXATION_ITERATION
reynolds_averaged_drag Switches the Reynolds-averaged (flat plate) boundary layer calculations. true or false, or ENABLE or DISABLE, optional builds 25.100, 26.000, 26.100, 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 REYNOLDS_AVERAGED_DRAG_FORCES
solver_stabilization Stabilization strength. a number, >= 0.0, optional builds 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 SOLVER_STABILIZATION
laminar_separation Switches laminar boundary layer separation. true or false, or ENABLE or DISABLE, optional builds 26.100, 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 LAMINAR_SEPARATION
kutta_joukowski_lift Computes the inviscid lift by the Kutta-Joukowski theorem, from the bound circulation, instead of integrating the surface pressure. true or false, or ENABLE or DISABLE, optional builds 26.100, 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 KUTTA_JOUKOWSKI_LIFT_FORCES
aeroelastic_rbf_type The radial basis function of the aeroelastic mesh morphing. one of WENDLAND_C2, GAUSSIAN, THIN_PLATE_SPLINE, MULTI_QUADRATIC, INV_MULTI_QUADRATIC, optional builds 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 AEROELASTIC_RBF_TYPE
print_rotor_induced_velocities Prints the rotor-induced velocities to the log at every time step of an unsteady run. true or false, or ENABLE or DISABLE, optional builds 26.100, 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 PRINT_ROTOR_INDUCED_VELOCITIES
adaptive_field_grid_refinement Refines the field-source grid where the solution needs it; the manual marks it transonic only. true or false, or ENABLE or DISABLE, optional builds 26.100, 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 SET_ADAPTIVE_FIELD_GRID_REFINEMENT
rotor_induced_velocity_blending Blending factor for wake stabilization, dimensionless, between 0 and 1. a number, optional builds 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 ROTOR_INDUCED_VELOCITY_BLENDING
wake_numerical_relaxation Relaxation factor applied to the wake between iterations, dimensionless, between 0 and 1. a number, optional builds 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 SET_WAKE_NUMERICAL_RELAXATION
wake_relaxation Relaxes the wake geometry between solver iterations. true or false, or ENABLE or DISABLE, optional builds 25.000, 25.100, 26.000 SET_WAKE_RELAXATION
wake_decay_constant_per_m Rate at which wake vorticity decays with distance, per metre. a number, optional builds 26.121, 26.122, 26.123, 26.124 SET_WAKE_DECAY_CONSTANT
wake_streamwise_agglomeration Agglomerates wake filament edges along the streamwise direction, so the solver carries fewer wake elements. true or false, or ENABLE or DISABLE, optional builds 25.000, 25.100, 26.000 SET_WAKE_STREAMWISE_AGGLOMERATION
jet_wake_decay_normalized_length Distance at which a jet wake decays to a tenth of its strength, in jet wake diameters. a number, optional builds 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 SET_JET_WAKE_DECAY_NORMALIZED_LENGTH
jet_wake_filaments_grid_induction Whether the jet wake filaments induce velocity on the mesh. true or false, or ENABLE or DISABLE, optional builds 26.101, 26.120 SET_JET_WAKE_FILAMENTS_GRID_INDUCTION
adverse_gradient_boundary_layer Switches the adverse-pressure-gradient treatment of the boundary-layer model. true or false, or ENABLE or DISABLE, optional builds 25.000, 25.100, 26.000 SOLVER_SET_ADVERSE_GRADIENT_BOUNDARY_LAYER
vortex_ring_normalization Normalizes the vortex-ring strengths on the wake panels. true or false, or ENABLE or DISABLE, optional builds 25.000, 25.100, 26.000 SOLVER_VORTEX_RING_NORMALIZATION
wake_termination_revolutions Wake termination stated in revolutions, negative counting backwards from the end of the run. a number, optional SET_WAKE_TERMINATION_TIME_STEPS
wake_termination_steps Wake termination stated in time steps, negative counting backwards from the end of the run, for a run type with a clock and no rotor. an integer, optional SET_WAKE_TERMINATION_TIME_STEPS
symmetry_loads Whether the reported loads are the meshed half's or sector's or the whole model's; a row's SYMMETRY_LOADS column wins over it. true or false, or ENABLE or DISABLE, optional SET_ANALYSIS_SYMMETRY_LOADS
significant_digits How many decimals the solver prints in every export. an integer, >= 1, optional SET_SIGNIFICANT_DIGITS
reference_velocity_m_per_s The velocity the coefficients are normalised on, in m/s; unstated, the free-stream velocity. a number, > 0.0, optional SOLVER_SET_REF_VELOCITY
vorticity_drag_families The families whose induced drag comes from vorticity integration, by family name. a list of names, optional SET_VORTICITY_DRAG_BOUNDARIES
axial_separation_families The families on the axial flow separation list, by family name. a list of names, optional builds 25.000, 25.100, 26.000, 26.100 SET_AXIAL_SEPARATION_BOUNDARIES
load_solver_initialization Whether OPEN loads the solver initialization a saved simulation carries; unstated, it does not. true or false, or ENABLE or DISABLE, optional OPEN
analysis_families The families that enter the loads, by family name; every other boundary leaves the analysis. a list of names, optional steady rows SET_SOLVER_ANALYSIS_BOUNDARIES
load_units The unit the loads table prints its forces and moments in. one of COEFFICIENTS, NEWTONS, KILO-NEWTONS, POUND-FORCE, KILOGRAM-FORCE, optional steady rows SET_LOADS_AND_MOMENTS_UNITS
inviscid_loads Reports the loads and moments without their viscous part. true or false, or ENABLE or DISABLE, optional steady rows SET_INVISCID_LOADS
vorticity_lift_model Computes the lift from the vorticity field rather than from the integrated surface pressure. true or false, or ENABLE or DISABLE, optional builds 25.000, 25.100, 26.000, 26.100, 26.101, 26.120, 26.121, 26.122, 26.123 SET_VORTICITY_LIFT_MODEL
unsteady_viscous_coupling_iteration The time step at which an unsteady run switches the viscous coupling on. an integer, >= 1, optional builds 25.000, 25.100, 26.000 SET_UNSTEADY_VISCOUS_COUPLING_ITERATION

The solver's own names, read as aliases

A preset transcribed from a working session keeps working as written: each of these names a setting above. Two spellings of one setting in one preset are refused.

Key What it sets Unit or values Accepted by Command
NITER Read as iterations. SOLVER_SET_ITERATIONS
boundary_layer_type Read as boundary_layer. SET_BOUNDARY_LAYER_TYPE
max_parallel_threads Read as max_threads. SET_MAX_PARALLEL_THREADS
set_solver_model Read as solver_model. INITIALIZE_SOLVER
proximity_avoidance Read as wall_collision_avoidance. INITIALIZE_SOLVER
solver_minimum_cp Read as minimum_cp. SOLVER_MINIMUM_CP
induced_wake_velocity Read as mesh_induced_wake_velocity. SOLVER_SET_MESH_INDUCED_WAKE_VELOCITY
unsteady_pressure_kutta Read as unsteady_pressure_and_kutta. SOLVER_UNSTEADY_PRESSURE_AND_KUTTA
additional_wake_relaxation_iteration Read as additional_wake_relaxation. builds 26.100, 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 ADDITIONAL_WAKE_RELAXATION_ITERATION
reynolds_averaged_drag_forces Read as reynolds_averaged_drag. builds 25.100, 26.000, 26.100, 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 REYNOLDS_AVERAGED_DRAG_FORCES
unsteady_N_revolutions_wake Read as wake_termination_revolutions. SET_WAKE_TERMINATION_TIME_STEPS
reference_velocity_mps Read as reference_velocity_m_per_s. SOLVER_SET_REF_VELOCITY
vorticity_drag_boundaries Read as vorticity_drag_families. SET_VORTICITY_DRAG_BOUNDARIES
set_vorticity_drag_boundaries Read as vorticity_drag_families. SET_VORTICITY_DRAG_BOUNDARIES
set_solver_analysis_boundaries Read as analysis_families. SET_SOLVER_ANALYSIS_BOUNDARIES
set_loads_and_moments_units Read as load_units. SET_LOADS_AND_MOMENTS_UNITS
set_inviscid_loads Read as inviscid_loads. SET_INVISCID_LOADS
set_vorticity_lift_model Read as vorticity_lift_model. builds 25.000, 25.100, 26.000, 26.100, 26.101, 26.120, 26.121, 26.122, 26.123 SET_VORTICITY_LIFT_MODEL
set_unsteady_viscous_coupling_iteration Read as unsteady_viscous_coupling_iteration. builds 25.000, 25.100, 26.000 SET_UNSTEADY_VISCOUS_COUPLING_ITERATION

Recorded, and emitting nothing

Kept in the artifact, reaching no script, and named with its reason in a warning each time a row binds the preset.

Key What it sets Unit or values Accepted by Command
solver Kept in the artifact and emitted nowhere: the run TYPE, which the matrix WORKFLOW column names: a preset shared by several rows cannot decide whether one of them is steady.
motion Kept in the artifact and emitted nowhere: the motion type, which the workflow creates from the row's own rotor keys.
symmetry_type Kept in the artifact and emitted nowhere: symmetry describes what was MESHED, so it belongs to the row's geometry and is stated in the row's SYMMETRY key; a preset value would silently overrule the mesh it knows nothing about.
unsteady_delta_theta_deg Kept in the artifact and emitted nowhere: superseded by the row's DELTA_THETA, which is where the azimuthal step is stated now that the clock is derived from it.
unsteady_N_revolutions Kept in the artifact and emitted nowhere: superseded by the row's REVOLUTIONS, for the same reason.
set_base_region_trailing_edges Kept in the artifact and emitted nowhere: a separation model that selects boundaries, and a preset carries no boundary selection; state it in a recipe.
slipstream_wake_stabilization Kept in the artifact and emitted nowhere: no emitter in this package.
wake_layers Kept in the artifact and emitted nowhere: no emitter in this package.

Tables and reserved keys

The keys a preset may state that are not solver settings.

Key What it sets Unit or values Accepted by Command
recorded_only The keys of this preset to keep in the artifact and emit nowhere; each still warns, naming itself. a list of key names
flight_condition Fluid pins every row naming this setup inherits; a row stating one wins over it. a table of the pins below
stabilization Switches the stabilization whose strength stabilization_strength states; disabled, nothing is emitted. true or false, or ENABLE or DISABLE; beside solver_stabilization, refused builds 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 SOLVER_STABILIZATION
stabilization_strength The strength of the stabilization the key above switches. a number builds 26.101, 26.120, 26.121, 26.122, 26.123, 26.124 SOLVER_STABILIZATION
raw Solver command lines stated verbatim, every row naming this setup emitting each before the phase it names. an array of tables; see [[raw]] below
flags Solver commands this setup exposes to the matrix under a word, the row stating the value. an array of tables; see [[flags]] below

[flight_condition]

The fluid pins, each replacing what the standard atmosphere would supply. The velocity keys and REmi may not live here: they make a point that point.

Key What it sets Unit or values Accepted by Command
RHOkgm3 Constrains density directly, overriding both the atmosphere and REmi. kg/m^3
MUPas Constrains dynamic viscosity, which REmi then solves the density against. Pa s
ASMPS Constrains sonic velocity, which MACH is then taken against. m/s
TK Constrains temperature, stated rather than lapsed. kelvin
PPA Constrains pressure, stated rather than lapsed. pascal

[[raw]]

One solver command a setup artifact states verbatim (PFS-2033.01).

Key What it sets Unit or values Accepted by Command
command The command line as the solver reads it, arguments included. text, required
before The phase the line is emitted before: control for a line at the head of the script, or one of the command database's phases. text, required

[[flags]]

One solver command a setup exposes to the matrix under a name (PFS-2035.20).

Key What it sets Unit or values Accepted by Command
name The word a matrix row writes in its VAR_NAMES_VALUES cell. text, required
command The FlightStream command the flag becomes, bare: the row supplies the arguments. text, required
before The phase the command is emitted before. text, optional

The post-processing artifact, inputs/pproc/<id>.toml

What a row's PPROC names: the definitions the script emits before the solve, the exports a point leaves and the products written after it. The columns those products write are in VARIABLES.md, and how to write an equation is in WRITING-EQUATIONS.md, both beside this page.

The tables and top-level keys

The post-processing specification a matrix row's PPROC cell names.

Key What it sets Unit or values Accepted by Command
groups The groups the polar tables are written per, each naming ONE alias of the reference. a table of your own keys
phase_locked When the phase-locked reduction is generated, and over how many revolutions; absent, it is the series of blade passages. a table; see [phase_locked] below
equations Coefficients the post stage derives into the unsteady polar, keyed by the derived coefficient's name. tables under your own names; see [equations.<NAME>] below
glossary What each of the user's own symbols means, listed in VARIABLES.md beside the package's definitions. a table of your own keys
names Renames a plot column of the unsteady polar and of the reductions, from the name the export prints to the one a reader's tool expects. a table of your own keys
exports Which of the export kinds a point writes. a table; see [exports] below
time_averaging Asks the solver for surface exports averaged over the last iterations or revolutions of the run. a table; see [time_averaging] below builds 26.122, 26.123, 26.124 SET_NEW_UNSTEADY_SOLVER_ACTION
vtk_variables The variables the VTK surface export writes. a list of names, optional SET_VTK_EXPORT_VARIABLES
sections The surface-section distributions the script declares before the solve. a table; see [sections] below NEW_SURFACE_SECTION_DISTRIBUTION
volume_section The one flow-field plane each point of a steady row cuts after its solve and exports. a table; see [volume_section] below CREATE_NEW_RECTANGLE_VOLUME_SECTION, CREATE_NEW_CIRCLE_VOLUME_SECTION
plots The unsteady force plots: which parameters, over which groups of families. a table; see [plots] below UNSTEADY_SOLVER_NEW_FORCE_PLOT
probes The fluid probe entries, one per frame sampled. an array of tables; see [[probes]] below UNSTEADY_SOLVER_NEW_FLUID_PLOT, NEW_PROBE_POINT
products Which post-processed tables the campaign writes. a table; see [products] below
blade_pattern How a blade family is told from the airframe: a regular expression over the family name. text, default "^Blade\d+$"
base_regions The boundaries that become base regions, detected after OPEN; a row's BASE_REGIONS wins over it. a list of names DETECT_BASE_REGIONS_BY_SURFACE

[phase_locked]

The [phase_locked] table: when the reduction exists, and over how much.

Key What it sets Unit or values Accepted by Command
min_revolutions Total revolutions the matrix must specify before this is generated. a number, > 0.0, required
last_revolutions_avg How many of the LAST revolutions the average uses. a number, > 0.0, required

[equations.<NAME>]

One entry of [equations]: a coefficient the post stage derives.

Key What it sets Unit or values Accepted by Command
expression The arithmetic, over the columns the unsteady polar's row holds. text, required
meshes_alias The alias the coefficient is about, and the suffix of its column <NAME>_<alias>; never a family list. text, required
frame The frame whose plotted columns a symbol finds first. text, optional

[exports]

Which of the export kinds a point writes, one key per kind. The volume section's file is not named here: [volume_section] declares it.

Key What it sets Unit or values Accepted by Command
simulation The point's final saved simulation, its solver state after the solve. true; false is refused SAVEAS
loads The loads table, the export every run is judged by. true; false is refused EXPORT_SOLVER_ANALYSIS_SPREADSHEET
tecplot The surface solution in Tecplot format, written by the package from the VTK export: one value per panel, in the reference frame. true or false, default true SET_VTK_EXPORT_VARIABLES, EXPORT_SOLVER_ANALYSIS_VTK
vtk The surface solution in VTK format, as the solver writes it; the Tecplot is written from this same file. true or false, default false EXPORT_SOLVER_ANALYSIS_VTK
csv The surface solution as a CSV table. true or false, default false EXPORT_SOLVER_ANALYSIS_CSV
force_distributions The per-panel force distribution, saved once at the end of the run. true or false, default false EXPORT_SOLVER_ANALYSIS_FORCE_DISTRIBUTIONS
sections The pressure distribution of every surface section the pproc declares. true or false, default true EXPORT_ALL_SURFACE_SECTIONS
sectional_loads The sectional loads of every surface section the pproc declares. true or false, default true EXPORT_SURFACE_SECTIONAL_LOADS
probes The flow quantities at the probe points, after a steady solve. true or false, default true steady rows EXPORT_PROBE_POINTS
plots The force and fluid plot histories of an unsteady run, one row per time step. true or false, default true unsteady run types UNSTEADY_SOLVER_EXPORT_PLOTS
plot_residuals The solver's residual history as a text series, one row per iteration. true or false, default true SAVE_PLOT_TO_FILE
plot_loads The solver's load history as a text series, one row per iteration. true or false, default true SAVE_PLOT_TO_FILE
plot_sections_cp The section Cp plot as a text series, one x and Cp pair per section. true or false, default true where [[sections.distributions]] declares any steady rows SAVE_PLOT_TO_FILE
log The solver log, which turns a run into a residual verdict. true or false, default true EXPORT_LOG

[time_averaging]

The last iterations or revolutions used for solver surface averaging.

Reaches SET_NEW_UNSTEADY_SOLVER_ACTION.

Key What it sets Unit or values Accepted by Command
last_revs Averages the surface exports over the last revolutions of the rotor clock. a number, > 0, optional
last_iters Averages the surface exports over the last time iterations; a table states exactly one of the two. an integer, > 0, optional

[sections]

The [sections] table: NEW_SURFACE_SECTION_DISTRIBUTION per entry and plane.

Reaches NEW_SURFACE_SECTION_DISTRIBUTION.

Key What it sets Unit or values Accepted by Command
count The number of sections of every distribution that states none. an integer, >= 1, default 50
plot_direction The plot direction of every distribution that states none. 1 or 2, default 1
include_symmetry The command's INCLUDE_SYMMETRY argument, one value for the whole artifact, because symmetry is a property of the case. true or false, default false
distributions The distributions, one command per entry and plane. an array of tables; see [[sections.distributions]] below

[[sections.distributions]]

One surface-section distribution: families, frame and planes.

Key What it sets Unit or values Accepted by Command
families What the sections cut: a selector word, an alias, a family name, or a list of those. text or a list of names, required
frame The frame the planes belong to: MRP, a frame the reference declares, or a rotor's. text, default "MRP"
planes The planes of that frame the sections lie in, one distribution each. a list of "XY" or "XZ" or "YZ", required
count The number of sections of this entry; unstated, the [sections] table's. an integer, >= 1, optional
plot_direction The plot direction of this entry; unstated, the [sections] table's. 1 or 2, optional
integrate Appends the midpoint-strip integrals of the sectional loads to this distribution's CSV. true or false, default false

[volume_section]

The [volume_section] table: one flow-field plane a steady point exports (G05).

Reaches CREATE_NEW_RECTANGLE_VOLUME_SECTION, CREATE_NEW_CIRCLE_VOLUME_SECTION.

Key What it sets Unit or values Accepted by Command
shape Which create command cuts the plane. "rectangle" or "circle", required
frame The frame the plane lies in: MRP, or a frame the reference's [[frames]] table declares or a rotor carries. text, default "MRP"
plane The frame's plane the section lies in. "XY" or "XZ" or "YZ", required
offset_m The plane's distance from the frame origin along its normal, in metres, the simulation's length unit. a number, default 0.0
corners_m Rectangle only: x1, y1, x2, y2 in metres, the two diagonal corners the command takes, in the plane. 4 numbers, optional
refinement_layers Rectangle only: the command's refinement layer count, 1 unless stated. an integer, >= 1, default 1
radii_m Circle only: the inner and outer radius in metres, 0 <= r1 < r2. 2 numbers, optional
points Circle only: ipts radial and jpts azimuthal segments. 2 numbers, optional
format The export: EXPORT_VOLUME_SECTION_VTK or EXPORT_VOLUME_SECTION_TECPLOT. "vtk" or "tecplot", default "vtk" EXPORT_VOLUME_SECTION_VTK, EXPORT_VOLUME_SECTION_TECPLOT

[plots]

The [plots] table: which parameters, over which groups of families.

Reaches UNSTEADY_SOLVER_NEW_FORCE_PLOT.

Key What it sets Unit or values Accepted by Command
parameters The force and moment parameters plotted for every group; unstated, all of them. a list of names
groups The groups of families, one plot per parameter each. an array of tables; see [[plots.groups]] below

[[plots.groups]]

One group of unsteady force plots: a name, a frame and the families summed.

Key What it sets Unit or values Accepted by Command
name The group's name, which names its plots <parameter>_<name>; it carries {family} exactly when the entry expands. text, required
frame The frame the loads are measured in, which decides how many groups the entry is. text, default "MRP"
families The families summed: a selector word, an alias, a family name, or a list of those. text or a list of names, required

[[probes]]

One [[probes]] entry: fluid plots along lines, in a frame, per parameter.

Reaches UNSTEADY_SOLVER_NEW_FLUID_PLOT, NEW_PROBE_POINT.

Key What it sets Unit or values Accepted by Command
frame The frame the lines and planes are laid out in; empty, the rotor's own hub frame. text, default ""
parameters The fluid parameters sampled at every point. a list of names
points The vertices each line is sampled at, both ends included. an integer, >= 2, default 25
scale What the coordinates are in: metres, or radii of the row's rotor. "m" or "rotor_radius", default "m"
lines Lines of probes, each from one vertex to another. an array of tables; see [[probes.lines]] below
rectangles Rectangular probe planes, each gridded point by point. an array of tables; see [[probes.rectangles]] below
circles Circular probe planes, each gridded in polar coordinates. an array of tables; see [[probes.circles]] below
points_file The name of a points file of inputs/profiles/, cited instead of drawing lines and planes. text, optional

[[probes.lines]]

One line of fluid probes, from one vertex to another, sampled at points.

Key What it sets Unit or values Accepted by Command
start The first vertex, in the entry's frame and scale. 3 numbers, required
end The last vertex, in the entry's frame and scale. 3 numbers, required

[[probes.rectangles]]

A rectangular probe plane, given by three of its vertices (FR-79).

Key What it sets Unit or values Accepted by Command
origin The corner the grid starts from. 3 numbers, required
along_u The corner the grid runs toward in its first direction. 3 numbers, required
along_v The corner the grid runs toward in its second direction. 3 numbers, required
points_u The stations from origin to along_u, both ends included. an integer, >= 2, required
points_v The stations from origin to along_v, both ends included. an integer, >= 2, required

[[probes.circles]]

A circular probe plane, discretised in polar coordinates (FR-79).

Key What it sets Unit or values Accepted by Command
center The centre of the disk. 3 numbers, required
normal The axis the disk is perpendicular to. 3 numbers, required
radius The disk's radius, in the entry's scale. a number, > 0.0, required
points_radial The stations from the centre to the rim, both included. an integer, >= 2, required
points_azimuth The stations around. an integer, >= 3, required

[products]

The [products] table: which post-processed CSV tables the campaign writes.

Key What it sets Unit or values Accepted by Command
polars Writes one polar table per group of [groups], the group's coefficients per point. true or false, default true
sections Writes one sections table per point, from its sectional loads export. true or false, default true
plots Writes one plots table per unsteady point, from its plots export. true or false, default true
custom_polar_format Writes, beside every polar table, the same rows in the fixed-width custom polar format. true or false, default false
superfile_format The format the super file is written in. text, default "csv"

The reference artifact, inputs/references/<id>.toml

What a row's REF names: the reference lengths the coefficients are divided by, the moment point, the frames, the aliases, and one block per rotor, actuator disc and named point. Lengths are in metres.

Top-level keys and tables

Reference data of one configuration (inputs/references/<id>.toml).

Key What it sets Unit or values Accepted by Command
area_m2 Reference area S_ref in m^2; must be positive. a number, > 0.0, required SOLVER_SET_REF_AREA
chord_m Reference chord c_ref in m; must be positive. a number, > 0.0, required SOLVER_SET_REF_LENGTH
span_m Reference span b_ref in m; must be positive. a number, > 0.0, required
rotor_diameter_m Rotor diameter D in m; must be positive. a number, > 0.0, optional
moment_point Moment reference point in the simulation geometry frame, m. a table; see [moment_point] below
body_axes Which model axis, X, Y or Z, each body rate turns about, keyed roll, pitch and yaw. a table; see [body_axes] below
rotor Rotor block, present for propulsive configurations. a table; see [rotor] below
aliases Names for groups of boundaries, each standing for the boundary names, families or aliases listed under it. a table of your own keys
frames The custom coordinate systems of the configuration, in the order written. an array of tables; see [[frames]] below CREATE_NEW_COORDINATE_SYSTEM

[moment_point]

One point in the simulation geometry reference frame, meters.

Key What it sets Unit or values Accepted by Command
kind What the point is, rotor or airframe (PFS-2029.11.02), stated so that a motion built on it is a decision the file shows and not a side effect of the name's radical; None leaves the convention to say (ERP is a rotor, ARP the airframe). text, optional
x_m X coordinate in m. a number, default 0.0
y_m Y coordinate in m. a number, default 0.0
z_m Z coordinate in m. a number, default 0.0

[body_axes]

Which model axis each body rate turns about; a configuration declaring none is one no row may turn.

Key What it sets Unit or values Accepted by Command
roll The model axis the row's roll_rate turns about. X, Y or Z
pitch The model axis the row's pitch_rate turns about. X, Y or Z
yaw The model axis the row's yaw_rate turns about. X, Y or Z

[rotor]

The recorded rotor of a reference artifact ([rotor]).

Key What it sets Unit or values Accepted by Command
radius_m Rotor radius. a number, > 0.0, optional
hub_radius_m Hub radius. a number, >= 0.0, optional
n_blades The RESOLVED blade count of the mesh a row opens, not the physical one: a periodic sector meshing one blade states 1 and the row's symmetry supplies the wheel. an integer, >= 1, required
pitch_deg Recorded installation angles; read by nothing in the package. a number, optional
toe_deg Recorded installation angles; read by nothing in the package. a number, optional
position The rotor position, the one field of this block a builder reads: the two unsteady run types turn it into the rotor's hub frame (PFS-2030.03), the frame the reference probe lines and rotor plots are defined in and the frame a rotor row turns about unless it states ROTOR_ORIGIN. a table; see [rotor.position] below

[rotor.position]

One point in the simulation geometry reference frame, meters.

Key What it sets Unit or values Accepted by Command
kind What the point is, rotor or airframe (PFS-2029.11.02), stated so that a motion built on it is a decision the file shows and not a side effect of the name's radical; None leaves the convention to say (ERP is a rotor, ARP the airframe). text, optional
x_m X coordinate in m. a number, default 0.0
y_m Y coordinate in m. a number, default 0.0
z_m Z coordinate in m. a number, default 0.0

[[frames]]

One custom coordinate system the reference's [[frames]] defines (PFS-2034.01, FR-72).

Reaches CREATE_NEW_COORDINATE_SYSTEM.

Key What it sets Unit or values Accepted by Command
name The frame's name, which a row's AXIS and a pproc entry's frame cite. text, required
origin The frame's origin, in the geometry's own frame, in metres. 3 numbers, required
x_axis The direction of the frame's first axis. 3 numbers, default [1.0, 0.0, 0.0]
y_axis The direction of the frame's second axis; the third is their right-handed cross product. 3 numbers, default [0.0, 1.0, 0.0]

[<NAME>] with kind = "rotor"

One rotor, declared as one block of the reference artifact (FR-60).

Key What it sets Unit or values Accepted by Command
alias The word a row moves. text, required
axis The axis it turns about. text or 3 numbers or a list of numbers, required
diameter_m The length an ADVANCE_RATIO resolves against, PER ROTOR: one ratio written once in the flight condition gives each rotor a speed of its own (FR-63). a number, > 0.0, required
families_blades One entry per blade, in order. a list of names, required
x_m The hub, in the geometry's own frame. a number, default 0.0
y_m The hub, in the geometry's own frame. a number, default 0.0
z_m The hub, in the geometry's own frame. a number, default 0.0
rpm_sign +1 is the right-hand rule about axis, which is the one reading that does not depend on where the reader stands. an integer, default 1
families_general What turns with the rotor and is NOT a blade, the spinner and the hub. a list of names
blade1 Where blade one sits, and the axis its azimuth is measured from. a table; see [<NAME>.blade1] below
kind "rotor", which is what makes a top-level table of the reference a rotor block. text, default "rotor"

[<NAME>.blade1]

Where blade one sits, and the axis its azimuth is measured from (FR-60).

Key What it sets Unit or values Accepted by Command
azimuth_deg Where blade one is, measured from zero about the rotor's axis. a number, default 0.0
zero The axis letter the azimuth is measured from, with at most one sign. text, default "X"

[<NAME>] with kind = "actuator"

One actuator disc, declared as one block of the reference artifact (G06).

Key What it sets Unit or values Accepted by Command
kind "actuator", which is what makes a top-level table of the reference an actuator disc. "actuator", default "actuator"
frame The frame the disc's axis belongs to: a name the reference's [[frames]] declares, MRP, or a rotor's frame. text, required
axis The frame's axis the disc turns about. "X" or "Y" or "Z", required SET_ACTUATOR_AXIS
offset_m The disc's position along that axis, from the frame's origin. a number, default 0.0
tip_radius_m The disc's outer radius. a number, > 0.0, required SET_ACTUATOR_RADIUS
hub_radius_m The disc's inner radius, 0 <= hub < tip. a number, >= 0.0, required SET_ACTUATOR_RADIUS
rpm_sign +1 is the right-hand rule about axis, as a rotor block's; the row's ACTUATOR_RPM is a magnitude and this is its hand. an integer, default 1
blades The blade count a profile file's distribution is read per; required by a row stating PROFILE. an integer, >= 1, optional
swirl The fraction, 0 to 1, of the swirl velocity kept downstream (SET_PROP_ACTUATOR_SWIRL); unstated, no swirl command is emitted. a number, >= 0.0, <= 1.0, optional SET_PROP_ACTUATOR_SWIRL
profile_units The force unit a profile file is written in, as the command database spells SET_PROP_ACTUATOR_PROFILE's units_type. "NEWTONS" or "KILO-NEWTONS" or "POUND-FORCE" or "KILOGRAM-FORCE", default "NEWTONS" SET_PROP_ACTUATOR_PROFILE

[<NAME>] with any other kind

One point in the simulation geometry reference frame, meters.

Key What it sets Unit or values Accepted by Command
kind What the point is, rotor or airframe (PFS-2029.11.02), stated so that a motion built on it is a decision the file shows and not a side effect of the name's radical; None leaves the convention to say (ERP is a rotor, ARP the airframe). text, optional
x_m X coordinate in m. a number, default 0.0
y_m Y coordinate in m. a number, default 0.0
z_m Z coordinate in m. a number, default 0.0

The geometry sidecar, inputs/geometries/<stem>.boundaries.toml

The file beside a geometry that names its boundaries and, for a raw mesh (.obj, .stl), how it is imported and where its trailing edges are.

Top-level keys and tables

Beside a saved simulation, pyfs-matrix inventory writes it; beside an OBJ with none, the plan writes its boundaries from the OBJ's groups; beside an STL, it is written by hand.

Key What it sets Unit or values Accepted by Command
boundaries The mesh's boundary names in the solver's order, the name at position i being boundary i; read from a saved simulation by pyfs-matrix inventory, read from an OBJ's groups by the plan when it has no sidecar, written by hand for an STL. a list of names
file The file the inventory was read from, as pyfs-matrix inventory writes it; nothing reads it back. a file name
import How a raw mesh is imported: the unit it is written in and the operations applied right after. a table; see [import] below IMPORT
trailing_edges How a raw mesh's trailing edges are marked, which every raw mesh a workflow imports declares. a table; see [trailing_edges] below IMPORT_WAKE_EDGES_FROM_FILE, AUTO_DETECT_TRAILING_EDGES, DETECT_TRAILING_EDGES_BY_SURFACE
wake_termination Detects a raw mesh's wake-termination nodes, only when written. a table; see [wake_termination] below AUTO_DETECT_WAKE_TERMINATION_NODES, DETECT_WAKE_TERMINATION_NODES_BY_SURFACE
base_regions Detects a raw mesh's base regions over the whole mesh, only when written. a table; see [base_regions] below AUTO_DETECT_BASE_REGIONS

[import]

How a raw mesh is imported: the [import] table of its sidecar (G01).

Reaches IMPORT.

Key What it sets Unit or values Accepted by Command
units The length unit the mesh file is written in; never assumed. text, required IMPORT
operations The mesh operations applied right after the import, in the order written. an array of tables; see [[import.operations]] below

[[import.operations]]

One mesh operation applied right after a raw mesh is imported (G03).

Key What it sets Unit or values Accepted by Command
op Which operation, and so which of the keys below it states. "scale" or "rename" or "mirror" or "translate" or "rotate", required SURFACE_SCALE, SURFACE_RENAME, SURFACE_MIRROR, TRANSLATE_SURFACE_IN_FRAME, ROTATE_SURFACE, SURFACE_ROTATE
surface The surface acted on, by the file's name or an earlier rename's; "all" for every surface, which a rename and a mirror do not take. text, default "all"
factors A scale's factor along each axis, each greater than zero. 3 numbers, optional
vector A translation's vector, in the [import] unit. 3 numbers, optional
axis The axis a rotation turns about. "X" or "Y" or "Z", optional
angle_deg The angle of a rotation, in degrees. a number, optional
plane The plane a mirror reflects in; the copy joins its source. "YZ" or "XZ" or "XY", optional
to A rename's new name, one word. text, optional

[trailing_edges]

How a raw mesh's trailing edges are marked, which every raw mesh a workflow imports declares.

Key What it sets Unit or values Accepted by Command
file The points file beside the sidecar holding the mid-point of every trailing-edge mesh edge, under a line naming their length unit; the default route. a file name builds 26.122, 26.123, 26.124 IMPORT_WAKE_EDGES_FROM_FILE
type The edge type every point of the file is given. text, default "STANDARD" builds 26.122, 26.123, 26.124 IMPORT_WAKE_EDGES_FROM_FILE
tolerance The distance within which an edge's mid-point counts as a point of the file. m, > 0, default 0.0001 builds 26.122, 26.123, 26.124 IMPORT_WAKE_EDGES_FROM_FILE
detect Marks the edges by the solver's detection instead of a file, over every surface or on the surfaces named. "auto", or a table; see detect = { ... } below AUTO_DETECT_TRAILING_EDGES, DETECT_TRAILING_EDGES_BY_SURFACE

detect = { ... } of [trailing_edges]

Detection on the surfaces named, the table form of detect.

Key What it sets Unit or values Accepted by Command
surfaces The surfaces to detect on, by the sidecar's names. a list of names, or "all" for every surface DETECT_TRAILING_EDGES_BY_SURFACE
sweep_angle The sweep angle set before the detection, only when stated. deg SET_TRAILING_EDGE_SWEEP_ANGLE

[wake_termination]

Detects a raw mesh's wake-termination nodes, only when written.

Key What it sets Unit or values Accepted by Command
detect Detects the wake-termination nodes over every surface, or on the surfaces named. "auto", or { surfaces = ["<name>"] } AUTO_DETECT_WAKE_TERMINATION_NODES, DETECT_WAKE_TERMINATION_NODES_BY_SURFACE

[base_regions]

Detects a raw mesh's base regions over the whole mesh, only when written.

Key What it sets Unit or values Accepted by Command
detect Detects the base regions over the whole mesh; a named boundary is the row's BASE_REGIONS key's. "auto" AUTO_DETECT_BASE_REGIONS