Axisymmetric volume#
An axisymmetric volume (body of revolution) is a three-dimensional volume entity defined by rotating a 2D profile curve around a central axis. This allows creation of complex axisymmetric shapes like cone frustums, nacelles, or spinners that cannot be represented by simple cylinders.
Available Options#
Option |
Description |
Applicable |
|---|---|---|
Identifier for the axisymmetric volume |
always |
|
Three-dimensional coordinates of the center point |
always |
|
Direction vector defining the axis of revolution |
always |
|
Table of (Axial position, Radial position) points |
always |
Detailed Descriptions#
Name#
Identifier for the axisymmetric volume entity.
Required
Note: Names are not required to be unique, but using descriptive unique names is recommended.
Center#
Three-dimensional coordinates (X, Y, Z) defining the reference point for the axisymmetric body. The coordinates defined in the curve are relative to this point and the body axis passes through it.
Required
Units: Length
Note: The profile curve’s axial positions are measured relative to this center point along the axis direction.
Axis#
Direction vector defining the axis of revolution.
Required
Units: Dimensionless (direction vector)
Notes:
The vector is normalized internally
The profile curve is revolved 360° around this axis
Axial positions in the profile curve are measured along this direction
The axis passes through the center point
Profile Curve#
A table of (Axial position, Radial position) coordinate pairs that define the 2D profile to be revolved.
Required
Units: Length (for both axial and radial values)
Notes:
The first point must have radial position = 0 (starts on the axis)
The last point must have radial position = 0 (ends on the axis)
Intermediate points must have radial position ≥ 0
Axial positions are defined in reference to the center point
Points are connected in order to form the profile polyline
Add points using the
+button; reorder using drag handlesAvoid sharp angles in the profile curve as they may affect the volume mesher robustness
💡 Tips
Use axisymmetric volumes for nacelles, spinners, or cone frustum shapes
The profile curve must start and end on the axis (radial = 0) to create a closed volume
Add more points to the profile curve for smoother curved shapes
The preview graph shows your profile curve for visual verification
For simple cylindrical shapes, consider using the Cylinder primitive instead
❓ Frequently Asked Questions
Why must the first and last points have radial position = 0?
The volume must be closed at both ends. Points on the axis (radial = 0) ensure the revolved shape forms a complete solid without holes at the ends.
How do I create a cone frustum?
Define four points: (0, 0), (0, r1), (h, r2), (h, 0) where r1 and r2 are the two radii and h is the height.
Can I create a sphere using axisymmetric volume?
Yes, by defining a semicircular profile curve from (−r, 0) through (0, r) to (r, 0).
What’s the difference between this and a Cylinder?
Cylinders have constant radius along their height. Axisymmetric volumes can have varying radius defined by the profile curve, enabling complex shapes.
🐍 Python Example Usage
import flow360 as fl
# Cone frustum (truncated cone)
cone_frustum = fl.AxisymmetricBody(
name="nacelle_zone",
center=(0, 0, 0) * fl.u.m,
axis=(1, 0, 0),
profile_curve=[
(0, 0) * fl.u.m, # Start on axis
(0, 0.5) * fl.u.m, # Front radius
(2, 0.8) * fl.u.m, # Rear radius (larger)
(2, 0) * fl.u.m # End on axis
]
)
# Spinner shape (pointed front, cylindrical rear)
spinner = fl.AxisymmetricBody(
name="spinner_zone",
center=(0, 0, 0) * fl.u.inch,
axis=(0, 0, 1),
profile_curve=[
(-1, 0) * fl.u.inch, # Pointed tip
(-0.5, 0.3) * fl.u.inch,
(0, 0.5) * fl.u.inch,
(1, 0.5) * fl.u.inch, # Cylindrical section
(1, 0) * fl.u.inch # End on axis
]
)