72 #ifndef targetCoeffTrim_H
73 #define targetCoeffTrim_H
128 template<
class RhoFieldType>
131 const RhoFieldType&
rho,
138 template<
class RhoFieldType>
141 const RhoFieldType&
rho,
Generic GeometricField class.
A list of keyword definitions, which are a keyword followed by any number of values (e....
Cell based momentum source which approximates the mean effects of rotor forces on a cylindrical regio...
Target trim forces/coefficients.
label nIter_
Maximum number of iterations in trim routine.
label calcFrequency_
Number of iterations between calls to 'correct'.
virtual ~targetCoeffTrim()
Destructor.
virtual tmp< scalarField > thetag() const
Return the geometric angle of attack [rad].
vector theta_
Pitch angles (collective, roll, pitch) [rad].
vector target_
Target coefficient vector (thrust force, roll moment, pitch moment)
targetCoeffTrim(const fv::rotorDisk &rotor, const dictionary &dict)
Constructor.
scalar dTheta_
Perturbation angle used to determine jacobian.
void read(const dictionary &dict)
Read.
TypeName("targetCoeffTrim")
Run-time type information.
bool useCoeffs_
Flag to indicate whether to solve coeffs (true) or forces (false)
scalar relax_
Under-relaxation coefficient.
scalar alpha_
Coefficient to allow for conversion between US and EU definitions.
virtual void correct(const vectorField &U, vectorField &force) const
Correct the model.
void correctTrim(const RhoFieldType &rho, const vectorField &U, vectorField &force) const
Correct the model.
scalar tol_
Convergence tolerance.
vector calcCoeffs(const RhoFieldType &rho, const vectorField &U, const scalarField &alphag, vectorField &force) const
Calculate the rotor force and moment coefficients vector.
A class for managing temporary objects.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.