![]() |
(git:b77b4be)
|
Helper functions for integration routines. More...
Data Types | |
interface | equidistant_nodes_a_b |
Functions/Subroutines | |
subroutine, public | rescale_normalised_nodes (nnodes, tnodes, a, b, shape_id, xnodes, weights) |
pure real(kind=dp) function, public | get_arc_radius (a, b) |
Compute arc radius. | |
pure real(kind=dp) function, public | get_arc_smallest_angle (a, b) |
Compute the angle phi. | |
subroutine, public | rescale_nodes_arc (nnodes, tnodes_angle, a, b, xnodes) |
Rescale nodes [pi, phi] -> arc[a, b] . | |
subroutine, public | rescale_nodes_cos (nnodes, tnodes) |
Rescale nodes tnodes(i) = cos(pi/2 * (1-tnodes(i))); tnodes \in [-1 .. 1] . | |
subroutine, public | rescale_nodes_linear (nnodes, tnodes, a, b, xnodes) |
Rescale nodes [-1, 1] -> [a, b] . | |
subroutine, public | rescale_nodes_pi_phi (a, b, nnodes, tnodes) |
Rescale nodes [-1, 1] -> [pi, phi] . | |
Variables | |
integer, parameter, public | contour_shape_linear = 0 |
integer, parameter, public | contour_shape_arc = 1 |
Helper functions for integration routines.
subroutine, public negf_integr_utils::rescale_normalised_nodes | ( | integer, intent(in) | nnodes, |
real(kind=dp), dimension(nnodes), intent(in) | tnodes, | ||
complex(kind=dp), intent(in) | a, | ||
complex(kind=dp), intent(in) | b, | ||
integer, intent(in) | shape_id, | ||
complex(kind=dp), dimension(nnodes), intent(out), optional | xnodes, | ||
complex(kind=dp), dimension(nnodes), intent(out), optional | weights | ||
) |
Definition at line 86 of file negf_integr_utils.F.
pure real(kind=dp) function, public negf_integr_utils::get_arc_radius | ( | complex(kind=dp), intent(in) | a, |
complex(kind=dp), intent(in) | b | ||
) |
Compute arc radius.
a | lower bound |
b | upper bound |
Definition at line 152 of file negf_integr_utils.F.
pure real(kind=dp) function, public negf_integr_utils::get_arc_smallest_angle | ( | complex(kind=dp), intent(in) | a, |
complex(kind=dp), intent(in) | b | ||
) |
Compute the angle phi.
a | lower bound |
b | upper bound |
Definition at line 182 of file negf_integr_utils.F.
subroutine, public negf_integr_utils::rescale_nodes_arc | ( | integer, intent(in) | nnodes, |
real(kind=dp), dimension(:), intent(in) | tnodes_angle, | ||
complex(kind=dp), intent(in) | a, | ||
complex(kind=dp), intent(in) | b, | ||
complex(kind=dp), dimension(:), intent(out) | xnodes | ||
) |
Rescale nodes [pi, phi] -> arc[a, b] .
nnodes | number of nodes |
tnodes_angle | parametrically-defined nodes to rescale |
a | lower bound |
b | upper bound |
xnodes | rescaled nodes (initialised on exit) |
Definition at line 222 of file negf_integr_utils.F.
subroutine, public negf_integr_utils::rescale_nodes_cos | ( | integer, intent(in) | nnodes, |
real(kind=dp), dimension(nnodes), intent(inout) | tnodes | ||
) |
Rescale nodes tnodes(i) = cos(pi/2 * (1-tnodes(i))); tnodes \in [-1 .. 1] .
tnodes | parametrically-defined nodes to rescale / rescaled nodes (modified on exit) |
Definition at line 247 of file negf_integr_utils.F.
subroutine, public negf_integr_utils::rescale_nodes_linear | ( | integer, intent(in) | nnodes, |
real(kind=dp), dimension(nnodes), intent(in) | tnodes, | ||
complex(kind=dp), intent(in) | a, | ||
complex(kind=dp), intent(in) | b, | ||
complex(kind=dp), dimension(nnodes), intent(out) | xnodes | ||
) |
Rescale nodes [-1, 1] -> [a, b] .
nnodes | number of nodes |
tnodes | parametrically-defined nodes to rescale |
a | lower bound |
b | upper bound |
xnodes | rescaled nodes (initialised on exit) |
Definition at line 264 of file negf_integr_utils.F.
subroutine, public negf_integr_utils::rescale_nodes_pi_phi | ( | complex(kind=dp), intent(in) | a, |
complex(kind=dp), intent(in) | b, | ||
integer, intent(in) | nnodes, | ||
real(kind=dp), dimension(nnodes), intent(inout) | tnodes | ||
) |
Rescale nodes [-1, 1] -> [pi, phi] .
nnodes | number of nodes |
a | lower bound |
b | upper bound |
tnodes | parametrically-defined nodes to rescale / rescaled nodes (modified on exit) |
Definition at line 288 of file negf_integr_utils.F.
integer, parameter, public negf_integr_utils::contour_shape_linear = 0 |
Definition at line 27 of file negf_integr_utils.F.
integer, parameter, public negf_integr_utils::contour_shape_arc = 1 |
Definition at line 27 of file negf_integr_utils.F.