TYPE :: IterationData_
  INTEGER(I4B) :: maxIter = 100
    
  INTEGER(I4B) :: iterationNumber = 1
    
  REAL(DFP) :: residualError0 = 0.0
    
  REAL(DFP) :: residualError = 0.0
    
  REAL(DFP) :: residualTolerance = 1.0E-5
    
  REAL(DFP) :: solutionError0 = 0.0
    
  REAL(DFP) :: solutionError = 0.0
    
  REAL(DFP) :: solutionTolerance = 1.0E-5
    
  INTEGER(I4B) :: convergenceType = RelativeConvergence
    
  INTEGER(I4B) :: convergenceIn = ConvergenceInRes
    
  INTEGER(I4B) :: normType = NormL2
    
  LOGICAL(LGT) :: converged = .FALSE.
    
  REAL(DFP) :: timeAtStart = 0.0
    
  REAL(DFP) :: timeAtEnd = 0.0
    
  REAL(DFP), ALLOCATABLE :: convergenceData(:, :)
    
    
  TYPE(String), ALLOCATABLE :: header(:)
    
END TYPE IterationData_