AeroAcousticOutput#

class AeroAcousticOutput[source]#

Bases: Flow360BaseModel

AeroAcousticOutput class for aeroacoustic output settings.

Example

>>> fl.AeroAcousticOutput(
...     observers=[
...         fl.Observer(position=[1.0, 0.0, 1.75] * fl.u.m, group_name="1"),
...         fl.Observer(position=[0.2, 0.3, 1.725] * fl.u.m, group_name="1"),
...     ],
... )

If using permeable surfaces:

>>> fl.AeroAcousticOutput(
...     observers=[
...         fl.Observer(position=[1.0, 0.0, 1.75] * fl.u.m, group_name="1"),
...         fl.Observer(position=[0.2, 0.3, 1.725] * fl.u.m, group_name="1"),
...     ],
...     patch_type="permeable",
...     permeable_surfaces=[volume_mesh["inner/interface*"]]
... )

Attributes

name: str, optional#

Name of the AeroAcousticOutput.

Default:

'Aeroacoustic output'

patch_type: Literal['solid', 'permeable']#

Type of aeroacoustic simulation to perform. solid uses solid walls to compute the aeroacoustic solution. permeable uses surfaces embedded in the volumetric domain as aeroacoustic solver input.

Default:

'solid'

permeable_surfaces: EntityList[Surface, GhostSurface, GhostCircularPlane, GhostSphere, WindTunnelGhostSurface], optional#

List of permeable surfaces. Left empty if patch_type is solid

Default:

None

observers: list[flow360_schema.models.simulation.outputs.outputs.Observer]#

A List of Observer objects specifying each observer’s position and group name.

write_per_surface_output: bool#

Enable writing of aeroacoustic results on a per-surface basis, in addition to results for all wall surfaces combined.

Default:

False

observer_time_step_size: Any, optional#

Time step size for aeroacoustic output. A valid value is smaller than or equal to the time step size of the CFD simulation. Defaults to time step size of CFD.

Default:

None

aeroacoustic_solver_start_time: Any#

Time to start the aeroacoustic solver. Signals emitted after this start time at the source surfaces are included in the output.

Default:

0 * fl.u.s

force_clean_start: bool#

Force a clean start when an aeroacoustic case is forked.

Default:

False

Methods

classmethod validate_observer_has_same_unit(input_value)[source]#

All observer location should have the same length unit. This is because UI has single toggle for all coordinates.

check_consistent_patch_type_and_permeable_surfaces()[source]#

Check if permeable_surfaces is None when patch_type is solid.

classmethod ensure_surface_existence(value)[source]#

Ensure all boundaries will be present after mesher