commit 7f7febf3788d9fc8794e456555332e50123ed6bc
parent 2be72b1f936e1bef3a3e6f5464978d6ead9f3590
Author: Anders Damsgaard <anders@adamsgaard.dk>
Date: Thu, 2 Sep 2021 14:12:58 +0200
minor formatting changes
Diffstat:
M | simulation.c | | | 56 | ++++++++++++++++---------------------------------------- |
1 file changed, 16 insertions(+), 40 deletions(-)
diff --git a/simulation.c b/simulation.c
@@ -30,32 +30,21 @@ init_sim(struct simulation *sim)
err(1, "%s: could not write simulation name", __func__);
sim->G = 9.81;
-
sim->P_wall = 120e3;
sim->mu_wall = 0.45;
sim->v_x_bot = 0.0;
sim->v_x_fix = NAN;
sim->v_x_limit = NAN;
-
- sim->nz = -1; /* cell size equals grain size if negative */
-
- /* lower values of A mean that the velocity curve can have sharper
- * curves, e.g. at the transition from μ ≈ μ_s */
- sim->A = 0.40; /* Loose fit to Damsgaard et al 2013 */
-
- /* lower values of b mean larger shear velocity for a given stress
- * ratio above yield */
- sim->b = 0.9377; /* Henann and Kamrin 2016 */
-
- /* Henann and Kamrin 2016 */
- /* sim->mu_s = 0.3819; */
- /* sim->C = 0.0; */
- /* Damsgaard et al 2013 */
- sim->mu_s = tan(DEG2RAD(22.0));
- sim->C = 0.0;
+ sim->nz = -1; /* cell size equals grain size if negative */
+
+ sim->A = 0.40; /* Loose fit to Damsgaard et al 2013 */
+ sim->b = 0.9377; /* Henann and Kamrin 2016 */
+ /* sim->mu_s = 0.3819; */ /* Henann and Kamrin 2016 */
+ /* sim->C = 0.0; */ /* Henann and Kamrin 2016 */
+ sim->mu_s = tan(DEG2RAD(22.0)); /* Damsgaard et al 2013 */
+ sim->C = 0.0; /* Damsgaard et al 2013 */
sim->phi = initval(0.25, 1);
- sim->d = 0.04; /* Damsgaard et al 2013 */
-
+ sim->d = 0.04; /* Damsgaard et al 2013 */
sim->transient = 0;
sim->phi_min = 0.20;
sim->phi_max = 0.55;
@@ -79,39 +68,29 @@ init_sim(struct simulation *sim)
/* sim->phi = initval(0.35, 1); */
/* sim->d = ??; */
- /* grain material density [kg/m^3] */
- sim->rho_s = 2.6e3; /* Damsgaard et al 2013 */
-
- /* spatial settings */
+ sim->rho_s = 2.6e3; /* Damsgaard et al 2013 */
sim->origo_z = 0.0;
sim->L_z = 1.0;
-
- /* temporal settings */
sim->t = 0.0;
sim->dt = 1.0;
sim->t_end = 1.0;
sim->file_dt = 1.0;
sim->n_file = 0;
-
- /* fluid settings */
sim->fluid = 0;
-
sim->rho_f = 1e3;
- /* Water at 20 deg C, Goren et al 2011 */
- /* sim->beta_f = 4.5e-10; */
- /* sim->mu_f = 1.0-3; */
+ /* Water at 20 deg C */
+ /* sim->beta_f = 4.5e-10; */ /* Goren et al 2011 */
+ /* sim->mu_f = 1.0-3; */ /* Goren et al 2011 */
/* Water at 0 deg C */
sim->beta_f = 3.9e-10; /* doi:10.1063/1.1679903 */
sim->mu_f = 1.787e-3; /* Cuffey and Paterson 2010 */
sim->alpha = 1e-8;
-
sim->D = -1.0; /* disabled when negative */
- /* Damsgaard et al 2015 */
- sim->k = initval(1.9e-15, 1);
+ sim->k = initval(1.9e-15, 1); /* Damsgaard et al 2015 */
/* Iverson et al 1994: Storglaciaren */
/* sim->k = initval(1.3e-14, 1); */
@@ -395,8 +374,8 @@ check_simulation_parameters(struct simulation *sim)
warn_parameter_value("constant diffusivity does not work in "
"transient simulations",
sim->D, &return_status);
-
}
+
if (return_status != 0) {
fprintf(stderr, "error: aborting due to invalid parameter choices\n");
exit(return_status);
@@ -785,7 +764,7 @@ temporal_increment(struct simulation *sim)
for (i = 0; i < sim->nz; ++i)
sim->phi[i] += sim->phi_dot[i] * sim->dt;
- if (sim->fluid) {
+ if (sim->fluid)
for (i = 0; i < sim->nz; ++i) {
if (isnan(sim->p_f_dot[i])) {
errx(1, "encountered NaN at sim->p_f_dot[%d] (t = %g s)",
@@ -794,11 +773,9 @@ temporal_increment(struct simulation *sim)
sim->p_f_ghost[i + 1] += sim->p_f_dot[i] * sim->dt;
}
}
- }
for (i = 0; i < sim->nz; ++i)
sim->d_x[i] += sim->v_x[i] * sim->dt;
-
sim->t += sim->dt;
}
@@ -881,7 +858,6 @@ coupled_shear_solver(struct simulation *sim,
r_norm_max = max(sim->g_r_norm, sim->nz);
if (r_norm_max <= rel_tol && coupled_iter > 0)
break;
-
if (coupled_iter++ >= max_iter) {
fprintf(stderr, "coupled_shear_solver: ");
fprintf(stderr, "Transient solution did not converge "