flow_module Module Reference

Provides subroutines to calculate reaction flows. More...

Functions/Subroutines

subroutine, public flow_init ()
 Initialise flow subroutine. More...
 
subroutine, public flowcalc (Y)
 Flow calculation from jacobian. It is calculated with the help of the Jacobian. More...
 
subroutine, private flowsort
 Bring flows to correct format. More...
 
subroutine, public flowprint (t, t9, dens, abu, cnt)
 Output reaction flows to a file. More...
 

Variables

type(flow_vector), dimension(:), allocatable, public flows
 

Detailed Description

Provides subroutines to calculate reaction flows.

Author
Christian Winteler
Date
07.10.10

Edited:

  • 03.04.18, M. Jacobi , Rewrote the module, the flows are now calculated with the help of the Jacobian
  • 22.01.21, M. Reichert , added more comments

Function/Subroutine Documentation

◆ flow_init()

subroutine, public flow_module::flow_init

Initialise flow subroutine.

This subroutine counts the number of possible flows and allocates the flows array.

Edited:

  • 11.01.14
  • 03.04.18, M. Jacobi

Definition at line 49 of file flow_module.f90.

◆ flowcalc()

subroutine, public flow_module::flowcalc ( real(r_kind), dimension(:), intent(in)  Y)

Flow calculation from jacobian. It is calculated with the help of the Jacobian.

\[ F_{ij} = |(1/h - J_{ij}) \times Y_i - (1/h - J_{ji}) \times Y_j| \]

Note
Using the jacobian directly has the advantage that the flow will be correct if the calculation is correct. In previous versions, the flow was not calculated by using the jacobian.

Edited:

  • 03.04.18, M. Jacobi
Parameters
[in]yabundance

Definition at line 109 of file flow_module.f90.

Here is the call graph for this function:

◆ flowprint()

subroutine, public flow_module::flowprint ( real(r_kind), intent(in)  t,
real(r_kind), intent(in)  t9,
real(r_kind), intent(in)  dens,
real(r_kind), dimension(:), intent(in)  abu,
integer, intent(in)  cnt 
)

Output reaction flows to a file.

An example of this file may look like:

 time    temp    dens
 1.03895957612263E-01   7.19136097013393E+00   1.40977753502083E+06
  nin     zin     yin    nout    zout    yout    flow
 2   1   4.81807892321990E-08   1   1   2.13994533749120E-06   0.00000000000000E+00
 1   2   1.26489216252989E-09   1   1   2.13994533749120E-06   0.00000000000000E+00
 1   2   1.26489216252989E-09   2   1   4.81807892321990E-08   1.58426675189734E-10
 4   2   9.86495465952053E-13   3   3   2.15833022688002E-11   8.53665754802155E-13
 ...

Edited:

  • 11.01.14
  • 03.04.18, M. Jacobi
Parameters
[in]ttime [s]
[in]t9temperature [GK]
[in]densdensity [g/cm3]
[in]abuabundances
[in]cntflow snapshot counter

Definition at line 205 of file flow_module.f90.

Here is the call graph for this function:

◆ flowsort()

subroutine, private flow_module::flowsort
private

Bring flows to correct format.

Make the flows positive and swap ingoing neutron and proton numbers in case of negative flows.

Definition at line 167 of file flow_module.f90.

Variable Documentation

◆ flows

type(flow_vector), dimension(:), allocatable, public flow_module::flows

Definition at line 25 of file flow_module.f90.