ccblade.CCBlade.evaluate

CCBlade.evaluate(Uinf, Omega, pitch, coefficients=False)[source]

Run the aerodynamic analysis at the specified conditions. Parameters ———- Uinf : array_like (m/s)

hub height wind speed
Omega : array_like (RPM)
rotor rotation speed
pitch : array_like (deg)
blade pitch setting
coefficient : bool, optional
if True, results are returned in nondimensional form
P or CP : ndarray (W)
power or power coefficient
T or CT : ndarray (N)
thrust or thrust coefficient (magnitude)
Q or CQ : ndarray (N*m)
torque or torque coefficient (magnitude)
dP or dCP : dictionary of arrays (present only if derivatives==True)
derivatives of power or power coefficient. Each item in dictionary is a Jacobian. The array sizes and keys are below npts is the number of conditions (len(Uinf)), n = number of stations along blade (len(r)) npts x 1: ‘dprecone’, ‘dtilt’, ‘dhubHt’, ‘dRhub’, ‘dRtip’, ‘dprecurveTip’, ‘dpresweepTip’, ‘dyaw’ npts x npts: ‘dUinf’, ‘dOmega’, ‘dpitch’ npts x n: ‘dr’, ‘dchord’, ‘dtheta’, ‘dprecurve’, ‘dpresweep’ for example dP_dr = dP[‘dr’] (where dP_dr is an npts x n array) and dP_dr[i, j] = dP_i / dr_j
dT or dCT : dictionary of arrays (present only if derivatives==True)
derivative of thrust or thrust coefficient. Same format as dP and dCP
dQ or dCQ : dictionary of arrays (present only if derivatives==True)
derivative of torque or torque coefficient. Same format as dP and dCP

CP = P / (q * Uinf * A) CT = T / (q * A) CQ = Q / (q * A * R) The rotor radius R, may not actually be Rtip if precone and precurve are both nonzero R = Rtip*cos(precone) + precurveTip*sin(precone)