pg_scale
Module Contents
Classes
Scale the Prandtl-Glauert transformed forces to get the physical forces |
|
Scale the wind frame coordinates to get the Prandtl-Glauert transformed |
- class pg_scale.ScaleFromPrandtlGlauert
Bases:
csdl.CustomExplicitOperationScale the Prandtl-Glauert transformed forces to get the physical forces Prandtl-Glauert transformed geometry.
- The inverse Prandtl-Glauert transformation for forces is defined as below:
F_x_wind = F_x_pg/B^4 F_y_wind = F_y_pg/B^3 F_z_wind = F_z_pg/B^3
where B = sqrt(1 - M^2).
- Parameters
- sec_forces_pg[nx-1, ny-1, 3]numpy array
Force vectors on each panel (lattice) in PG domain.
- Mfloat
Freestream Mach number.
- Returns
- sec_forces_w_frame[nx-1, ny-1, 3]numpy array
Force vectors on each panel (lattice) in wind frame.
- compute(inputs, outputs)
- compute_partials(inputs, partials)
- define()
- initialize()
- class pg_scale.ScaleToPrandtlGlauert
Bases:
csdl.CustomExplicitOperationScale the wind frame coordinates to get the Prandtl-Glauert transformed geometry.
- The Prandtl glauert transformation is defined as below:
Coordinates x_pg = x_wind y_pg = B*y_wind z_pg = B*z_wind
Normals n_x_pg = B*n_x_wind n_y_pg = n_y_wind n_z_pg = n_z_wind
Perturbation velocities v_x_pg = B^2*v_x_wind v_y_pg = B*v_y_wind v_z_pg = B*v_z_wind
where B = sqrt(1 - M^2). Note: The freestream velocity remains untransformed and therefore is not included in this component.
- Parameters
- def_mesh_w_frame[nx, ny, 3]numpy array
Array defining the nodal coordinates of the lifting surface in aero frame.
- bound_vecs_w_frame[num_eval_points, 3]numpy array
The vectors representing the bound vortices for each panel in the problem. This array contains points for all lifting surfaces in the problem.
- coll_pts_w_frame[num_eval_points, 3]numpy array
The xyz coordinates of the collocation points used in the VLM analysis. This array contains points for all lifting surfaces in the problem.
- force_pts_w_frame[num_eval_points, 3]numpy array
The xyz coordinates of the force points used in the VLM analysis. We evaluate the velocity of the air at these points to get the sectional forces acting on the panel. This includes both the freestream and the induced velocity acting at these points. This array contains points for all lifting surfaces in the problem.
- normals_w_frame[nx-1, ny-1, 3]numpy array
The normal vector for each panel in aero frame, computed as the cross of the two diagonals from the mesh points.
- rotational_velocities_w_frame[num_eval_points, 3]numpy array
The rotated freestream velocities at each evaluation point for all lifting surfaces. This array contains points for all lifting surfaces in the problem.
- Mfloat
Freestream Mach number.
- Returns
- def_mesh_pg[nx, ny, 3]numpy array
Array defining the nodal coordinates of the lifting surface in PG frame.
- bound_vecs_pg[num_eval_points, 3]numpy array
Bound points in PG frame.
- coll_pts_pg[num_eval_points, 3]numpy array
Collocation points in PG frame.
- force_pts_pg[num_eval_points, 3]numpy array
Force points in PG frame.
- normals_pg[nx-1, ny-1, 3]numpy array
The normal vector for each panel in PG frame.
- rotational_velocities_pg[num_eval_points, 3]numpy array
Velocity component at collocation points due to rotational velocity in PG frame.
- compute(inputs, outputs)
- compute_partials(inputs, partials)
- define()
- initialize()