The AHA Model  Revision: 12809
Reference implementation 04 (HEDG02_04)
the_environment::visual_range Interface Reference

Calculate visual range of predator using Dag Aksnes's procedures srgetr(), easyr() and deriv(). More...

Collaboration diagram for the_environment::visual_range:

Public Member Functions

real(srp) function visual_range_scalar (irradiance, prey_area, prey_contrast)
 Wrapper for calculating visual range of a fish predator using the Dag Aksnes's procedures srgetr(), easyr() and deriv(). See srgetr() for computational details. More...
 
real(srp) function, dimension(size(prey_area)) visual_range_vector (irradiance, prey_area, prey_contrast_vect, prey_contrast)
 Wrapper for calculating visual range of a fish predator using the Dag Aksnes's procedures srgetr(), easyr() and deriv(). See srgetr() for computational details. More...
 

Detailed Description

Calculate visual range of predator using Dag Aksnes's procedures srgetr(), easyr() and deriv().

Note
This is a non-pure/elemental version with debugging log output.
Warning
The main interface name is visual_range(), it is this name which is used throughout the code.
Note
It is possible to use either the "debug" (this) or "fast" (next) generic interface for visual_range() by tweaking the interface name, e.g. to switch to the debug version rename visual_range_debug() to visual_range() and the next version to visual_range_disable().

Specific implementations

See specific implementations:

Definition at line 738 of file m_env.f90.

Member Function/Subroutine Documentation

◆ visual_range_scalar()

real(srp) function the_environment::visual_range::visual_range_scalar ( real(srp), intent(in)  irradiance,
real(srp), intent(in), optional  prey_area,
real(srp), intent(in), optional  prey_contrast 
)

Wrapper for calculating visual range of a fish predator using the Dag Aksnes's procedures srgetr(), easyr() and deriv(). See srgetr() for computational details.

Note
Note that this is a scalar version. The measurement unit here is meter, might need conversion if other units are used.
Parameters
[in]irradiancebackground irradiance at specific depth
[in]prey_areaprey area, m^2
[in]prey_contrastoptional prey inherent contrast or default parameter if not present.
Returns
Returns visual range of the fish predator.

Example call:

visual_range( light_depth( 30., light_surface(100,.true.) ) )

Specific implementations

See specific implementations:

Definition at line 4730 of file m_env.f90.

Here is the call graph for this function:

◆ visual_range_vector()

real(srp) function, dimension(size(prey_area)) the_environment::visual_range::visual_range_vector ( real(srp), intent(in)  irradiance,
real(srp), dimension(:), intent(in)  prey_area,
real(srp), dimension(size(prey_area)), intent(in), optional  prey_contrast_vect,
real(srp), intent(in), optional  prey_contrast 
)

Wrapper for calculating visual range of a fish predator using the Dag Aksnes's procedures srgetr(), easyr() and deriv(). See srgetr() for computational details.

Note
This is a vector version, prey_area is mandatory and also defines the vector size for all other vector parameters including the returned function value vector. This is useful for selecting among a swarm of prey with different sizes when vector is processed. The measurement unit here is meter. Might need conversion if other units are used.
Parameters
[in]irradiancebackground irradiance at specific depth
[in]prey_areaprey area, m^2; Mandatory parameter.
[in]prey_contrast_vectoptional prey inherent contrast or default parameter if not present. This parameter sets individual vector prey contrast, so can be used for providing stochastic contrast data for each object.
[in]prey_contrastoptional prey inherent contrast or default parameter if not present. This parameter sets common scalar prey contrast for the whole vector.
Returns
Returns visual range of the fish predator.

Specific implementations

See specific implementations:

Definition at line 4898 of file m_env.f90.

Here is the call graph for this function:

The documentation for this interface was generated from the following file: