RotationVolume#
- class RotationVolume[source]#
Bases:
_RotationVolumeBaseCreates a rotation volume mesh using cylindrical or axisymmetric body entities.
The mesh on
RotationVolumeis guaranteed to be concentric.The
RotationVolumeis designed to enclose other objects. It can’t intersect them, except with GeometryAI (use_geometry_AI=True), described below.With GeometryAI, the
RotationVolumecan cut through the geometry. Each surface that crosses its boundary is split there into a part inside the zone and a part outside it. The inside part rotates with the zone unless it is listed instationary_enclosed_entities. List every surface that lies inside or crosses the zone inenclosed_entities. The zone must be anAxisymmetricBodyor aCylinderwithoutinner_radius.Users can create a donut-shaped
RotationVolumeand put their stationary centerbody in the middle.This type of volume zone can be used to generate volume zones compatible with
Rotationmodel.Supports
CylinderandAxisymmetricBodyentities for defining the rotation volume geometry.
Note
For spherical sliding interfaces, use
RotationSphere.Note
The deprecated
RotationCylinderclass is maintained for backward compatibility but only acceptsCylinderentities. New code should useRotationVolume.Example
Using a Cylinder entity:
>>> fl.RotationVolume( ... name="RotationCylinder", ... spacing_axial=0.5*fl.u.m, ... spacing_circumferential=0.3*fl.u.m, ... spacing_radial=1.5*fl.u.m, ... entities=cylinder ... )
Using an AxisymmetricBody entity:
>>> fl.RotationVolume( ... name="RotationConeFrustum", ... spacing_axial=0.5*fl.u.m, ... spacing_circumferential=0.3*fl.u.m, ... spacing_radial=1.5*fl.u.m, ... entities=axisymmetric_body ... )
With enclosed entities:
>>> fl.RotationVolume( ... name="RotationVolume", ... spacing_axial=0.5*fl.u.m, ... spacing_circumferential=0.3*fl.u.m, ... spacing_radial=1.5*fl.u.m, ... entities=outer_cylinder, ... enclosed_entities=[inner_cylinder, surface] ... )
Attributes
- enclosed_entities: EntityList[Cylinder, Surface, MirroredSurface, GhostCircularPlane, AxisymmetricBody, Box, Sphere], optional#
Entities enclosed by
RotationVolume. Can beSurfaceand/or the half-body symmetry plane (farfield.symmetry_plane)and/or otherSphere- Default:
None
- stationary_enclosed_entities: EntityList[Surface, MirroredSurface], optional#
Surface entities included in enclosed_entities which should remain stationary (excluded from rotation).
- Default:
None
- entities: EntityList[Cylinder, AxisymmetricBody]#
- spacing_axial: Length.PositiveFloat64#
Spacing along the axial direction.
- spacing_radial: Length.PositiveFloat64#
Spacing along the radial direction.
- spacing_circumferential: Length.PositiveFloat64#
Spacing along the circumferential direction.
Methods
- classmethod remap_symmetric_to_user_name(value)#
Remap ‘symmetric’ ghost entity to user’s symmetry surface name for UDF backward compat.
- classmethod ensure_surface_existence(value)#
Ensure all boundaries will be present after mesher.