edg_acoustics.initial_condition

This module provides initial condition functionalities for the edg_acoustics package.

The current version of edg_acoustics.initial_condition provides monopole source initial condition.

Module Contents

Classes

InitialCondition

Setup initial condition of a DG acoustics simulation for a specific scenario.

Monopole_IC

Setup a monopole source for a specific scenario.

class edg_acoustics.initial_condition.InitialCondition[source]

Bases: abc.ABC

Setup initial condition of a DG acoustics simulation for a specific scenario.

InitialCondition is used to setup initial condition.

abstract Pinit(xyz)[source]

Setup initial condition for pressure.

Parameters:

xyz (numpy.ndarray)

abstract VXinit(xyz)[source]

Setup initial condition for velocity in x-direction.

Parameters:

xyz (numpy.ndarray)

abstract VYinit(xyz)[source]

Setup initial condition for velocity in y-direction.

Parameters:

xyz (numpy.ndarray)

abstract VZinit(xyz)[source]

Setup initial condition for velocity in z-direction.

Parameters:

xyz (numpy.ndarray)

class edg_acoustics.initial_condition.Monopole_IC(source_xyz, frequency)[source]

Bases: InitialCondition

Setup a monopole source for a specific scenario.

Monopole_IC is used to setup monopple source initial condition.

Parameters:
source_xyz

an (3,) array containing the physical coordinates of the monopole source.

Type:

numpy.ndarray

halfwidth

half-bandwidth of the initial Gaussian pulse.

Type:

float

static solve_halfwidth(frequency)[source]

Solve halfwidth of the initial Gaussian pulse, given a frequency, using linear interpolation. Avoids root choosing issue with analytical spectra of Gaussian pulse.

Parameters:

frequency (float) – frequency of the monopole source.

Returns:

halfwidth (float) – halfwidth of the initial Gaussian pulse.

Pinit(xyz)[source]

Setup initial condition for pressure.

Parameters:

xyz (numpy.ndarray)

VXinit(xyz)[source]

Setup initial condition for velocity in x-direction.

Parameters:

xyz (numpy.ndarray)

VYinit(xyz)[source]

Setup initial condition for velocity in y-direction.

Parameters:

xyz (numpy.ndarray)

VZinit(xyz)[source]

Setup initial condition for velocity in z-direction.

Parameters:

xyz (numpy.ndarray)