Acoustic Research Tool (ART)
v0.10

This is the common interface for all waveobjects passed between elements.
It was introduced to allow models to calculate their acoustic properties in a variety of different but compatible ways. By passing waves between elements one element can return its properties in the time domain, while the next element calculates its properties in the frequency domain. Some elements can return pressure matrices, others impedance matrices. The wave interface is supposed to provide a standardized way of communication between the elements and to convert waves to the type required by the next element. Wave objects can assume any form, but must specify conversion functions to other forms. If a conversion is not possible, the waveobject's conversion function should throw an error.
Public Member Functions  
virtual void  ImpedanceMatrix (ARTdataContainer *&out)=0 
This function must prepare the conversation of the waveobject to a singlemode impedance matrix.  
virtual void  MultiModeImpedanceMatrix (ARTdataContainer *&out)=0 
This function must prepare the conversion of the waveobject to a multimode impedance matrix of dimensions (Number of modes x Number of frequencies).  
virtual void  TransferMatrix (ARTdataContainer *&out)=0 
This function must prepare the conversion of the waveobject to a one dimensional complex transfer matrix.  
virtual void  MultiModeTransferMatrix (ARTdataContainer *&out)=0 
This function must prepare the conversion of the waveobject to a complex transfer matrix of dimensions (Number of modes x Number of frequencies).  
virtual void  PressureFlowMatrix (ARTdataContainer *&out)=0 
This function must prepare the conversion of the waveobject to a onedimensional complex pressure matrix.  
virtual void  MultimodePressureFlowMatrix (ARTdataContainer *&out)=0 
This function must prepare the conversion of the waveobject to a complex pressure matrix of dimensions modes X modes.  
virtual void  PressureImpulse (ARTdataContainer *&out)=0 
This function must prepare the conversion of the waveobject to an impulse representing a pressure wave in the time domain. 

pure virtual 
This function must prepare the conversation of the waveobject to a singlemode impedance matrix.
out  the data container the output is written to 
Implemented in WaveObjectMMImpedance.

pure virtual 
This function must prepare the conversion of the waveobject to a multimode impedance matrix of dimensions (Number of modes x Number of frequencies).
out  the data container the output is written to 
Implemented in WaveObjectMMImpedance.

pure virtual 
This function must prepare the conversion of the waveobject to a complex pressure matrix of dimensions modes X modes.
out  the data container the output is written to 
Implemented in WaveObjectMMImpedance.

pure virtual 
This function must prepare the conversion of the waveobject to a complex transfer matrix of dimensions (Number of modes x Number of frequencies).
out  the data container the output is written to 
Implemented in WaveObjectMMImpedance.

pure virtual 
This function must prepare the conversion of the waveobject to a onedimensional complex pressure matrix.
out  the data container the output is written to 
Implemented in WaveObjectMMImpedance.

pure virtual 
This function must prepare the conversion of the waveobject to an impulse representing a pressure wave in the time domain.
out  the data container the output is written to 
Implemented in WaveObjectMMImpedance.

pure virtual 
This function must prepare the conversion of the waveobject to a one dimensional complex transfer matrix.
out  the data container the output is written to 
Implemented in WaveObjectMMImpedance.