|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--mil.navy.nps.rra.Beam
A Beam is defined as the volume swept out by four Rays as they traverse the ocean environment.
This class forms a Beam from four Ray calculations, which are acoustically propagated according to the sound speed profile (SSP) & Surface & Bottom. Calculated values can be used to produce a VRML representation of the Beam.
Beams of energy can be considered to consist of bundles of sound rays. The energy in a bundle can be shown not to diverge from the bundle. Thus the energy in a bundle is constant, and subsequently the product of the intensity versus the area of the bundle perpendicular to direction of propagation is a constant as well. Therefore a beam is a fundamental building block for constructing a multiple-beam Lobe of a sonar pattern.
Contact: Don Brutzman (web.nps.navy.mil/~brutzman) brutzman@nps.navy.mil
15 November 97 | Timothy M. Holliday | New |
17 March 98 | Timothy M. Holliday | Added HTML comment convention |
12 April 98 | Timothy M. Holliday | Parameterless Constructors |
14 April 98 | Timothy M. Holliday | Simplified VRML Routines |
21 April 98 | Timothy M. Holliday | Fixed Problem with calculateSoundPressureLevel |
16 October 98 | Don Brutzman | Javadoc updates for jdk1.2b4 |
24 April 99 | Don Brutzman | Javadoc updates for jdk1.2.1 |
Ray
,
Lobe
,
Bottom
,
Surface
,
SSP
,
ExampleBeamStatic
,
ExampleBeamDynamic
,
Vec3d
Field Summary | |
static int |
NONE
Enumeration flag to avoid further attenuation of color intensity. |
static int |
T_L
Enumeration flag to attenuate color intensity by transmission loss (T_L, pronounced "T sub L"). |
static int |
TIME
Enumeration flag to attenuate color intensity by timestep. |
Constructor Summary | |
Beam()
Use accessor methods to set initial values of member variables. |
Method Summary | |
void |
calculateBeam(Targets targets)
This method calculates the trajectory of the beam of energy enclosed by the defining rays of the beam tube. |
void |
calculateSoundPressureLevel(double[][][] field,
double deltaRange,
double deltaDepth,
double frequency)
This method calculates the trajectory of the beam of energy enclosed by the defining rays of the beam tube. |
java.lang.String |
dynamicVRML()
This method creates a dynamic VRML string shape that is the three dimensional representation of the beam pulse that is propogated. |
static boolean |
getAppendLineFeed()
This is a static method that returns the current line appendage. |
double |
getAzimuth()
This method returns the azimuthal angle. |
int |
getBeamNumber()
This returns BeamNumber. |
Bottom |
getBottom()
This method returns the handle to the bottom object. |
double |
getDeltaTime()
This method returns the simulation time step. |
int |
getDetectCount()
This method returns the total number of detects by the beam |
double |
getDetectEchoLevel(int N)
This method returns the echo level of the detected target |
double |
getDetectTime(int N)
This method returns the detect time for a given detect in the beam |
int |
getDuration()
This method sets the duration of the sonar pulse. |
double |
getElevation()
This method returns the elevation angle. |
double |
getEndTime()
This method returns the simulation end time. |
double |
getHalfBeamWidthX()
This method returns the half beam width of the beam in the azimuthal direction. |
double |
getHalfBeamWidthY()
This method returns the half beam width of the beam in the azimuthal direction. |
Vec3d |
getPosition()
This method returns the position of the beam. |
SSP |
getSsp()
This method returns the handle to the sound speed profile object. |
Surface |
getSurface()
This method returns the handle to the surface object. |
java.lang.String |
pingTimerVRML()
This method returns a VRML timer string that contains the appropriate timing information for the beam |
void |
reset()
This method resets all of the beam parameters after instanciation has occurred, since reuse is more time efficient than garbage collection and reallocation. |
static void |
setAppendLineFeed(boolean pAppendLineFeed)
This is a static method used to indicate whether a line feed is desired at the end of every line. |
void |
setAzimuth(double phi)
This method sets the azimuthal angle, which is the angle from the x-axis to the z-axis rotating about the y-axis. |
void |
setBeamNumber(int number)
This method sets BeamNumber. |
void |
setBottom(Bottom pBottom)
This method sets the handle to the bottom object. |
void |
setDeltaTime(double pDeltaTime)
This method sets the time step in the simulation. |
void |
setDuration(int duration)
This method sets the duration of the sonar pulse. |
void |
setElevation(double beta)
This method sets the elevation angle, which is the angle from the y-axis to the x-axis rotating about the z-axis . |
void |
setEndTime(double pEndTime)
This method sets the simulation end time. |
void |
setHalfBeamWidthX(double pHalfBeamWidthX)
This method sets the half beam width of the beam in the azimuthal direction. |
void |
setHalfBeamWidthY(double pHalfBeamWidthY)
This method sets the half beam width of the beam in the elevation direction. |
void |
setPosition(double x,
double y,
double z)
This method sets the position of the beam. |
void |
setSsp(SSP pSsp)
This method sets the handle to the sound speed profile object. |
void |
setSurface(Surface pSurface)
This method sets the handle to the surface object. |
java.lang.String |
staticVRML(int colorChoice,
int intensityChoice)
This method writes to the console a VRML shape that is the three dimensional representation of the beam that is propagated. |
Methods inherited from class java.lang.Object |
|
Field Detail |
public static final int T_L
public static final int TIME
public static final int NONE
Constructor Detail |
public Beam()
Method Detail |
public void reset()
public void setAzimuth(double phi)
public double getAzimuth()
public void setHalfBeamWidthX(double pHalfBeamWidthX)
public double getHalfBeamWidthX()
public void setElevation(double beta)
public double getElevation()
public void setHalfBeamWidthY(double pHalfBeamWidthY)
public double getHalfBeamWidthY()
public void setPosition(double x, double y, double z)
public Vec3d getPosition()
public void setDeltaTime(double pDeltaTime)
public double getDeltaTime()
public void setEndTime(double pEndTime)
public double getEndTime()
public void setDuration(int duration)
public int getDuration()
public void setBottom(Bottom pBottom)
public Bottom getBottom()
public void setSurface(Surface pSurface)
public Surface getSurface()
public void setSsp(SSP pSsp)
public SSP getSsp()
public void setBeamNumber(int number)
public int getBeamNumber()
public java.lang.String staticVRML(int colorChoice, int intensityChoice)
public java.lang.String dynamicVRML()
public void calculateBeam(Targets targets)
public void calculateSoundPressureLevel(double[][][] field, double deltaRange, double deltaDepth, double frequency)
public int getDetectCount()
public double getDetectTime(int N)
public double getDetectEchoLevel(int N)
public java.lang.String pingTimerVRML()
public static void setAppendLineFeed(boolean pAppendLineFeed)
public static boolean getAppendLineFeed()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |