# iterations

Module which saves the computed energies for an extrapolation to the FCI limit.

## EZFIO parameters

`n_iter```

  Number of saved iterations

  Default: 1

`n_det_iterations```

  Number of determinants at each iteration

`energy_iterations```

  The variational energy at each iteration

`pt2_iterations```

  The PT2 correction at each iteration

## Providers

`extrapolated_energy`

  File : `iterations/iterations.irp.f`

      double precision, allocatable   :: extrapolated_energy  (N_iter,N_states)

  Extrapolated energy, using E_var = f(PT2) where PT2=0

  Needs:

  `energy_iterations` `n_det` | `n_iter` `n_states` | `pt2_iterations`

`n_iter`

  File : `iterations/io.irp.f`

      integer :: n_iter

  number of iterations

  Needs:

  `ezfio_filename` `mpi_master` | `n_states` | `output_wall_time_0`

  Needed by:

  `extrapolated_energy` |  |

## Subroutines / functions

`print_extrapolated_energy:`()

  File : `iterations/print_extrapolation.irp.f`

      subroutine print_extrapolated_energy

  Print the extrapolated energy in the output

  Needs:

  `extrapolated_energy` `n_states` | `n_det` `pt2_iterations` | `n_iter`

  Called by:

  `run_cipsi()` | `run_stochastic_cipsi()` |

`print_summary:`()

  File : `iterations/print_summary.irp.f`

      subroutine print_summary(e_,pt2_,error_,variance_,norm_,n_det_,n_occ_pattern_,n_st,s2_)

  Print the extrapolated energy in the output

  Needs:

  `do_pt2` | `s2_eig` |

  Called by:

  `run_cipsi()` | `run_stochastic_cipsi()` |

`save_iterations:`()

  File : `iterations/iterations.irp.f`

      subroutine save_iterations(e_, pt2_,n_)

  Update the energy in the EZFIO file.

  Needs:

  `n_iter` `energy_iterations` | `n_states` `pt2_iterations` | `n_det_iterations`

  Called by:

  `run_cipsi()` | `run_stochastic_cipsi()` |

  Calls:

  `ezfio_set_iterations_energy_iterations()` `ezfio_set_iterations_n_det_iterations()` | `ezfio_set_iterations_n_iter()` | `ezfio_set_iterations_pt2_iterations()`