pyva.coupling.junctions.Junction
- class pyva.coupling.junctions.Junction(systems)
Bases:
object
Abstract base class for all Junction classes
Junction handle a specific set of dofs similar to the dynamix DOFS, but the space direction and rotation DOFs are replaced by wave field DOFs for example logitudinal, shear and bending wave fields
The DOF class used the DOF.ID for the identification of the system and the wave_dof for the wave field that is considered as reverberant field
- systems
of systems
- Type:
list or tupel
- __init__(systems)
Class contructor for junction
- Parameters:
systems (tupel or list) – systems connected by the junction
- Return type:
None.
Methods
__init__
(systems)Class contructor for junction
get_wave_DOF
([ix])Provides the local wave DOFs of the junction
index
(ID)Determines index of ID in system list of junction
junction_matrix
(omega)Create empty junction matrix for further calculation in daughter classes
modal_density
(omega)Provides modal density
Attributes
Number of connected physical SEA systems (not wave_fields)
Number of wave fields
Provides 'excitation' DOFs of junction SEA matrix
Provides input wave dofs of junction for upper triangular input matrix
Provides output wave dofs of junction for upper triangular input matrix
Provides 'response' DOFs of junction SEA matrix
- property N
Number of connected physical SEA systems (not wave_fields)
- Returns:
number of systems
- Return type:
int
- property N_wave
Number of wave fields
- Returns:
Number of wave fields
- Return type:
int
- property exc_DOF
Provides ‘excitation’ DOFs of junction SEA matrix
The ‘excitation’ and response DOFs are equal in terms of ID and wave_dof but use ‘power’ as physical input
- Returns:
excitation DOFs of junction SEA matrix
- Return type:
- get_wave_DOF(ix=slice(None, None, None))
Provides the local wave DOFs of the junction
- Returns:
dofs of junction, list of systems
- Return type:
DOF,sys_list
- property in_dofs
Provides input wave dofs of junction for upper triangular input matrix
These DOFs are requiered to determine the column index of the upper triangular components in the global SEA matrix.
For example a plate - cavity junction has wave dofs [ ID=1,dof=3 ; 1,5 ; 2,0 ]
The full of diag CLF in the SEA matrix are
The column dofs would be : [ 1,5 ; 2,0 ; 2,0]
See also
- Returns:
wave_DOF of column.
- Return type:
- index(ID)
Determines index of ID in system list of junction
- Parameters:
ID (int) – System ID
- Returns:
index of ID in system list (-1) if not found
- Return type:
int
- junction_matrix(omega)
Create empty junction matrix for further calculation in daughter classes
- Parameters:
omega (float or ndarray) – angular frequency.
- Returns:
Empty junction matrix with correct in- and out-DOFs
- Return type:
- modal_density(omega)
Provides modal density
Calculates the modal density for all connected wavefields of the junction.
- Parameters:
omega (ndarray) – angular frequency.
- Returns:
res – modal density.
- Return type:
ndarray of dimension N_wave x size(omega)
- property out_dofs
Provides output wave dofs of junction for upper triangular input matrix
These DOFs are requiered to determine the row index of the upper triangular components in the global SEA matrix.
For example a plate - cavity junction has wave dofs [ 1,3 ; 1,5 ; 2,0 ]
The full of diag CLF in the SEA matrix are
The column dofs would be : [ 1,3 ; 1,3 ; 1,5]
See also
- Returns:
wave_DOF of rows.
- Return type: