migflow.time_integration¶
-
migflow.time_integration.
iterate
(fluid, particles, dt, min_nsub=1, contact_tol=1e-08, external_particles_forces=None, fixed_grains=False, after_sub_iter=None, max_nsub=None, check_residual_norm=-1, use_predictor_corrector=True)¶ Migflow solver: the solver type depends on the fluid and particles given as arguments.
Parameters: - fluid – fluid structure
- particles – particles structure
- dt (
float
) – time step - min_nsub (
int
) – minimal nsub for the particles iterations - contact_tol (
float
) – tolerance for the contact solver - external_particles_forces (
Optional
[ndarray
]) – vector of external forces applied on the particles - fixed_grains (
bool
) – boolean variable specifying if the grains are fixed in the fluid - after_sub_iter (
Optional
[<built-in function callable>]) – callback to execute once a sub iteration has been made - max_nsub (
Optional
[int
]) – maximum number of times the time step can be further split if conergence is not reached - check_residual_norm (
float
) – check if the fluid solver has converged to the specified norm - use_predictor_corrector (
bool
) – boolean variable specifying if the predictor-corrector scheme is used
Raises: ValueError
– fluid and particles cannot be both NoneValueError
– external_particles_forces must have shape (number of particles,dimension)
-
migflow.time_integration.
predictor_corrector_iterate
(fluid, particles, dt, min_nsub=1, contact_tol=1e-08, external_particles_forces=None, alpha=0.5, after_sub_iter=None, max_nsub=None, check_residual_norm=-1)¶ Predictor-corrector scheme to solve fluid and grains.
Parameters: - fluid – fluid structure
- particles – particles structure
- dt (
float
) – time step - min_nsub (
int
) – minimal nsub for the particles iterations - contact_tol (
float
) – tolerance for the contact solver - external_particles_forces (
Optional
[ndarray
]) – external forces applied on the particles - alpha (
float
) – parametre of the predictor-corrector scheme [alpha*f(n)+(1-alpha)*f(n+1)] - after_sub_iter (
Optional
[<built-in function callable>]) – callback to execute once a sub iteration has been made - max_split – maximum number of times the time step can be further split if convergence is not reached
- check_residual_norm (
float
) – check if the fluid solver has converged to the specified norm