idaholab / TMAP8

Tritium Migration Analysis Program, Version 8
https://mooseframework.inl.gov/TMAP8/
GNU Lesser General Public License v2.1
15 stars 18 forks source link

Strange behaviour in V&V case ver-1e #73

Closed RemDelaporteMathurin closed 5 months ago

RemDelaporteMathurin commented 11 months ago

I tried running the ver-1e case locally and exported not only the concentration at 15.75 um away from the interface but also at x=20 um (in the first subdomain).

This concentration point shows a high oscillation behaviour (see below). Maybe due to tolerances, mesh or timestep...

image

@singhgp4321 any idea?

RemDelaporteMathurin commented 11 months ago

This is a paraview animation of the ver-1e_out.e file produced by TMAP8

ezgif-4-5e1bb869d6

singhgp4321 commented 11 months ago

Not sure why. Is this with the default parameter values provided in the code or did you change something?

RemDelaporteMathurin commented 11 months ago

Yes this is the default parameters, the only thing I changed is the extra export at x = 20 um I used the script available on this repo.

RemDelaporteMathurin commented 11 months ago

You can only simply open the exodus file for this test case in Paraview and check for yourself. It shows the same concentration profile as the animation above.

singhgp4321 commented 11 months ago

Okay, thanks for reporting this. I will get back to you as soon as I have a solution. It may take a week or two as I am tied up with several other tasks right now.

chaibhave commented 7 months ago

The oscillations are entirely caused by too large of an initial time step size, and the use of the Crank-Nicholson integration scheme. This executioner block resolves the fluctuations. I'm opening a PR for this, thanks for pointing out the issue @RemDelaporteMathurin !

[Executioner]
  type = Transient
  end_time = 50
  dtmax = 0.2
  solve_type = NEWTON
  petsc_options_iname = '-pc_type -pc_hypre_type'
  petsc_options_value = 'hypre boomeramg'
  scheme = 'bdf2'
  nl_rel_tol = 1e-50 # Make this really tight so that our absolute tolerance criterion is the one
  # # we must meet
  nl_abs_tol = 1e-12
  abort_on_solve_fail = true
  [TimeStepper]
    type = IterationAdaptiveDT
    dt = 1e-4
    optimal_iterations = 4
    growth_factor = 1.25
    cutback_factor = 0.8
  []
[]
simopier commented 5 months ago

Closed since #115 is merged