Box#

A box is a rectangular prism defined by its center point and size (dimensions). Boxes can be oriented in three-dimensional space using one of two transformation methods.

Available Options#

Option

Description

Applicable

Name

Identifier for the box

always

Center

Three-dimensional coordinates of the center point

always

Size

Dimensions of the box (length, width, height)

always

Transform methods

Method of defining the box orientation

always

Axes

Two orthogonal vectors defining orientation

Transform methods is Principal Axes

Axis of rotation

Rotation axis vector

Transform methods is Axis & Angle

Angle of rotation

Rotation angle around the axis

Transform methods is Axis & Angle

Detailed Descriptions#

Name#

Identifier for the box volume entity.

  • Required

Note: Names are not required to be unique, but using descriptive unique names is recommended for clarity.

Center#

Three-dimensional coordinates (X, Y, Z) defining the center point of the box.

  • Required

  • Units: Length

Size#

Three-dimensional dimensions (length, width, height) of the box along its principal axes.

  • Required

  • Units: Length

Note: The size corresponds to the full extent along each axis, not half-lengths.


Transform methods#

Boxes can be oriented in three-dimensional space using one of two methods:

Axes#

Defines the box orientation using two orthogonal vectors.

  • Required (when using this method)

Notes:

  • The two axes must be orthogonal (perpendicular) to each other

  • First axis (row 1) defines the primary direction (aligns with size X)

  • Second axis (row 2) defines the secondary direction (aligns with size Y)

  • Third axis is automatically computed to complete the right-handed coordinate system

Axis & Angle#

Defines the box orientation using a rotation axis and angle from the default orientation.

Axis of rotation#

The axis vector (X, Y, Z) around which the box is rotated.

  • Default: (0, 0, 1)

Note: The axis is normalized internally.

Angle of rotation#

The angle of rotation around the specified axis.

  • Default: 0 degrees

  • Units: Angle

Note: Positive angles follow the right-hand rule around the rotation axis.


💡 Tips

  • Use boxes for rectangular refinement zones in wakes or regions of interest

  • Align the box with the expected flow direction for wake capture

  • For rotated boxes, the Principal Axes method provides more intuitive control

  • Consider using multiple overlapping boxes for complex L-shaped or T-shaped regions


❓ Frequently Asked Questions

  • What happens if I don’t specify orientation?

    The box will align with the global coordinate system axes (no rotation).

  • Can I resize a box after creation?

    Yes, you can modify the size parameters at any time before meshing.

  • How do the axes relate to the size dimensions?

    The first axis corresponds to size[0], the second axis to size[1], and the computed third axis to size[2].


🐍 Python Example Usage

import flow360 as fl

# Box using axis and angle rotation
box = fl.Box(
    name="wake_region",
    center=(2, 0, 0) * fl.u.m,
    size=(4, 1, 1) * fl.u.m,
    axis_of_rotation=(0, 1, 0),
    angle_of_rotation=15 * fl.u.deg
)

# Box using principal axes
box_axes = fl.Box.from_principal_axes(
    name="refinement_box",
    center=(0, 0, 0) * fl.u.m,
    size=(2, 1, 0.5) * fl.u.m,
    axes=[(1, 0, 0), (0, 1, 0)]
)