World Ocean Simulation System (WOSS) library
|
Transducer class. More...
#include <transducer-definitions.h>
Public Member Functions | |
Transducer (long double beam_precision=BEAM_PATTERN_CUSTOM_BEAM_PRECISION, long double conduct_precison=CONDUCTANCE_CUSTOM_FREQUENCY_PRECISION, long double tvr_precision=TVR_CUSTOM_FREQUENCY_PRECISION, long double ocv_precision=OCV_CUSTOM_FREQUENCY_PRECISION) | |
Transducer (const Transducer ©) | |
Transducer (BeamPowerMap &beam_map, ConductanceMap &conductance_map, TVRMap &tvr_map, OCVMap &ocv_map) | |
virtual Transducer * | create (long double beam_precision=BEAM_PATTERN_CUSTOM_BEAM_PRECISION, long double conduct_precison=CONDUCTANCE_CUSTOM_FREQUENCY_PRECISION, long double tvr_precision=TVR_CUSTOM_FREQUENCY_PRECISION, long double ocv_precision=OCV_CUSTOM_FREQUENCY_PRECISION) const |
virtual Transducer * | create (BeamPowerMap &beam_map, ConductanceMap &conductance_map, TVRMap &tvr_map, OCVMap &ocv_map) const |
virtual Transducer * | create (const Transducer ©) const |
virtual Transducer * | clone () const |
virtual bool | isValid () const |
Transducer & | beampattern_rotate (double angle) |
Transducer & | beampattern_sum (double value) |
Transducer & | beampattern_multiply (double value) |
virtual double | getSPL (double frequency, double power) const |
double | getMaxSPL (double frequency) const |
virtual double | getPowerFromSPL (double frequency, double spl) const |
bool | beampattern_insert (double angle, double power) |
Transducer & | beampattern_replace (double angle, double power) |
BPMCIter | beampattern_find (double angle) const |
Transducer & | beampattern_erase (double angle) |
int | beampattern_size () const |
bool | beampattern_empty () const |
Transducer & | beampattern_clear () |
BPMCIter | beampattern_begin () const |
BPMCIter | beampattern_end () const |
BPMCRIter | beampattern_rbegin () const |
BPMCRIter | beampattern_rend () const |
BPMCIter | beampattern_lower_bound (double angle) const |
BPMCIter | beampattern_upper_bound (double angle) const |
bool | conductance_insert (double frequency, double conductance) |
bool | conductance_insert (double frequency, const ::std::complex< double > &impedance) |
Transducer & | conductance_replace (double frequency, double conductance) |
Transducer & | conductance_replace (double frequency, const ::std::complex< double > &impedance) |
CMCIter | conductance_find (double frequency) const |
Transducer & | conductance_erase (double frequency) |
int | conductance_size () const |
bool | conductance_empty () const |
Transducer & | conductance_clear () |
CMCIter | conductance_begin () const |
CMCIter | conductance_end () const |
CMCRIter | conductance_rbegin () const |
CMCRIter | conductance_rend () const |
CMCIter | conductance_lower_bound (double frequency) const |
CMCIter | conductance_upper_bound (double frequency) const |
bool | tvr_insert (double frequency, double tvr) |
Transducer & | tvr_replace (double frequency, double tvr) |
TVRMCIter | tvr_find (double frequency) const |
Transducer & | tvr_erase (double frequency) |
int | tvr_size () const |
bool | tvr_empty () const |
Transducer & | tvr_clear () |
TVRMCIter | tvr_begin () const |
TVRMCIter | tvr_end () const |
TVRMCRIter | tvr_rbegin () const |
TVRMCRIter | tvr_rend () const |
TVRMCIter | tvr_lower_bound (double frequency) const |
TVRMCIter | tvr_upper_bound (double frequency) const |
bool | ocv_insert (double frequency, double ocv) |
Transducer & | ocv_replace (double frequency, double ocv) |
OCVMCIter | ocv_find (double frequency) const |
Transducer & | ocv_erase (double frequency) |
int | ocv_size () const |
bool | ocv_empty () const |
Transducer & | ocv_clear () |
OCVMCIter | ocv_begin () const |
OCVMCIter | ocv_end () const |
OCVMCRIter | ocv_rbegin () const |
OCVMCRIter | ocv_rend () const |
OCVMCIter | ocv_lower_bound (double frequency) const |
OCVMCIter | ocv_upper_bound (double frequency) const |
Transducer & | clearAll () |
virtual bool | import (::std::istream &stream_in) |
virtual bool | importBinary (::std::fstream &stream_in) |
bool | writeVertBeamPattern (::std::ostream &stream_out, const CoordZ &tx, const CoordZ &rx, double init_bearing, double vert_rot=0, double horiz_rot=0, double mult_costant=1, double add_costant=0) const |
bool | writeSPL (::std::ostream &stream_out, double frequency_step, double power) const |
virtual bool | write (::std::ostream &stream_out) const |
virtual bool | writeBinary (::std::fstream &file_out) const |
Transducer & | setMaxPower (double power) |
Transducer & | setDutyCycle (double cycle) |
Transducer & | setResonanceFrequency (double frequency) |
Transducer & | setBandwith3dB (double frequency) |
Transducer & | setTypeName (const ::std::string &name) |
virtual Transducer & | setBeamPrecision (long double prec) |
virtual Transducer & | setTVRPrecision (long double prec) |
virtual Transducer & | setOCVPrecision (long double prec) |
virtual Transducer & | setConductancePrecision (long double prec) |
bool | hasToroidalSymmetry () const |
bool | hasConicalSymmetry () const |
double | getMaxPower () const |
double | getDutyCycle () const |
double | getResonanceFrequency () const |
double | getBandwith3dB () const |
::std::string | getTypeName () const |
long double | getBeamPrecision () const |
long double | getTVRPrecision () const |
long double | getOCVPrecision () const |
long double | getConductancePrecision () const |
Transducer & | operator= (const Transducer &x) |
friend::std::ostream & | operator<< (::std::ostream &os, const Transducer &instance) |
friend::std::ostream & | operator>> (::std::istream &is, const Transducer &instance) |
Static Public Member Functions | |
static void | setDebug (bool flag) |
Protected Types | |
typedef ::std::map< PDouble, double > | BeamPowerMap |
typedef BeamPowerMap::iterator | BPMIter |
typedef BeamPowerMap::reverse_iterator | BPMRIter |
typedef BeamPowerMap::const_iterator | BPMCIter |
typedef BeamPowerMap::const_reverse_iterator | BPMCRIter |
typedef ::std::map< PDouble, double > | ConductanceMap |
typedef ConductanceMap::iterator | CMIter |
typedef ConductanceMap::reverse_iterator | CMRIter |
typedef ConductanceMap::const_iterator | CMCIter |
typedef ConductanceMap::const_reverse_iterator | CMCRIter |
typedef ::std::map< PDouble, double > | TVRMap |
typedef TVRMap::iterator | TVRMIter |
typedef TVRMap::reverse_iterator | TVRMRIter |
typedef TVRMap::const_iterator | TVRMCIter |
typedef TVRMap::const_reverse_iterator | TVRMCRIter |
typedef ::std::map< PDouble, double > | OCVMap |
typedef OCVMap::iterator | OCVMIter |
typedef OCVMap::reverse_iterator | OCVMRIter |
typedef OCVMap::const_iterator | OCVMCIter |
typedef OCVMap::const_reverse_iterator | OCVMCRIter |
Protected Member Functions | |
virtual double | normalizeAngle (double angle) const |
virtual double | getValue (double frequency, const ::std::map< PDouble, double > &map, long double precision, bool use_linear=false, double costant=20.0) const |
virtual void | beampattern_sum (double value, BeamPowerMap &map) |
virtual void | beampattern_multiply (double value, BeamPowerMap &map) |
virtual void | beampattern_rotate (double angle, BeamPowerMap &map) |
virtual bool | import (::std::istream &stream_in, ::std::map< PDouble, double > &map, long double precision, bool is_angle=false) |
virtual bool | importBinary (::std::fstream &file_in, ::std::map< PDouble, double > &map, long double precision, bool is_angle=false) |
virtual bool | write (::std::ostream &stream_out, const ::std::map< PDouble, double > &map) const |
virtual bool | writeBinary (::std::fstream &file_out, const ::std::map< PDouble, double > &map) const |
virtual const ::std::string & | getSymmetryString () const |
Protected Attributes | |
bool | has_conical_symmetry |
double | resonance_frequency |
double | bandwith_3db |
double | max_power |
double | duty_cycle |
long double | beam_precision |
long double | conductance_precision |
long double | tvr_precision |
long double | ocv_precision |
::std::string | type_name |
BeamPowerMap | beam_power_map |
ConductanceMap | conductance_map |
TVRMap | tvr_map |
OCVMap | ocv_map |
Static Protected Attributes | |
static const ::std::string | conical_string = "CONICAL" |
static const ::std::string | toroidal_string = "TOROIDAL" |
static bool | debug = false |
Friends | |
bool | operator== (const Transducer &left, const Transducer &right) |
bool | operator!= (const Transducer &left, const Transducer &right) |
Transducer class.
|
protected |
Map that links a angle with its precision to a signed power gain in decibel [db re uPa @ 1m]
|
protected |
Map that links a frequency with its precision to a conductance value [uS]
|
protected |
Map that links a frequency with its precision to an OCV value [db re 1V/uPa]
|
protected |
Map that links a frequency with its precision to a TVR value [db re uPa/V @ 1m]
Transducer::Transducer | ( | long double | beam_precision = BEAM_PATTERN_CUSTOM_BEAM_PRECISION , |
long double | conduct_precison = CONDUCTANCE_CUSTOM_FREQUENCY_PRECISION , |
||
long double | tvr_precision = TVR_CUSTOM_FREQUENCY_PRECISION , |
||
long double | ocv_precision = OCV_CUSTOM_FREQUENCY_PRECISION |
||
) |
Transducer default constructor. The object created is not valid
beam_precision | precision of woss::PDouble objects representing angles |
conduct_precison | precision of woss::PDouble objects representing frequency |
tvr_precision | precision of woss::PDouble objects representing frequency |
ocv_precision | precision of woss::PDouble objects representing frequency |
Transducer::Transducer | ( | const Transducer & | copy | ) |
Transducer copy constructor
copy | const reference a Transducer |
Transducer::Transducer | ( | BeamPowerMap & | beam_map, |
ConductanceMap & | conductance_map, | ||
TVRMap & | tvr_map, | ||
OCVMap & | ocv_map | ||
) |
Transducer constructor.
beam_map | map linking a woss::PDouble angle [dec degrees] (with precision beam_precision) to a signed power gain [decibel] |
conductance_map | map linking a woss::PDouble frequency [hz] (with precision conductance_precision) to conductance value |
tvr_map | map linking a woss::PDouble frequency [hz] (with precision tvr_precision) to a TVR value [db re 1 uPa/V @ 1m] |
ocv_map | map linking a woss::PDouble frequency [hz] (with precision ocv_precision) to a OCV value [db re 1V/uPa] |
References beam_power_map, beam_precision, conductance_map, conductance_precision, ocv_map, ocv_precision, tvr_map, and tvr_precision.
|
inline |
Returns a const iterator to the beginning of the beam pattern map
References beam_power_map.
|
inline |
|
inline |
Checks if the instance has stored values
References beam_power_map.
|
inline |
Returns a const iterator to the end of the beam pattern map
References beam_power_map.
|
inline |
Erase the power gain with key == of angle parameter
angle | const reference to a double angle value |
References beam_power_map.
|
inline |
Returns a const iterator to the signed power gain with key == of angle parameter
angle | const reference to a double angle value |
References beam_power_map.
|
inline |
Inserts and doesn't replace a signed power gain at given angle
angle | angle value [dec degrees]. The corresponding PDouble will take SSP::beam_precision as precision |
power | signed power gain [db re uPa] |
References beam_power_map, beam_precision, and normalizeAngle().
|
inline |
Returns a const iterator to the signed power gain with key >= of angle parameter
angle | angle [dec degrees] |
References beam_power_map, and beam_precision.
|
inline |
Multiplies the beam pattern by given value
value | value |
References beam_power_map, and beampattern_multiply().
Referenced by beampattern_multiply(), and writeVertBeamPattern().
|
protectedvirtual |
The current beam pattern is multiplied by given value
value | value |
|
inline |
Returns a const reverse iterator to the reverse beginning of the beam pattern map
References beam_power_map.
|
inline |
Returns a const reverse iterator to the reverse end of the beam pattern map
References beam_power_map.
|
inline |
Replaces a signed power gain at given angle
angle | angle value [dec degrees]. The corresponding PDouble will take SSP::beam_precision as precision |
power | signed power gain [db re uPa] |
References beam_power_map, beam_precision, and normalizeAngle().
|
inline |
Rotate the beam pattern
angle | angle [dec degrees] |
References beam_power_map, and beampattern_rotate().
Referenced by beampattern_rotate(), and writeVertBeamPattern().
|
protectedvirtual |
Rotates the current beam pattern of a given angle
value | angle [decimal degrees] |
References beam_precision, and normalizeAngle().
|
inline |
|
inline |
Adds given value to the beam pattern
value | sum costant |
References beam_power_map, and beampattern_sum().
Referenced by beampattern_sum(), and writeVertBeamPattern().
|
protectedvirtual |
Adds a value to the current beam pattern
value | value to be added |
|
inline |
Returns a const iterator to the signed power gain with key > of angle parameter
angle | angle [dec degrees] |
References beam_power_map, and beam_precision.
|
inline |
Clears all maps
References beam_power_map, conductance_map, ocv_map, and tvr_map.
|
virtual |
Transducer virtual factory method
Referenced by woss::TransducerHandler::importValueAscii(), woss::TransducerHandler::importValueBinary(), and woss::DefHandler::operator=().
|
inline |
Returns a const iterator to the beginning of the conductance map
References conductance_map.
|
inline |
|
inline |
Checks if the instance has stored conductance values
References conductance_map.
|
inline |
Returns a const iterator to the end of the conductance map
References conductance_map.
|
inline |
Erase the power gain with key == of angle parameter
frequency | frequency [hz] |
References conductance_map.
|
inline |
Returns a const iterator to the conductance with key == of frequency parameter
frequency | frequency [hz] |
References conductance_map.
|
inline |
Inserts and doesn't replace a complex impedance value at given frequency
angle | frequency [hz]. The corresponding PDouble will take Transducer::conductance_precision as precision |
conductance | complex impedance [uS + j uF] |
References conductance_map, and conductance_precision.
|
inline |
Inserts and doesn't replace a conductance value at given frequency
angle | frequency [hz]. The corresponding PDouble will take Transducer::conductance_precision as precision |
conductance | conductance value [uS] |
References conductance_map, and conductance_precision.
|
inline |
Returns a const iterator to the conductance with key >= of frequency parameter
frequency | frequency [hz] |
References conductance_map, and conductance_precision.
|
inline |
Returns a const reverse iterator to the reverse beginning of the conductance map
References conductance_map.
|
inline |
Returns a const reverse iterator to the reverse end of the conductance map
References conductance_map.
|
inline |
Replaces a conductance at given frequency
angle | frequency [hz]. The corresponding PDouble will take Transducer::conductance_precision as precision |
conductance | complex impedance [uS + j uF] |
References conductance_map, and conductance_precision.
|
inline |
Replaces a conductance at given frequency
angle | frequency [hz]. The corresponding PDouble will take Transducer::conductance_precision as precision |
conductance | conductance value [uS] |
References conductance_map, and conductance_precision.
|
inline |
Returns the number of frequencies stored
References conductance_map.
|
inline |
Returns a const iterator to the conductance with key > of frequency parameter
frequency | frequency [hz] |
References conductance_map, and conductance_precision.
|
virtual |
Transducer virtual factory method
beam_map | map linking a woss::PDouble angle [dec degrees] (with precision beam_precision) to a signed power gain [decibel] |
conductance_map | map linking a woss::PDouble frequency [hz] (with precision conductance_precision) to conductance value |
tvr_map | map linking a woss::PDouble frequency [hz] (with precision tvr_precision) to a TVR value [db re 1 uPa/V @ 1m] |
ocv_map | map linking a woss::PDouble frequency [hz] (with precision ocv_precision) to a OCV value [db re 1V/uPa] |
|
virtual |
Transducer virtual factory method
copy | Transducer to be copied |
|
virtual |
Transducer virtual factory method
beam_map | map linking a woss::PDouble angle [dec degrees] (with precision beam_precision) to a signed power gain [decibel] |
conductance_map | map linking a woss::PDouble frequency [hz] (with precision conductance_precision) to conductance value |
tvr_map | map linking a woss::PDouble frequency [hz] (with precision tvr_precision) to a TVR value [db re 1 uPa/V @ 1m] |
ocv_map | map linking a woss::PDouble frequency [hz] (with precision ocv_precision) to a OCV value [db re 1V/uPa] |
|
inline |
Returns the bandwith at -3db around the resonance frequency
References bandwith_3db.
|
inline |
Returns the beam pattern beam precision
References beam_precision.
|
inline |
|
inline |
|
inline |
|
inline |
Returns the max SPL (Sound Pressure Level) for given frequency
frequency | frequency [hz] |
References getSPL(), and max_power.
Referenced by WossMPhyBpsk::getTxPower().
|
inline |
|
virtual |
Returns the input power for given frequency and SPL
frequency | frequency [hz] |
spl | [db re uPa] |
References conductance_map, conductance_precision, debug, getValue(), max_power, tvr_map, and tvr_precision.
|
inline |
Returns the resonance frequency of the transducer
References resonance_frequency.
|
virtual |
Returns the SPL (Sound Pressure Level) for given frequency and input power
frequency | frequency [hz] |
power | input power [W] |
References conductance_map, conductance_precision, debug, getValue(), max_power, tvr_map, and tvr_precision.
Referenced by getMaxSPL(), and writeSPL().
|
inline |
|
inline |
|
protectedvirtual |
Returns a value for given frequency in the given map and with given precision.
frequency | frequency [decimal degrees] |
map | one of the transducer's map |
map | precision |
References debug, and tvr_map.
Referenced by getPowerFromSPL(), getSPL(), and writeVertBeamPattern().
|
virtual |
Imports values in from the given stream
stream_in | const reference to an istream instance |
Referenced by woss::TransducerHandler::importValueAscii().
|
protectedvirtual |
Imports values in the given map with given precision from the given stream
stream_in | const reference to an istream instance |
map | any of the transducer's map |
precision | map PDouble keys precision |
is_angle | flag to signal if the input map is a beam pattern map |
References debug, and normalizeAngle().
|
protectedvirtual |
Imports values in the given map with given precision from the given binary stream
stream_in | const reference to an istream instance |
map | any of the transducer's map |
precision | map PDouble keys precision |
is_angle | flag to signal if the input map is a beam pattern map |
References debug, and normalizeAngle().
|
virtual |
Imports values in from the given binary stream
stream_in | const reference to an istream instance |
Referenced by woss::TransducerHandler::importValueBinary().
|
virtual |
Checks the validity of the object
References bandwith_3db, beam_power_map, conductance_map, duty_cycle, max_power, ocv_map, resonance_frequency, and tvr_map.
Referenced by WossMPhyBpsk::getTxPower(), woss::BellhopWoss::writeCfgFiles(), and woss::BellhopWoss::writeRayOptions().
|
protectedvirtual |
Returns an angle in [-180.0 , 180.0]
angle | angle [decimal degrees] |
Referenced by beampattern_insert(), beampattern_replace(), beampattern_rotate(), import(), and importBinary().
|
inline |
|
inline |
|
inline |
Checks if the instance has any OCV stored values
References ocv_map.
|
inline |
|
inline |
Erase the OCV with key == of frequency parameter
frequency | frequency [hz] |
References ocv_map.
|
inline |
Returns a const iterator to the OCV with key == of frequency parameter
frequency | frequency [hz] |
References ocv_map.
|
inline |
Inserts and doesn't replace an OCV value at given frequency
frequency | frequency value [hz]. The corresponding PDouble will take Transducer::ocv_precision as precision |
ocv | OCV [db re 1V/uPa] |
References ocv_map, and ocv_precision.
|
inline |
Returns a const iterator to the OCV with key >= of frequency parameter
frequency | frequency [hz] |
References ocv_map, and ocv_precision.
|
inline |
Returns a const reverse iterator to the reverse beginning of the OCV map
References ocv_map.
|
inline |
Returns a const reverse iterator to the reverse end of the OCV map
References ocv_map.
|
inline |
Replaces an OCV value at given frequency
frequency | frequency value [hz]. The corresponding PDouble will take Transducer::ocv_precision as precision |
ocv | OCV [db re 1V/uPa] |
References ocv_map, and ocv_precision.
|
inline |
|
inline |
Returns a const iterator to the OCV with key > of frequency parameter
frequency | frequency [hz] |
References ocv_map, and ocv_precision.
friend::std::ostream & woss::Transducer::operator<< | ( | ::std::ostream & | os, |
const Transducer & | instance | ||
) |
<< operator
os | left operand ostream reference |
instance | right operand const Transducer reference |
Transducer & Transducer::operator= | ( | const Transducer & | x | ) |
Assignment operator
copy | const reference to a Transducer object to be copied |
References bandwith_3db, beam_power_map, beam_precision, conductance_map, conductance_precision, duty_cycle, has_conical_symmetry, max_power, ocv_map, ocv_precision, resonance_frequency, tvr_map, and tvr_precision.
friend::std::ostream & woss::Transducer::operator>> | ( | ::std::istream & | is, |
const Transducer & | instance | ||
) |
operator
os | left operand ostream reference |
instance | right operand const Transducer reference |
|
virtual |
Sets the beam pattern precision for all PDouble angle values. If the given precision is different from current value, the profile will be modified accordingly
prec | beam precision [decimal degrees] |
References beam_power_map, and beam_precision.
|
virtual |
Sets the conductance precision for all PDouble frequency values. If the given precision is different from current value, the profile will be modified accordingly
prec | frequency [hz] |
References conductance_map, and conductance_precision.
|
inlinestatic |
|
virtual |
Sets the OCV precision for all PDouble frequency values. If the given precision is different from current value, the profile will be modified accordingly
prec | frequency [hz] |
References beam_precision, and ocv_map.
|
virtual |
Sets the TVR precision for all PDouble frequency values. If the given precision is different from current value, the profile will be modified accordingly
prec | frequency [hz] |
References tvr_map, and tvr_precision.
|
inline |
|
inline |
|
inline |
Checks if the instance has any stored tvr values
References tvr_map.
|
inline |
|
inline |
Erase the tvr with key == to frequency parameter
frequency | frequency [hz] |
References tvr_map.
|
inline |
Returns a const iterator to the tvr with key == to frequency parameter
frequency | frequency [hz] |
References tvr_map.
|
inline |
Inserts and doesn't replace a tvr at given frequency
frequency | frequency value [hz]. The corresponding PDouble will take Transducer::tvr_precision as precision |
tvr | tvr [db re uPa/V @ 1m] |
References tvr_map, and tvr_precision.
|
inline |
Returns a const iterator to the signed power gain with key >= of frequency parameter
frequency | frequency [hz] |
References tvr_map, and tvr_precision.
|
inline |
Returns a const reverse iterator to the reverse beginning of the tvr map
References tvr_map.
|
inline |
Returns a const reverse iterator to the reverse end of the tvr map
References tvr_map.
|
inline |
Replaces a tvr at given frequency
frequency | frequency value [hz]. The corresponding PDouble will take Transducer::tvr_precision as precision |
tvr | tvr [db re uPa/V @ 1m] |
References tvr_map, and tvr_precision.
|
inline |
|
inline |
Returns a const iterator to the signed power gain with key > of frequency parameter
frequency | frequency [hz] |
References tvr_map, and tvr_precision.
|
virtual |
Write values out to the given stream
stream_out | const reference to an ostream instance |
References bandwith_3db, beam_power_map, beam_precision, conductance_map, conductance_precision, duty_cycle, max_power, ocv_map, ocv_precision, resonance_frequency, tvr_map, tvr_precision, type_name, and write().
Referenced by write(), and writeVertBeamPattern().
|
protectedvirtual |
Writes values in the given map with given precision to the given stream
stream_out | const reference to an ostream instance |
map | any of the transducer's map |
|
virtual |
Write values out to the given binary stream
stream_out | const reference to an ostream instance |
References bandwith_3db, beam_power_map, beam_precision, conductance_map, conductance_precision, duty_cycle, max_power, ocv_map, ocv_precision, resonance_frequency, tvr_map, tvr_precision, type_name, and writeBinary().
Referenced by writeBinary().
|
protectedvirtual |
Writes values in the given map with given precision to the given binary stream
stream_out | const reference to an ostream instance |
map | any of the transducer's map |
bool Transducer::writeSPL | ( | ::std::ostream & | stream_out, |
double | frequency_step, | ||
double | power | ||
) | const |
Write SPL values for all frequencies to the given steram
stream_out | const reference to an ostream instance |
References conductance_map, getSPL(), max_power, and tvr_map.
bool Transducer::writeVertBeamPattern | ( | ::std::ostream & | stream_out, |
const CoordZ & | tx, | ||
const CoordZ & | rx, | ||
double | init_bearing, | ||
double | vert_rot = 0 , |
||
double | horiz_rot = 0 , |
||
double | mult_costant = 1 , |
||
double | add_costant = 0 |
||
) | const |
Writes the beam pattern to the given stream
stream_out | const reference to an ostream instance |
rotation | beam pattern rotation [decimal degrees] |
mult_costant | value to be added |
add_costant | value to be multiplied by |
References beam_power_map, beam_precision, beampattern_multiply(), beampattern_rotate(), beampattern_sum(), debug, woss::CoordZ::getCartX(), woss::CoordZ::getCartY(), woss::CoordZ::getCartZ(), woss::CoordZ::getSphericalPhi(), woss::CoordZ::getSphericalTheta(), getValue(), has_conical_symmetry, and write().
Referenced by woss::BellhopWoss::writeBeamPatternFile().
|
friend |
Inequality operator
left | left operand const reference |
right | right operand const reference |
|
friend |
Equality operator
left | left operand const reference |
right | right operand const reference |
|
protected |
the bandwith @ -3dB around the resonance frequency [hz]
Referenced by getBandwith3dB(), isValid(), operator=(), write(), and writeBinary().
|
protected |
vertical beam pattern map
Referenced by beampattern_begin(), beampattern_clear(), beampattern_empty(), beampattern_end(), beampattern_erase(), beampattern_find(), beampattern_insert(), beampattern_lower_bound(), beampattern_multiply(), beampattern_rbegin(), beampattern_rend(), beampattern_replace(), beampattern_rotate(), beampattern_size(), beampattern_sum(), beampattern_upper_bound(), clearAll(), isValid(), operator=(), setBeamPrecision(), Transducer(), write(), writeBinary(), and writeVertBeamPattern().
|
protected |
angle precision [decimal degrees]
Referenced by beampattern_insert(), beampattern_lower_bound(), beampattern_replace(), beampattern_rotate(), beampattern_upper_bound(), getBeamPrecision(), operator=(), setBeamPrecision(), setOCVPrecision(), Transducer(), write(), writeBinary(), and writeVertBeamPattern().
|
protected |
conductance map
Referenced by clearAll(), conductance_begin(), conductance_clear(), conductance_empty(), conductance_end(), conductance_erase(), conductance_find(), conductance_insert(), conductance_insert(), conductance_lower_bound(), conductance_rbegin(), conductance_rend(), conductance_replace(), conductance_replace(), conductance_size(), conductance_upper_bound(), getPowerFromSPL(), getSPL(), isValid(), operator=(), setConductancePrecision(), Transducer(), write(), writeBinary(), and writeSPL().
|
protected |
frequency precision [hz]
Referenced by conductance_insert(), conductance_insert(), conductance_lower_bound(), conductance_replace(), conductance_replace(), conductance_upper_bound(), getConductancePrecision(), getPowerFromSPL(), getSPL(), operator=(), setConductancePrecision(), Transducer(), write(), and writeBinary().
|
staticprotected |
debug flag
Referenced by getPowerFromSPL(), getSPL(), getValue(), import(), importBinary(), setDebug(), and writeVertBeamPattern().
|
protected |
recommended duty cycle [between 0 and 1]
Referenced by getDutyCycle(), isValid(), operator=(), write(), and writeBinary().
|
protected |
set to true if transducer has conical symmetry along axis through angle = 0°
Referenced by operator=(), and writeVertBeamPattern().
|
protected |
max allowed input power [W]
Referenced by getMaxPower(), getMaxSPL(), getPowerFromSPL(), getSPL(), isValid(), operator=(), write(), writeBinary(), and writeSPL().
|
protected |
OCV map
Referenced by clearAll(), isValid(), ocv_begin(), ocv_clear(), ocv_empty(), ocv_end(), ocv_erase(), ocv_find(), ocv_insert(), ocv_lower_bound(), ocv_rbegin(), ocv_rend(), ocv_replace(), ocv_size(), ocv_upper_bound(), operator=(), setOCVPrecision(), Transducer(), write(), and writeBinary().
|
protected |
frequency precision [hz]
Referenced by getOCVPrecision(), ocv_insert(), ocv_lower_bound(), ocv_replace(), ocv_upper_bound(), operator=(), Transducer(), write(), and writeBinary().
|
protected |
resonance frequency of the transducer [hz]
Referenced by getResonanceFrequency(), isValid(), operator=(), write(), and writeBinary().
|
protected |
TVR map
Referenced by clearAll(), getPowerFromSPL(), getSPL(), getValue(), isValid(), operator=(), setTVRPrecision(), Transducer(), tvr_begin(), tvr_clear(), tvr_empty(), tvr_end(), tvr_erase(), tvr_find(), tvr_insert(), tvr_lower_bound(), tvr_rbegin(), tvr_rend(), tvr_replace(), tvr_size(), tvr_upper_bound(), write(), writeBinary(), and writeSPL().
|
protected |
frequency precision [hz]
Referenced by getPowerFromSPL(), getSPL(), getTVRPrecision(), operator=(), setTVRPrecision(), Transducer(), tvr_insert(), tvr_lower_bound(), tvr_replace(), tvr_upper_bound(), write(), and writeBinary().
|
protected |
transducer's model name
Referenced by getTypeName(), write(), and writeBinary().