The output tuple contains many items. The post_process
function docstring lists them. The purpose of showing this function here is not for you to manually run the fuction or apply any advanced usage, but simply rather for you to see what the available outputs are, as several of them may apply to advanced usage cases.
DuctAPE.post_process
— Functionpost_process(
solver_options,
converged_states,
prepost_containers,
solve_container_caching,
solve_parameter_cache_vector,
solve_parameter_cache_dims,
operating_point,
reference_parameters,
boundary_layer_options,
A_bb_LU,
airfoils,
idmaps,
problem_dimensions,
multipoint_index;
write_outputs=options.write_outputs,
outfile=options.outfile,
checkoutfileexists=options.checkoutfileexists,
output_tuple_name=options.output_tuple_name,
verbose=options.verbose,
)
Post-process a converged nonlinear solve solution.
Arguments
solver_options::SolverOptionsType
: A SolverOptionsType object (also used for dispatch)converged_states::Vector{Float}
: the converged state variablesprepost_containers::NamedTuple
: the named tuple containing pre-allocated containers for the pre- and post-processing intermediate calculationssolve_container_cache::NamedTuple
: the cache and dimensions for intermediate values in the residual calculationsolve_parameter_cache_vector::Vector{Float}
: the applicably typed cache vector for the solve parameterssolve_parameter_cache_dims::NamedTuple
: the dimensions of the solver parametersoperating_point::OperatingPoint
: the operating point being analyzedreference_parameters::ReferenceParameters
: a ReferenceParameters objectBoundaryLayerOptions::BoundaryLayerOptions
: a BoundaryLayerOptions objectA_bb_LU::LinearAlgebra.LU
: LinearAlgebra LU factorization of the LHS matrixairfoils::Vector{AFType}
: A matrix of airfoil types associated with each of the blade elementsidmaps::NamedTuple
: A named tuple containing index mapping used in bookkeeping throughout solve and post-processproblem_dimensions::ProblemDimensions
: A ProblemDimensions object
Keyword Arguments
multipoint_index::Vector{Int}
: a one-dimensional vector containing the index of which multipoint analysis operating point is being analyzed.write_outputs=options.write_outputs::Vector{Bool}
: a vector with the same length as number of multipoints indicating if the outputs should be saved.outfile=options.outfile::Vector{String}
: a vector of file paths/names for where outputs should be writtencheckoutfileexists=options.checkoutfileexists::Bool
: a flag for whether existing files should be checked for or if blind overwriting is okay.output_tuple_name=options.output_tuple_name::Vector{String}
: the variable name(s) of the named tuple of outputs to be written.verbose::Bool=false
: flag to print verbose statements
Returns
outs::NamedTuple
: A named tuple containing all the output values including
bodies
panel_strengths
inviscid_thrust
viscous_drag
thrust_comp
total_thrust
induced_efficiency
cp_in
cp_out
cp_casing_in
cp_casing_out
casing_zpts
cp_nacelle_in
cp_nacelle_out
nacelle_zpts
cp_centerbody_in
cp_centerbody_out
centerbody_zpts
Vtot_in
Vtot_out
Vtot_prejump
vtot_body
vtot_jump
vtot_wake
vtot_rotors
Vtan_in
Vtan_out
vtan_casing_in
vtan_casing_out
vtan_nacelle_in
vtan_nacelle_out
vtan_centerbody_in
vtan_centerbody_out
boundary_layers
stagnation_indices
upper_initial_states
upper_solved_states
upper_solved_steps
lower_initial_states
lower_solved_states
lower_solved_steps
surface_length_upper
surface_length_lower
stag_point
split_ratio
separation_point_ratio_upper
separation_point_ratio_lower
cdc_upper
cdc_upper`cdc_lower
cdc_lower`vtdotpv
boundary_layer_functions_lower
boundary_layer_functions_upper
rotors
circulation
panel_strengths
efficiency
inviscid_thrust
inviscid_thrust_dist
viscous_thrust
viscous_thrust_dist
thrust
CT
inviscid_torque
inviscid_torque_dist
viscous_torque
viscous_torque_dist
torque
CQ
inviscid_power
inviscid_power_dist
viscous_power
viscous_power_dist
power
CP
cl
cd
alpha
beta1
blade_normal_force_per_unit_span
blade_tangential_force_per_unit_span
wake
panel_strengths
totals
thrust
torque
power
CT
CQ
CP
total_efficiency
ideal_efficiency
intermediate_solve_values
vz_rotor
vtheta_rotor
Cm_wake
reynolds
mach
Cz_rotor
Ctheta_rotor
Cmag_rotor
Gamma_tilde
H_tilde
deltaGamma2
deltaH
vz_wake
vr_wake
Cm_avg
reference_values
Vinf
Vref
Returning the Pre-process Objects
Sometimes, it may be desireable to return the pre-process objects, including:
panels
which is a named tuple containing the body, rotor, and wake panel objectsivb
which are the unit induced velocities on the body panelssolve_parameter_tuple
which contains all of the solver parametersblade_elements
which contains all of the blade element geometry and airfoil informationlinsys
which contains all the linear system objects for the panel methodidmaps
which contains all the index mapping used throughout the solve and post-process.
In this case, we can use the return_inputs
keyword argument when calling the analyze
function to return a named tuple containing those pre-process objects.
outs, ins, success_flag = dt.analyze(ducted_rotor, operating_point, reference_parameters; return_inputs=true)