Nodes of different colours represent the following:
Solid arrows point from a submodule to the (sub)module which it is
descended from. Dashed arrows point from a module or program unit to
modules which it uses.
Test if a is divisible by b, where a and b are both reals.
(KCW, 2024-05-25)
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Variables
Type
Visibility
Attributes
Name
Initial
real(kind=real32),
private
::
error_tolerance
Source Code
pure elemental function almost_divisible_real32(a,b)result(almost_divisible)use,intrinsic::iso_fortran_env,only:real32real(real32),intent(in)::a,blogical::almost_divisiblereal(real32)::error_toleranceerror_tolerance=epsilon(1.0_real32)*max(abs(a),abs(b))if(almost_equal(mod(abs(a),abs(b)),0.0_real32,absolute_tolerance=error_tolerance).or.&almost_equal(mod(abs(a),abs(b)),abs(b),absolute_tolerance=error_tolerance))thenalmost_divisible=.true.return end ifalmost_divisible=.false.end function almost_divisible_real32