diff --git a/docs/documentation/case.md b/docs/documentation/case.md index 3184e0689..ef0c0e503 100644 --- a/docs/documentation/case.md +++ b/docs/documentation/case.md @@ -291,22 +291,25 @@ This is enabled by adding `'elliptic_smoothing': "T",` and `'elliptic_smoothing_ | Parameter | Type | Description | | ---: | :----: | :--- | -| `geometry` | Integer | Geometry configuration of the patch.| -| `x[y,z]_centroid` | Real | Centroid of the applied geometry in the [x,y,z]-direction. | -| `length_x[y,z]` | Real | Length, if applicable, in the [x,y,z]-direction. | -| `radius` | Real | Radius, if applicable, of the applied geometry. | -| `theta` | Real | Angle of attach applied to airfoil IB patches | -| `c` | Real | NACA airfoil parameters (see below) | -| `t` | Real | NACA airfoil parameters (see below) | -| `m` | Real | NACA airfoil parameters (see below) | -| `p` | Real | NACA airfoil parameters (see below) | -| `slip` | Logical | Apply a slip boundary | -| `model_filepath` | String | Path to an STL or OBJ file (not all OBJs are supported). | -| `model_scale(i)` | Real | Model's (applied) scaling factor for component $i$. | -| `model_rotate(i)` | Real | Model's (applied) angle of rotation about axis $i$. | -| `model_translate(i)` | Real | Model's $i$-th component of (applied) translation. | -| `model_spc` | Integer | Number of samples per cell when discretizing the model into the grid. | -| `model_threshold` | Real | Ray fraction inside the model patch above which the fraction is set to one.| +| `geometry` | Integer | Geometry configuration of the patch.| +| `x[y,z]_centroid` | Real | Centroid of the applied geometry in the [x,y,z]-direction. | +| `length_x[y,z]` | Real | Length, if applicable, in the [x,y,z]-direction. | +| `radius` | Real | Radius, if applicable, of the applied geometry. | +| `theta` | Real | Angle of attach applied to airfoil IB patches | +| `c` | Real | NACA airfoil parameters (see below) | +| `t` | Real | NACA airfoil parameters (see below) | +| `m` | Real | NACA airfoil parameters (see below) | +| `p` | Real | NACA airfoil parameters (see below) | +| `slip` | Logical | Apply a slip boundary | +| `model_filepath` | String | Path to an STL or OBJ file (not all OBJs are supported). | +| `model_scale(i)` | Real | Model's (applied) scaling factor for component $i$. | +| `model_rotate(i)` | Real | Model's (applied) angle of rotation about axis $i$. | +| `model_translate(i)` | Real | Model's $i$-th component of (applied) translation. | +| `model_spc` | Integer | Number of samples per cell when discretizing the model into the grid. | +| `model_threshold` | Real | Ray fraction inside the model patch above which the fraction is set to one.| +| `moving_ibm` | Integer | Sets the method used for IB movement. | +| `vel(i)` | Real | Initial velocity of the moving IB in the i-th direction. | +| `angular_vel(i)` | Real | Initial angular velocity of the moving IB in the i-th direction. | These parameters should be prepended with `patch_ib(j)%` where $j$ is the patch index. @@ -331,6 +334,12 @@ Additional details on this specification can be found in [The Naca Airfoil Serie - Please see [Patch Parameters](#3-patches) for the descriptions of `model_filepath`, `model_scale`, `model_rotate`, `model_translate`, `model_spc`, and `model_threshold`. +- `moving_ibm` sets the method by which movement will be applied to the immersed boundary. Using 0 will result in no movement. Using 1 will result 1-way coupling where the boundary moves at a constant rate and applied forces to the fluid based upon it's own motion. In 1-way coupling, the fluid does not apply forces back onto the IB. + +- `vel(i)` is the initial linear velocity of the IB in the x, y, z direction for i=1, 2, 3. When `moving_ibm` equals 1, this velocity is constant. + +- `angular_vel(i)` is the initial angular velocity of the IB about the x, y, z axes for i=1, 2, 3 in radians per second. When `moving_ibm` equals 1, this angular velocity is constant. + ### 5. Fluid Material’s | Parameter | Type | Description | @@ -366,62 +375,62 @@ Details of implementation of viscosity in MFC can be found in [Coralic (2015)](r - `fluid_pp(i)%%G` is required for `hypoelasticity`. ### 6. Simulation Algorithm - -| Parameter | Type | Description | -| ---: | :----: | :--- | -| `bc_[x,y,z]%%beg[end]` | Integer | Beginning [ending] boundary condition in the $[x,y,z]$-direction (negative integer, see table [Boundary Conditions](#boundary-conditions)) | -| `bc_[x,y,z]%%vb[1,2,3]`‡| Real | Velocity in the (x,1), (y, 2), (z,3) direction applied to `bc_[x,y,z]%%beg` | -| `bc_[x,y,z]%%ve[1,2,3]`‡| Real | Velocity in the (x,1), (y, 2), (z,3) direction applied to `bc_[x,y,z]%%end` | -| `model_eqns` | Integer | Multicomponent model: [1] $\Gamma/\Pi_\infty$; [2] 5-equation; [3] 6-equation; [4] 4-equation | -| `alt_soundspeed` * | Logical | Alternate sound speed and $K \nabla \cdot u$ for 5-equation model | -| `adv_n` | Logical | Solving directly for the number density (in the method of classes) and compute void fraction from the number density | -| `mpp_lim` | Logical | Mixture physical parameters limits | -| `mixture_err` | Logical | Mixture properties correction | -| `time_stepper` | Integer | Runge--Kutta order [1-3] | -| `adap_dt` | Logical | Strang splitting scheme with adaptive time stepping | -| `recon_type` | Integer | Reconstruction Type: [1] WENO; [2] MUSCL | -| `adap_dt_tol` | Real | Tolerance for adaptive time stepping in Strang splitting scheme| -| `adap_dt_max_iters` | Integer | Max iteration for adaptive time stepping in Strang splitting scheme | -| `weno_order` | Integer | WENO order [1,3,5] | -| `weno_eps` | Real | WENO perturbation (avoid division by zero) | -| `mapped_weno` | Logical | WENO-M (WENO with mapping of nonlinear weights) | -| `wenoz` | Logical | WENO-Z | -| `wenoz_q` | Real | WENO-Z power parameter q (only for WENO7) | -| `teno` | Logical | TENO (Targeted ENO) | -| `teno_CT` | Real | TENO threshold for smoothness detection | -| `null_weights` | Logical | Null WENO weights at boundaries | -| `mp_weno` | Logical | Monotonicity preserving WENO | -| `muscl_order` | Integer | MUSCL order [1,2] | -| `muscl_lim` | Integer | MUSCL Slope Limiter: [1] minmod; [2] monotonized central; [3] Van Albada; [4] Van Leer; [5] SUPERBEE | -| `int_comp` | Logical | THINC Interface Compression | -| `ic_eps` | Real | Interface compression threshold (default: 1e-4) | -| `ic_beta` | Real | Interface compression sharpness parameter (default: 1.6) | -| `riemann_solver` | Integer | Riemann solver algorithm: [1] HLL*; [2] HLLC; [3] Exact*; [4] HLLD (only for MHD) | -| `low_Mach` | Integer | Low Mach number correction for HLLC Riemann solver: [0] None; [1] Pressure (Chen et al. 2022); [2] Velocity (Thornber et al. 2008) | -| `avg_state` | Integer | Averaged state evaluation method: [1] Roe average*; [2] Arithmetic mean | -| `wave_speeds` | Integer | Wave-speed estimation: [1] Direct (Batten et al. 1997); [2] Pressure-velocity* (Toro 1999) | -| `weno_Re_flux` | Logical | Compute velocity gradient using scalar divergence theorem | -| `weno_avg` | Logical | Arithmetic mean of left and right, WENO-reconstructed, cell-boundary values | -| `dt` | Real | Time step size | -| `t_step_start` | Integer | Simulation starting time step | -| `t_step_stop` | Integer | Simulation stopping time step | -| `t_step_save` | Integer | Frequency to output data | -| `t_step_print` | Integer | Frequency to print the current step number to standard output (default 1) | -| `cfl_adap_dt` | Logical | CFL based adaptive time-stepping | -| `cfl_const_dt` | Logical | CFL based non-adaptive time-stepping | -| `cfl_target` | Real | Specified CFL value | -| `n_start` | Integer | Save file from which to start simulation | -| `t_save` | Real | Time duration between data output | -| `t_stop` | Real | Simulation stop time | -| `surface_tension` | Logical | Activate surface tension | -| `viscous` | Logical | Activate viscosity | -| `hypoelasticity` | Logical | Activate hypoelasticity* | -| `igr` | Logical | Enable solution via information geometric regularization (IGR) [Cao (2024)](references.md) | -| `igr_order` | Integer | Order of reconstruction for IGR [3,5] | -| `alf_factor` | Real | Alpha factor for IGR entropic pressure (default 10) | -| `igr_pres_lim` | Logical | Limit IGR pressure to avoid negative values (default F) | -| `igr_iter_solver` | Integer | Solution method for IGR elliptic solve [1] Jacobi [2] Gauss-Seidel | -| `num_igr_iters` | Integer | Number of iterations for for the IGR elliptic solve (default 2) | +. +| Parameter . | Type | Description | +| ---: . | :----: | :--- | +| `bc_[x,y,z]%%beg[end]` . | Integer | Beginning [ending] boundary condition in the $[x,y,z]$-direction (negative integer, see table [Boundary Conditions](#boundary-conditions)) | +| `bc_[x,y,z]%%vb[1,2,3]`‡. | Real | Velocity in the (x,1), (y, 2), (z,3) direction applied to `bc_[x,y,z]%%beg` | +| `bc_[x,y,z]%%ve[1,2,3]`‡. | Real | Velocity in the (x,1), (y, 2), (z,3) direction applied to `bc_[x,y,z]%%end` | +| `model_eqns` | Integer | Multicomponent model: [1] $\Gamma/\Pi_\infty$; [2] 5-equation; [3] 6-equation; [4] 4-equation | +| `alt_soundspeed` * | Logical | Alternate sound speed and $K \nabla \cdot u$ for 5-equation model | +| `adv_n` | Logical | Solving directly for the number density (in the method of classes) and compute void fraction from the number density | +| `mpp_lim` | Logical | Mixture physical parameters limits | +| `mixture_err` | Logical | Mixture properties correction | +| `time_stepper` | Integer | Runge--Kutta order [1-3] | +| `adap_dt` | Logical | Strang splitting scheme with adaptive time stepping | +| `recon_type` | Integer | Reconstruction Type: [1] WENO; [2] MUSCL | +| `adap_dt_tol` | Real | Tolerance for adaptive time stepping in Strang splitting scheme| +| `adap_dt_max_iters` | Integer | Max iteration for adaptive time stepping in Strang splitting scheme | +| `weno_order` | Integer | WENO order [1,3,5] | +| `weno_eps` | Real | WENO perturbation (avoid division by zero) | +| `mapped_weno` | Logical | WENO-M (WENO with mapping of nonlinear weights) | +| `wenoz` | Logical | WENO-Z | +| `wenoz_q` | Real | WENO-Z power parameter q (only for WENO7) | +| `teno` | Logical | TENO (Targeted ENO) | +| `teno_CT` | Real | TENO threshold for smoothness detection | +| `null_weights` | Logical | Null WENO weights at boundaries | +| `mp_weno` | Logical | Monotonicity preserving WENO | +| `muscl_order` | Integer | MUSCL order [1,2] | +| `muscl_lim` | Integer | MUSCL Slope Limiter: [1] minmod; [2] monotonized central; [3] Van Albada; [4] Van Leer; [5] SUPERBEE | +| `int_comp` | Logical | THINC Interface Compression | +| `ic_eps` | Real | Interface compression threshold (default: 1e-4) | +| `ic_beta` | Real | Interface compression sharpness parameter (default: 1.6) | +| `riemann_solver` | Integer | Riemann solver algorithm: [1] HLL*; [2] HLLC; [3] Exact*; [4] HLLD (only for MHD) | +| `low_Mach` | Integer | Low Mach number correction for HLLC Riemann solver: [0] None; [1] Pressure (Chen et al. 2022); [2] Velocity (Thornber et al. 2008) | +| `avg_state` | Integer | Averaged state evaluation method: [1] Roe average*; [2] Arithmetic mean | +| `wave_speeds` | Integer | Wave-speed estimation: [1] Direct (Batten et al. 1997); [2] Pressure-velocity* (Toro 1999) | +| `weno_Re_flux` | Logical | Compute velocity gradient using scalar divergence theorem | +| `weno_avg` | Logical | Arithmetic mean of left and right, WENO-reconstructed, cell-boundary values | +| `dt` | Real | Time step size | +| `t_step_start` | Integer | Simulation starting time step | +| `t_step_stop` | Integer | Simulation stopping time step | +| `t_step_save` | Integer | Frequency to output data | +| `t_step_print` | Integer | Frequency to print the current step number to standard output (default 1) | +| `cfl_adap_dt` | Logical | CFL based adaptive time-stepping | +| `cfl_const_dt` | Logical | CFL based non-adaptive time-stepping | +| `cfl_target` | Real | Specified CFL value | +| `n_start` | Integer | Save file from which to start simulation | +| `t_save` | Real | Time duration between data output | +| `t_stop` | Real | Simulation stop time | +| `surface_tension` | Logical | Activate surface tension | +| `viscous` | Logical | Activate viscosity | +| `hypoelasticity` | Logical | Activate hypoelasticity* | +| `igr` | Logical | Enable solution via information geometric regularization (IGR) [Cao (2024)](references.md) | +| `igr_order` | Integer | Order of reconstruction for IGR [3,5] | +| `alf_factor` | Real | Alpha factor for IGR entropic pressure (default 10) | +| `igr_pres_lim` | Logical | Limit IGR pressure to avoid negative values (default F) | +| `igr_iter_solver` | Integer | Solution method for IGR elliptic solve [1] Jacobi [2] Gauss-Seidel | +| `num_igr_iters` | Integer | Number of iterations for for the IGR elliptic solve (default 2) | | `num_igr_warm_start_iters` | Integer | Number of iterations for the IGR elliptic solve at the first time step (default 50) | - \* Options that work only with `model_eqns = 2`. @@ -566,57 +575,57 @@ To restart the simulation from $k$-th time step, see [Restarting Cases](running. ### 7. Formatted Output -| Parameter | Type | Description | -| ---: | :----: | :--- | -| `format` | Integer | Output format. [1]: Silo-HDF5; [2] Binary | -| `precision` | Integer | [1] Single; [2] Double | -| `parallel_io` | Logical | Parallel I/O | -| `file_per_process` | Logical | Whether or not to write one IO file per process | -| `cons_vars_wrt` | Logical | Write conservative variables | -| `prim_vars_wrt` | Logical | Write primitive variables | -| `alpha_rho_wrt(i)` | Logical | Add the partial density of the fluid $i$ to the database \| -| `rho_wrt` | Logical | Add the mixture density to the database | -| `mom_wrt(i)` | Logical | Add the $i$-direction momentum to the database | -| `vel_wrt(i)` | Logical | Add the $i$-direction velocity to the database | -| `E_wrt` | Logical | Add the total energy to the database | -| `pres_wrt` | Logical | Add the pressure to the database | -| `alpha_wrt(i)` | Logical | Add the volume fraction of fluid $i$ to the database | -| `gamma_wrt` | Logical | Add the specific heat ratio function to the database | -| `heat_ratio_wrt` | Logical | Add the specific heat ratio to the database | -| `pi_inf_wrt` | Logical | Add the liquid stiffness function to the database | -| `pres_inf_wrt` | Logical | Add the liquid stiffness to the formatted database | -| `c_wrt` | Logical | Add the sound speed to the database | -| `omega_wrt(i)` | Logical | Add the $i$-direction vorticity to the database | -| `schlieren_wrt` | Logical | Add the numerical schlieren to the database| -| `qm_wrt` | Logical | Add the Q-criterion to the database| -| `liutex_wrt` | Logical | Add the Liutex to the database| -| `tau_wrt` | Logical | Add the elastic stress components to the database| -| `fd_order` | Integer | Order of finite differences for computing the vorticity and the numerical Schlieren function [1,2,4] | -| `schlieren_alpha(i)` | Real | Intensity of the numerical Schlieren computed via `alpha(i)` | -| `probe_wrt` | Logical | Write the flow chosen probes data files for each time step | -| `num_probes` | Integer | Number of probes | -| `probe(i)%[x,y,z]` | Real | Coordinates of probe $i$ | +| Parameter | Type | Description | +| ---: | :----: | :--- | +| `format` | Integer | Output format. [1]: Silo-HDF5; [2] Binary | +| `precision` | Integer | [1] Single; [2] Double | +| `parallel_io` | Logical | Parallel I/O | +| `file_per_process` | Logical | Whether or not to write one IO file per process | +| `cons_vars_wrt` | Logical | Write conservative variables | +| `prim_vars_wrt` | Logical | Write primitive variables | +| `alpha_rho_wrt(i)` | Logical | Add the partial density of the fluid $i$ to the database \| +| `rho_wrt` | Logical | Add the mixture density to the database | +| `mom_wrt(i)` | Logical | Add the $i$-direction momentum to the database | +| `vel_wrt(i)` | Logical | Add the $i$-direction velocity to the database | +| `E_wrt` | Logical | Add the total energy to the database | +| `pres_wrt` | Logical | Add the pressure to the database | +| `alpha_wrt(i)` | Logical | Add the volume fraction of fluid $i$ to the database | +| `gamma_wrt` | Logical | Add the specific heat ratio function to the database | +| `heat_ratio_wrt` | Logical | Add the specific heat ratio to the database | +| `pi_inf_wrt` | Logical | Add the liquid stiffness function to the database | +| `pres_inf_wrt` | Logical | Add the liquid stiffness to the formatted database | +| `c_wrt` | Logical | Add the sound speed to the database | +| `omega_wrt(i)` | Logical | Add the $i$-direction vorticity to the database | +| `schlieren_wrt` | Logical | Add the numerical schlieren to the database| +| `qm_wrt` | Logical | Add the Q-criterion to the database| +| `liutex_wrt` | Logical | Add the Liutex to the database| +| `tau_wrt` | Logical | Add the elastic stress components to the database| +| `fd_order` | Integer | Order of finite differences for computing the vorticity and the numerical Schlieren function [1,2,4] | +| `schlieren_alpha(i)` | Real | Intensity of the numerical Schlieren computed via `alpha(i)` | +| `probe_wrt` | Logical | Write the flow chosen probes data files for each time step | +| `num_probes` | Integer | Number of probes | +| `probe(i)%[x,y,z]` | Real | Coordinates of probe $i$ | | `output_partial_domain` | Logical | Output part of the domain | -| `[x,y,z]_output%beg` | Real | Beginning of the output domain in the [x,y,z]-direction | -| `[x,y,z]_output%end` | Real | End of the output domain in the [x,y,z]-direction | -| `lag_txt_wrt` | Logical | Write Lagrangian bubble data to `.dat` files | -| `lag_header` | Logical | Write header to Lagrangian bubble `.dat` files | -| `lag_db_wrt` | Logical | Write Lagrangian bubble data to silo/hdf5 database files | -| `lag_id_wrt` | Logical | Add the global bubble idea to the database file | -| `lag_pos_wrt` | Logical | Add the bubble position to the database file | -| `lag_pos_prev_wrt` | Logical | Add the previous bubble position to the database file | -| `lag_vel_wrt` | Logical | Add the bubble translational velocity to the database file | -| `lag_rad_wrt` | Logical | Add the bubble radius to the database file | -| `lag_rvel_wrt` | Logical | Add the bubble radial velocity to the database file | -| `lag_r0_wrt` | Logical | Add the bubble initial radius to the database file | -| `lag_rmax_wrt` | Logical | Add the bubble maximum radius to the database file | -| `lag_rmin_wrt` | Logical | Add the bubble minimum radius to the database file | -| `lag_dphidt_wrt` | Logical | Add the bubble subgrid velocity potential to the database file | -| `lag_pres_wrt` | Logical | Add the bubble pressure to the database file | -| `lag_mv_wrt` | Logical | Add the bubble vapor mass to the database file | -| `lag_mg_wrt` | Logical | Add the bubble gas mass to the database file | -| `lag_betaT_wrt` | Logical | Add the bubble heat flux model coefficient to the database file | -| `lag_betaC_wrt` | Logical | Add the bubble mass flux model coefficient to the database file | +| `[x,y,z]_output%beg` | Real | Beginning of the output domain in the [x,y,z]-direction | +| `[x,y,z]_output%end` | Real | End of the output domain in the [x,y,z]-direction | +| `lag_txt_wrt` | Logical | Write Lagrangian bubble data to `.dat` files | +| `lag_header` | Logical | Write header to Lagrangian bubble `.dat` files | +| `lag_db_wrt` | Logical | Write Lagrangian bubble data to silo/hdf5 database files | +| `lag_id_wrt` | Logical | Add the global bubble idea to the database file | +| `lag_pos_wrt` | Logical | Add the bubble position to the database file | +| `lag_pos_prev_wrt` | Logical | Add the previous bubble position to the database file | +| `lag_vel_wrt` | Logical | Add the bubble translational velocity to the database file | +| `lag_rad_wrt` | Logical | Add the bubble radius to the database file | +| `lag_rvel_wrt` | Logical | Add the bubble radial velocity to the database file | +| `lag_r0_wrt` | Logical | Add the bubble initial radius to the database file | +| `lag_rmax_wrt` | Logical | Add the bubble maximum radius to the database file | +| `lag_rmin_wrt` | Logical | Add the bubble minimum radius to the database file | +| `lag_dphidt_wrt` | Logical | Add the bubble subgrid velocity potential to the database file | +| `lag_pres_wrt` | Logical | Add the bubble pressure to the database file | +| `lag_mv_wrt` | Logical | Add the bubble vapor mass to the database file | +| `lag_mg_wrt` | Logical | Add the bubble gas mass to the database file | +| `lag_betaT_wrt` | Logical | Add the bubble heat flux model coefficient to the database file | +| `lag_betaC_wrt` | Logical | Add the bubble mass flux model coefficient to the database file | The table lists formatted database output parameters. The parameters define variables that are outputted from simulation and file types and formats of data as well as options for post-processing. @@ -769,23 +778,23 @@ Implementation of the parameters into the model follow [Ando (2010)](references. #### 9.1 Ensemble-Averaged Bubble Model -| Parameter | Type | Description | -| ---: | :----: | :--- | -| `bubbles_euler`| Logical | Ensemble-averaged bubble modeling | +| Parameter . | Type | Description | +| ---: . | :----: | :--- | +| `bubbles_euler`. | Logical | Ensemble-averaged bubble modeling | | `polytropic` | Logical | Polytropic gas compression | | `thermal` | Integer | Thermal model: [1] Adiabatic; [2] Isothermal; [3] Transfer | -| `R0ref` | Real | Reference bubble radius | -| `polydisperse` | Logical | Polydispersity in equilibrium bubble radius R0 | -| `nb` | Integer | Number of bins: [1] Monodisperse; [$>1$] Polydisperse | -| `poly_sigma` | Real | Standard deviation for probability density function of polydisperse bubble populations | -| `Ca` | Real | Cavitation number | -| `Web` | Real | Weber number | -| `Re_inv` | Real | Inverse Reynolds number | -| `qbmm` | Logical | Quadrature by method of moments | -| `dist_type` | Integer | Joint probability density function for bubble radius and velocity (only for ``qbmm = 'T'``) | -| `sigR` | Real | Standard deviation for the probability density function of bubble radius (only for ``qbmm = 'T'``) (EE)| -| `sigV` | Real | Standard deviation for the probability density function of bubble velocity (only for ``qbmm = 'T'``) (EE)| -| `rhoRV` | Real | Correlation coefficient for the joint probability density function of bubble radius and velocity (only for ``qbmm = 'T'``) | +| `R0ref` | Real | Reference bubble radius | +| `polydisperse` | Logical | Polydispersity in equilibrium bubble radius R0 | +| `nb` | Integer | Number of bins: [1] Monodisperse; [$>1$] Polydisperse | +| `poly_sigma` | Real | Standard deviation for probability density function of polydisperse bubble populations | +| `Ca` | Real | Cavitation number | +| `Web` | Real | Weber number | +| `Re_inv` | Real | Inverse Reynolds number | +| `qbmm` | Logical | Quadrature by method of moments | +| `dist_type` | Integer | Joint probability density function for bubble radius and velocity (only for ``qbmm = 'T'``) | +| `sigR` | Real | Standard deviation for the probability density function of bubble radius (only for ``qbmm = 'T'``) (EE)| +| `sigV` | Real | Standard deviation for the probability density function of bubble velocity (only for ``qbmm = 'T'``) (EE)| +| `rhoRV` | Real | Correlation coefficient for the joint probability density function of bubble radius and velocity (only for ``qbmm = 'T'``) | This table lists the ensemble-averaged bubble model parameters. @@ -890,7 +899,7 @@ $$ u = \mbox{patch\_icpp(1)\%vel(1)} * \tanh( y_{cc} * \mbox{mixlayer\_vel\_coef | `relax` | Logical | Activates Phase Change model | | `relax_model` | Integer | Phase change model: [5] pT-equilibrium; [6] pTg-equilibrium | | `palpha_eps` | Real | tolerance of the Newton Solver to activate pT-equilibrium | -| `ptgalpha_eps` | Real | tolerance of the Newton Solver to activate pTg-equilibrium | +| `ptgalpha_eps` | Real | tolerance of the Newton Solver to activate pTg-equilibrium | - `relax` Activates the Phase Change model. @@ -1026,29 +1035,29 @@ This boundary condition can be used for subsonic inflow (`bc_[x,y,z]%[beg,end]` ### Patch types -| # | Name | Dim. | Smooth | Description | -| ---: | :----: | :---: | :---: | :--- | -| 1 | Line segment | 1 | N | Requires `x_centroid` and `length_x`. | -| 2 | Circle | 2 | Y | Requires `[x,y]_centroid` and `radius`. | -| 3 | Rectangle | 2 | N | Coordinate-aligned. Requires `[x,y]_centroid` and `length_[x,y]`. | -| 4 | Sweep line | 2 | Y | Not coordinate aligned. Requires `[x,y]_centroid` and `normal(i)`. | -| 5 | Ellipse | 2 | Y | Requires `[x,y]_centroid` and `radii(i)`. | -| 6 | N/A | N/A | N/A | No longer exists. Empty. | -| 7 | N/A | N/A | N/A | No longer exists. Empty. | -| 8 | Sphere | 3 | Y | Requires `[x,y,z]_centroid` and `radius` | -| 9 | Cuboid | 3 | N | Coordinate-aligned. Requires `[x,y,z]_centroid` and `length_[x,y,z]`. | -| 10 | Cylinder | 3 | Y | Requires `[x,y,z]_centroid`, `radius`, and `length_[x,y,z]`. | -| 11 | Sweep plane | 3 | Y | Not coordinate-aligned. Requires `x[y,z]_centroid` and `normal(i)`. | -| 12 | Ellipsoid | 3 | Y | Requires `[x,y,z]_centroid` and `radii(i)`. | -| 13 | N/A | N/A | N/A | No longer exists. Empty. | -| 14 | Spherical Harmonic | 3 | N | Requires `[x,y,z]_centroid`, `radius`, `epsilon`, `beta` | -| 15 | N/A | N/A | N/A | No longer exists. Empty. | -| 16 | 1D bubble pulse | 1 | N | Requires `x_centroid`, `length_x` | -| 17 | Spiral | 2 | N | Requires `[x,y]_centroid` | -| 18 | 2D Varcircle | 2 | Y | Requires `[x,y]_centroid`, `radius`, and `thickness` | -| 19 | 3D Varcircle | 3 | Y | Requires `[x,y,z]_centroid`, `length_z`, `radius`, and `thickness` | -| 20 | 2D Taylor-Green Vortex | 2 | N | Requires `[x,y]_centroid`, `length_x`, `length_y`, `vel(1)`, and `vel(2)` | -| 21 | Model | 2 & 3 | Y | Imports a Model (STL/OBJ). Requires `model%%filepath`. | +| # | Name | Dim. | Smooth | Description | +| ---: | :----: | :---: | :---: | :--- | +| 1 | Line segment | 1 | N | Requires `x_centroid` and `length_x`. | +| 2 | Circle | 2 | Y | Requires `[x,y]_centroid` and `radius`. | +| 3 | Rectangle | 2 | N | Coordinate-aligned. Requires `[x,y]_centroid` and `length_[x,y]`. | +| 4 | Sweep line | 2 | Y | Not coordinate aligned. Requires `[x,y]_centroid` and `normal(i)`. | +| 5 | Ellipse | 2 | Y | Requires `[x,y]_centroid` and `radii(i)`. | +| 6 | N/A | N/A | N/A | No longer exists. Empty. | +| 7 | N/A | N/A | N/A | No longer exists. Empty. | +| 8 | Sphere | 3 | Y | Requires `[x,y,z]_centroid` and `radius` | +| 9 | Cuboid | 3 | N | Coordinate-aligned. Requires `[x,y,z]_centroid` and `length_[x,y,z]`. | +| 10 | Cylinder | 3 | Y | Requires `[x,y,z]_centroid`, `radius`, and `length_[x,y,z]`. | +| 11 | Sweep plane | 3 | Y | Not coordinate-aligned. Requires `x[y,z]_centroid` and `normal(i)`. | +| 12 | Ellipsoid | 3 | Y | Requires `[x,y,z]_centroid` and `radii(i)`. | +| 13 | N/A | N/A | N/A | No longer exists. Empty. | +| 14 | Spherical Harmonic | 3 | N | Requires `[x,y,z]_centroid`, `radius`, `epsilon`, `beta` | +| 15 | N/A | N/A | N/A | No longer exists. Empty. | +| 16 | 1D bubble pulse | 1 | N | Requires `x_centroid`, `length_x` | +| 17 | Spiral | 2 | N | Requires `[x,y]_centroid` | +| 18 | 2D Varcircle | 2 | Y | Requires `[x,y]_centroid`, `radius`, and `thickness` | +| 19 | 3D Varcircle | 3 | Y | Requires `[x,y,z]_centroid`, `length_z`, `radius`, and `thickness` | +| 20 | 2D Taylor-Green Vortex | 2 | N | Requires `[x,y]_centroid`, `length_x`, `length_y`, `vel(1)`, and `vel(2)` | +| 21 | Model | 2 & 3 | Y | Imports a Model (STL/OBJ). Requires `model%%filepath`. | The patch types supported by the MFC are listed in table [Patch Types](#patch-types). This includes types exclusive to one-, two-, and three-dimensional problems. diff --git a/examples/2D_mibm_cylinder_in_cross_flow/case.py b/examples/2D_mibm_cylinder_in_cross_flow/case.py new file mode 100644 index 000000000..07adb3b49 --- /dev/null +++ b/examples/2D_mibm_cylinder_in_cross_flow/case.py @@ -0,0 +1,105 @@ +import json +import math + +Mu = 1.84e-05 +gam_a = 1.4 + +# Configuring case dictionary +print( + json.dumps( + { + # Logistics + "run_time_info": "T", + # Computational Domain Parameters + # For these computations, the cylinder is placed at the (0,0,0) + # domain origin. + # axial direction + "x_domain%beg": 0.0e00, + "x_domain%end": 6.0e-03, + # r direction + "y_domain%beg": 0.0e00, + "y_domain%end": 6.0e-03, + "cyl_coord": "F", + "m": 200, + "n": 200, + "p": 0, + "dt": 6.0e-6, + "t_step_start": 0, + "t_step_stop": 10000, # 10000, + "t_step_save": 100, + # Simulation Algorithm Parameters + # Only one patches are necessary, the air tube + "num_patches": 1, + # Use the 5 equation model + "model_eqns": 2, + "alt_soundspeed": "F", + # One fluids: air + "num_fluids": 1, + # time step + "mpp_lim": "F", + # Correct errors when computing speed of sound + "mixture_err": "T", + # Use TVD RK3 for time marching + "time_stepper": 3, + # Use WENO5 + "weno_order": 5, + "weno_eps": 1.0e-16, + "weno_Re_flux": "T", + "weno_avg": "T", + "avg_state": 2, + "mapped_weno": "T", + "null_weights": "F", + "mp_weno": "T", + "riemann_solver": 2, + "wave_speeds": 1, + # We use ghost-cell + "bc_x%beg": -3, + "bc_x%end": -3, + "bc_y%beg": -3, + "bc_y%end": -3, + # Set IB to True and add 1 patch + "ib": "T", + "num_ibs": 1, + "viscous": "T", + # Formatted Database Files Structure Parameters + "format": 1, + "precision": 2, + "prim_vars_wrt": "T", + "E_wrt": "T", + "parallel_io": "T", + # Patch: Constant Tube filled with air + # Specify the cylindrical air tube grid geometry + "patch_icpp(1)%geometry": 3, + "patch_icpp(1)%x_centroid": 3.0e-03, + # Uniform medium density, centroid is at the center of the domain + "patch_icpp(1)%y_centroid": 3.0e-03, + "patch_icpp(1)%length_x": 6.0e-03, + "patch_icpp(1)%length_y": 6.0e-03, + # Specify the patch primitive variables + "patch_icpp(1)%vel(1)": 0.05e00, + "patch_icpp(1)%vel(2)": 0.0e00, + "patch_icpp(1)%pres": 1.0e00, + "patch_icpp(1)%alpha_rho(1)": 1.0e00, + "patch_icpp(1)%alpha(1)": 1.0e00, + # Patch: Cylinder Immersed Boundary + "patch_ib(1)%geometry": 2, + "patch_ib(1)%x_centroid": 1.5e-03, + "patch_ib(1)%y_centroid": 4.5e-03, + "patch_ib(1)%radius": 0.3e-03, + "patch_ib(1)%slip": "F", + "patch_ib(1)%moving_ibm": 2, + "patch_ib(1)%vel(2)": -0.1, + "patch_ib(1)%angles(1)": 0.0, # x-axis rotation in radians + "patch_ib(1)%angles(2)": 0.0, # y-axis rotation + "patch_ib(1)%angles(3)": 0.0, # z-axis rotation + "patch_ib(1)%angular_vel(1)": 0.0, # x-axis rotational velocity in radians per second + "patch_ib(1)%angular_vel(2)": 0.0, # y-axis rotation + "patch_ib(1)%angular_vel(3)": 0.0, # z-axis rotation + "patch_ib(1)%mass": 1.0e-6, # z-axis rotation + # Fluids Physical Parameters + "fluid_pp(1)%gamma": 1.0e00 / (gam_a - 1.0e00), # 2.50(Not 1.40) + "fluid_pp(1)%pi_inf": 0, + "fluid_pp(1)%Re(1)": 2500000, + } + ) +) diff --git a/src/common/m_derived_types.fpp b/src/common/m_derived_types.fpp index 3b4bfcf17..1d82405c6 100644 --- a/src/common/m_derived_types.fpp +++ b/src/common/m_derived_types.fpp @@ -332,6 +332,8 @@ module m_derived_types !! Patch conditions for moving imersed boundaries integer :: moving_ibm ! 0 for no moving, 1 for moving, 2 for moving on forced path + real(wp) :: mass, moment ! mass and moment of inertia of object used to compute forces in 2-way coupling + real(wp), dimension(1:3) :: force, torque ! vectors for the computed force and torque values applied to an IB real(wp), dimension(1:3) :: vel real(wp), dimension(1:3) :: step_vel ! velocity array used to store intermediate steps in the time_stepper module real(wp), dimension(1:3) :: angular_vel diff --git a/src/common/m_mpi_common.fpp b/src/common/m_mpi_common.fpp index 905b21570..311073d2d 100644 --- a/src/common/m_mpi_common.fpp +++ b/src/common/m_mpi_common.fpp @@ -472,6 +472,32 @@ contains end subroutine s_mpi_allreduce_sum + !> This subroutine follows the behavior of the s_mpi_allreduce_sum subroutine + !> with the additional feature that it reduces an array of vectors. + impure subroutine s_mpi_allreduce_vectors_sum(var_loc, var_glb, num_vectors, vector_length) + + integer, intent(in) :: num_vectors, vector_length + real(wp), dimension(:, :), intent(in) :: var_loc + real(wp), dimension(:, :), intent(out) :: var_glb + +#ifdef MFC_MPI + integer :: ierr !< Generic flag used to identify and report MPI errors + + ! Performing the reduction procedure + if (loc(var_loc) == loc(var_glb)) then + call MPI_Allreduce(MPI_IN_PLACE, var_glb, num_vectors*vector_length, & + mpi_p, MPI_SUM, MPI_COMM_WORLD, ierr) + else + call MPI_Allreduce(var_loc, var_glb, num_vectors*vector_length, & + mpi_p, MPI_SUM, MPI_COMM_WORLD, ierr) + end if + +#else + var_glb(1:num_vectors, 1:vector_length) = var_loc(1:num_vectors, 1:vector_length) +#endif + + end subroutine s_mpi_allreduce_vectors_sum + !> The following subroutine takes the input local variable !! from all processors and reduces to the sum of all !! values. The reduced variable is recorded back onto the diff --git a/src/pre_process/m_global_parameters.fpp b/src/pre_process/m_global_parameters.fpp index 9845def8d..dc2ed9ac7 100644 --- a/src/pre_process/m_global_parameters.fpp +++ b/src/pre_process/m_global_parameters.fpp @@ -560,6 +560,8 @@ contains patch_ib(i)%vel(:) = 0._wp patch_ib(i)%angles(:) = 0._wp patch_ib(i)%angular_vel(:) = 0._wp + patch_ib(i)%mass = dflt_real + patch_ib(i)%moment = dflt_real ! sets values of a rotation matrix which can be used when calculating rotations patch_ib(i)%rotation_matrix = 0._wp diff --git a/src/simulation/m_ibm.fpp b/src/simulation/m_ibm.fpp index aff2a1882..14cc26dd5 100644 --- a/src/simulation/m_ibm.fpp +++ b/src/simulation/m_ibm.fpp @@ -101,7 +101,6 @@ contains end if call s_update_ib_rotation_matrix(i) end do - $:GPU_ENTER_DATA(copyin='[patch_ib]') ! Allocating the patch identities bookkeeping variable @@ -197,6 +196,19 @@ contains type(ghost_point) :: gp type(ghost_point) :: innerp + ! set the Moving IBM interior Pressure Values + $:GPU_PARALLEL_LOOP(private='[i,j,k]', copyin='[E_idx]', collapse=3) + do l = 0, p + do k = 0, n + do j = 0, m + if (ib_markers%sf(j, k, l) /= 0) then + q_prim_vf(E_idx)%sf(j, k, l) = 1._wp + end if + end do + end do + end do + $:END_GPU_PARALLEL_LOOP() + if (num_gps > 0) then $:GPU_PARALLEL_LOOP(private='[i,physical_loc,dyn_pres,alpha_rho_IP, alpha_IP,pres_IP,vel_IP,vel_g,vel_norm_IP,r_IP, v_IP,pb_IP,mv_IP,nmom_IP,presb_IP,massv_IP,rho, gamma,pi_inf,Re_K,G_K,Gs,gp,innerp,norm,buf, radial_vector, rotation_velocity, j,k,l,q,qv_K,c_IP,nbub,patch_id]') do i = 1, num_gps @@ -244,6 +256,18 @@ contains if (surface_tension) then q_prim_vf(c_idx)%sf(j, k, l) = c_IP end if + + ! set the pressure + if (patch_ib(patch_id)%moving_ibm == 0) then + q_prim_vf(E_idx)%sf(j, k, l) = pres_IP + else + q_prim_vf(E_idx)%sf(j, k, l) = 0._wp + $:GPU_LOOP(parallelism='[seq]') + do q = 1, num_fluids + q_prim_vf(E_idx)%sf(j, k, l) = q_prim_vf(E_idx)%sf(j, k, l) + pres_IP/(1._wp - 2._wp*abs(levelset%sf(j, k, l, patch_id)*alpha_rho_IP(q)/pres_IP)*dot_product(patch_ib(patch_id)%force/patch_ib(patch_id)%mass, levelset_norm%sf(j, k, l, patch_id, :))) + end do + end if + if (model_eqns /= 4) then ! If in simulation, use acc mixture subroutines if (elasticity) then @@ -969,6 +993,78 @@ contains end subroutine s_update_mib + ! compute the surface integrals of the IB via a volume integraion method described in + ! "A coupled IBM/Euler-Lagrange framework for simulating shock-induced particle size segregation" + ! by Archana Sridhar and Jesse Capecelatro + subroutine s_compute_ib_forces(pressure) + + real(wp), dimension(0:m, 0:n, 0:p), intent(in) :: pressure + + integer :: i, j, k, ib_idx + real(wp), dimension(num_ibs, 3) :: forces, torques + real(wp), dimension(1:3) :: pressure_divergence, radial_vector + real(wp) :: cell_volume, dx, dy, dz + + forces = 0._wp + torques = 0._wp + + ! TODO :: This is currently only valid inviscid, and needs to be extended to add viscocity + $:GPU_PARALLEL_LOOP(private='[ib_idx,radial_vector,pressure_divergence,cell_volume, dx, dy, dz]', copy='[forces,torques]', copyin='[ib_markers]', collapse=3) + do i = 0, m + do j = 0, n + do k = 0, p + ib_idx = ib_markers%sf(i, j, k) + if (ib_idx /= 0) then ! only need to compute the gradient for cells inside a IB + if (patch_ib(ib_idx)%moving_ibm == 2) then ! make sure that this IB has 2-way coupling enabled + ! get the vector pointing to the grid cell from the IB centroid + if (num_dims == 3) then + radial_vector = [x_cc(i), y_cc(j), z_cc(k)] - [patch_ib(ib_idx)%x_centroid, patch_ib(ib_idx)%y_centroid, patch_ib(ib_idx)%z_centroid] + else + radial_vector = [x_cc(i), y_cc(j), 0._wp] - [patch_ib(ib_idx)%x_centroid, patch_ib(ib_idx)%y_centroid, 0._wp] + end if + dx = x_cc(i + 1) - x_cc(i) + dy = y_cc(j + 1) - y_cc(j) + + ! use a finite difference to compute the 2D components of the gradient of the pressure and cell volume + pressure_divergence(1) = (pressure(i + 1, j, k) - pressure(i - 1, j, k))/(2._wp*dx) + pressure_divergence(2) = (pressure(i, j + 1, k) - pressure(i, j - 1, k))/(2._wp*dy) + cell_volume = dx*dy + + ! add the 3D component, if we are working in 3 dimensions + if (num_dims == 3) then + dz = z_cc(k + 1) - z_cc(k) + pressure_divergence(3) = (pressure(i, j, k + 1) - pressure(i, j, k - 1))/(2._wp*dz) + cell_volume = cell_volume*dz + else + pressure_divergence(3) = 0._wp + end if + + ! Update the force values atomically to prevent race conditions + $:GPU_ATOMIC(atomic='update') + forces(ib_idx, :) = forces(ib_idx, :) - (pressure_divergence*cell_volume) + $:GPU_ATOMIC(atomic='update') + torques(ib_idx, :) = torques(ib_idx, :) - (cross_product(radial_vector, pressure_divergence)*cell_volume) + end if + end if + end do + end do + end do + $:END_GPU_PARALLEL_LOOP() + + ! reduce the forces across all MPI ranks + call s_mpi_allreduce_vectors_sum(forces, forces, num_ibs, 3) + call s_mpi_allreduce_vectors_sum(torques, torques, num_ibs, 3) + + ! apply the summed forces + do i = 1, num_ibs + patch_ib(i)%force(:) = forces(i, :) + patch_ib(i)%torque(:) = matmul(patch_ib(i)%rotation_matrix_inverse, torques(i, :)) ! torques must be computed in the local coordinates of the IB + end do + + print *, forces(1, 1:2) + + end subroutine s_compute_ib_forces + !> Subroutine to deallocate memory reserved for the IBM module impure subroutine s_finalize_ibm_module() @@ -978,6 +1074,77 @@ contains end subroutine s_finalize_ibm_module + subroutine s_compute_moment_of_inertia(ib_marker, axis) + + real(wp), dimension(3), optional :: axis !< the axis about which we compute the moment. Only required in 3D. + integer, intent(in) :: ib_marker + + real(wp) :: moment, distance_to_axis, cell_volume + real(wp), dimension(3) :: position, closest_point_along_axis, vector_to_axis + integer :: i, j, k, count + + if (p == 0) then + axis = [0, 1, 0] + else if (sqrt(sum(axis**2)) == 0) then + ! if the object is not actually rotating at this time, return a dummy value and exit + patch_ib(ib_marker)%moment = 1._wp + return + else + axis = axis/sqrt(sum(axis)) + end if + + ! if the IB is in 2D or a 3D sphere, we can compute this exactly + if (patch_ib(ib_marker)%geometry == 2) then ! circle + patch_ib(ib_marker)%moment = 0.5*patch_ib(ib_marker)%mass*(patch_ib(ib_marker)%radius)**2 + elseif (patch_ib(ib_marker)%geometry == 3) then ! rectangle + patch_ib(ib_marker)%moment = patch_ib(ib_marker)%mass*(patch_ib(ib_marker)%length_x**2 + patch_ib(ib_marker)%length_y**2)/6._wp + elseif (patch_ib(ib_marker)%geometry == 8) then ! sphere + patch_ib(ib_marker)%moment = 0.4*patch_ib(ib_marker)%mass*(patch_ib(ib_marker)%radius)**2 + + else ! we do not have an analytic moment of inertia calculation and need to approximate it directly + count = 0 + moment = 0._wp + cell_volume = (x_cc(1) - x_cc(0))*(y_cc(1) - y_cc(0)) ! computed without grid stretching. Update in the loop to perform with stretching + if (p /= 0) then + cell_volume = cell_volume*(z_cc(1) - z_cc(0)) + end if + + $:GPU_PARALLEL_LOOP(private='[position,closest_point_along_axis,vector_to_axis,distance_to_axis]', copy='[moment,count]', copyin='[ib_marker,cell_volume,axis]', collapse=3) + do i = 0, m + do j = 0, n + do k = 0, p + if (ib_markers%sf(i, j, k) == ib_marker) then + $:GPU_ATOMIC(atomic='update') + count = count + 1 ! increment the count of total cells in the boundary + + ! get the position in local coordinates so that the axis passes through 0, 0, 0 + if (p == 0) then + position = [x_cc(i), y_cc(j), 0._wp] - [patch_ib(ib_marker)%x_centroid, patch_ib(ib_marker)%y_centroid, 0._wp] + else + position = [x_cc(i), y_cc(j), z_cc(k)] - [patch_ib(ib_marker)%x_centroid, patch_ib(ib_marker)%y_centroid, patch_ib(ib_marker)%z_centroid] + end if + + ! project the position along the axis to find the closest distance to the rotation axis + closest_point_along_axis = axis*dot_product(axis, position) + vector_to_axis = position - closest_point_along_axis + distance_to_axis = dot_product(vector_to_axis, vector_to_axis) ! saves the distance to the axis squared + + ! compute the position component of the moment + $:GPU_ATOMIC(atomic='update') + moment = moment + distance_to_axis + end if + end do + end do + end do + $:END_GPU_PARALLEL_LOOP() + + ! write the final moment assuming the points are all uniform density + patch_ib(ib_marker)%moment = moment*patch_ib(ib_marker)%mass/(count*cell_volume) + $:GPU_UPDATE(device='[patch_ib(ib_marker)%moment]') + end if + + end subroutine s_compute_moment_of_inertia + function cross_product(a, b) result(c) implicit none real(wp), intent(in) :: a(3), b(3) diff --git a/src/simulation/m_mpi_proxy.fpp b/src/simulation/m_mpi_proxy.fpp index 9f19c9f27..131c8ebed 100644 --- a/src/simulation/m_mpi_proxy.fpp +++ b/src/simulation/m_mpi_proxy.fpp @@ -203,7 +203,7 @@ contains do i = 1, num_ibs #:for VAR in [ 'radius', 'length_x', 'length_y', 'length_z', & - & 'x_centroid', 'y_centroid', 'z_centroid', 'c', 'm', 'p', 't', 'theta', 'slip'] + & 'x_centroid', 'y_centroid', 'z_centroid', 'c', 'm', 'p', 't', 'theta', 'slip', 'mass'] call MPI_BCAST(patch_ib(i)%${VAR}$, 1, mpi_p, 0, MPI_COMM_WORLD, ierr) #:endfor #:for VAR in ['vel', 'angular_vel', 'angles'] diff --git a/src/simulation/m_time_steppers.fpp b/src/simulation/m_time_steppers.fpp index f77666f81..ba5586152 100644 --- a/src/simulation/m_time_steppers.fpp +++ b/src/simulation/m_time_steppers.fpp @@ -611,6 +611,8 @@ contains if (ib) then ! check if any IBMS are moving, and if so, update the markers, ghost points, levelsets, and levelset norms if (moving_immersed_boundary_flag) then + call s_compute_ib_forces(q_prim_vf(E_idx)%sf(0:m, 0:n, 0:p)) ! compute the force and torque on the IB from the fluid + do i = 1, num_ibs if (s == 1) then patch_ib(i)%step_vel = patch_ib(i)%vel @@ -621,14 +623,22 @@ contains patch_ib(i)%step_z_centroid = patch_ib(i)%z_centroid end if - if (patch_ib(i)%moving_ibm == 1) then - do j = 1, 3 - patch_ib(i)%vel(j) = (rk_coef(s, 1)*patch_ib(i)%step_vel(j) + rk_coef(s, 2)*patch_ib(i)%vel(j) + rk_coef(s, 3)*0._wp*dt)/rk_coef(s, 4) ! 0.0 is a placeholder for accelerations - patch_ib(i)%angular_vel(j) = (rk_coef(s, 1)*patch_ib(i)%step_angular_vel(j) + rk_coef(s, 2)*patch_ib(i)%angular_vel(j) + rk_coef(s, 3)*0._wp*dt)/rk_coef(s, 4) + if (patch_ib(i)%moving_ibm > 0) then + patch_ib(i)%vel = (rk_coef(s, 1)*patch_ib(i)%step_vel + rk_coef(s, 2)*patch_ib(i)%vel)/rk_coef(s, 4) + patch_ib(i)%angular_vel = (rk_coef(s, 1)*patch_ib(i)%step_angular_vel + rk_coef(s, 2)*patch_ib(i)%angular_vel)/rk_coef(s, 4) - ! Update the angle of the IB - patch_ib(i)%angles(j) = (rk_coef(s, 1)*patch_ib(i)%step_angles(j) + rk_coef(s, 2)*patch_ib(i)%angles(j) + rk_coef(s, 3)*patch_ib(i)%angular_vel(j)*dt)/rk_coef(s, 4) - end do + if (patch_ib(i)%moving_ibm == 2) then ! if we are using two-way coupling, apply force and torque + ! update the velocity from the force value + patch_ib(i)%vel = patch_ib(i)%vel + rk_coef(s, 3)*dt*(patch_ib(i)%force/patch_ib(i)%mass)/rk_coef(s, 4) + + ! update the angular velocity with the torque value + patch_ib(i)%angular_vel = (patch_ib(i)%angular_vel*patch_ib(i)%moment) + (rk_coef(s, 3)*dt*patch_ib(i)%torque/rk_coef(s, 4)) ! add the torque to the angular momentum + call s_compute_moment_of_inertia(i, patch_ib(i)%angular_vel) ! update the moment of inertia to be based on the direction of the angular momentum + patch_ib(i)%angular_vel = patch_ib(i)%angular_vel/patch_ib(i)%moment ! convert back to angular velocity with the new moment of inertia + end if + + ! Update the angle of the IB + patch_ib(i)%angles = (rk_coef(s, 1)*patch_ib(i)%step_angles + rk_coef(s, 2)*patch_ib(i)%angles + rk_coef(s, 3)*patch_ib(i)%angular_vel*dt)/rk_coef(s, 4) ! Update the position of the IB patch_ib(i)%x_centroid = (rk_coef(s, 1)*patch_ib(i)%step_x_centroid + rk_coef(s, 2)*patch_ib(i)%x_centroid + rk_coef(s, 3)*patch_ib(i)%vel(1)*dt)/rk_coef(s, 4) diff --git a/tests/127A967A/golden-metadata.txt b/tests/127A967A/golden-metadata.txt new file mode 100644 index 000000000..dcd99ff8f --- /dev/null +++ b/tests/127A967A/golden-metadata.txt @@ -0,0 +1,154 @@ +This file was created on 2025-12-04 18:03:33.497282. + +mfc.sh: + + Invocation: test --only 127A967A --generate + Lock: mpi=Yes & gpu=No & debug=No & gcov=No & unified=No & single=No & mixed=No & fastmath=No + Git: cfe671402d160abd63c80750278f59293e426f85 on forces-via-volume-integrals (dirty) + +post_process: + + CMake Configuration: + + CMake v4.0.3 on oppenheimer + + C : AppleClang v17.0.0.17000013 (/usr/bin/cc) + Fortran : GNU v15.1.0 (/opt/homebrew/bin/gfortran) + + PRE_PROCESS : OFF + SIMULATION : OFF + POST_PROCESS : ON + SYSCHECK : OFF + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : OFF + + Fypp : /Users/dan/Documents/repos/MFC/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : /usr/bin/cc + CXX : /usr/bin/c++ + FC : /opt/homebrew/bin/gfortran + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +pre_process: + + CMake Configuration: + + CMake v4.0.3 on oppenheimer + + C : AppleClang v17.0.0.17000013 (/usr/bin/cc) + Fortran : GNU v15.1.0 (/opt/homebrew/bin/gfortran) + + PRE_PROCESS : ON + SIMULATION : OFF + POST_PROCESS : OFF + SYSCHECK : OFF + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : OFF + + Fypp : /Users/dan/Documents/repos/MFC/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : /usr/bin/cc + CXX : /usr/bin/c++ + FC : /opt/homebrew/bin/gfortran + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +syscheck: + + CMake Configuration: + + CMake v4.0.3 on oppenheimer + + C : AppleClang v17.0.0.17000013 (/usr/bin/cc) + Fortran : GNU v15.1.0 (/opt/homebrew/bin/gfortran) + + PRE_PROCESS : OFF + SIMULATION : OFF + POST_PROCESS : OFF + SYSCHECK : ON + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : OFF + + Fypp : /Users/dan/Documents/repos/MFC/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : /usr/bin/cc + CXX : /usr/bin/c++ + FC : /opt/homebrew/bin/gfortran + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +simulation: + + CMake Configuration: + + CMake v4.0.3 on oppenheimer + + C : AppleClang v17.0.0.17000013 (/usr/bin/cc) + Fortran : GNU v15.1.0 (/opt/homebrew/bin/gfortran) + + PRE_PROCESS : OFF + SIMULATION : ON + POST_PROCESS : OFF + SYSCHECK : OFF + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : OFF + + Fypp : /Users/dan/Documents/repos/MFC/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : /usr/bin/cc + CXX : /usr/bin/c++ + FC : /opt/homebrew/bin/gfortran + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +CPU: + + CPU Info: + From sysctl -a + machdep.cpu.cores_per_package: 8 + machdep.cpu.core_count: 8 + machdep.cpu.logical_per_package: 8 + machdep.cpu.thread_count: 8 + machdep.cpu.brand_string: Apple M2 + diff --git a/tests/127A967A/golden.txt b/tests/127A967A/golden.txt new file mode 100644 index 000000000..315e09180 --- /dev/null +++ b/tests/127A967A/golden.txt @@ -0,0 +1,11 @@ +D/cons.1.00.000000.dat 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 +D/cons.1.00.000050.dat 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.00000000000005 1.00000000000043 1.0000000000026 1.00000000005959 1.0000000024797 1.00000002884774 1.000000268344 1.0000022492814 1.00000881795754 1.00001371840713 1.00000443840522 1.00000090815759 1.00000002163506 0.99999999546873 0.99999999893431 0.99999999995108 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.00000000000003 1.00000000000025 1.00000000000164 1.00000000006741 1.00000000310871 1.00000003909965 1.0000004222109 1.00000388996087 1.00002981279292 1.0001121495435 1.00015970597748 1.00005030821396 1.00000704532692 0.9999997784402 0.99999986746852 0.99999997887725 0.99999999810318 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.00000000000001 1.00000000000013 1.00000000000067 1.00000000004847 1.00000000280479 1.00000003912007 1.00000047005507 1.00000481915722 1.00004304365093 1.00028137348933 1.00098398898122 1.00119247216308 1.00033155648737 1.00002815948502 0.9999925925958 0.99999778158853 0.99999965418174 0.99999997292247 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.00000000000001 1.00000000000006 1.00000000000032 1.00000000002132 1.00000000196692 1.00000003143912 1.00000041066882 1.00000464290624 1.00004509739957 1.00039546155216 1.00236592891775 1.00832050844317 1.0079562335406 1.00121590984065 0.99990565023817 0.9998904135531 0.999973145391 0.99999579630136 0.99999968060331 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.00000000000006 1.00000000000036 1.00000000001091 1.00000000128027 1.00000002163753 1.00000030956655 1.00000388049165 1.00004125758829 1.00034805294784 1.00309002680186 1.01219267889909 1.02200070948297 1.02056773477218 1.00153837617589 0.99651380512362 0.99865459424484 0.99972277713394 0.9999679841293 0.99999724213128 1.0 1.0 1.0 1.0 1.0 1.0 1.00000000000001 1.00000000000006 1.00000000000021 1.00000000037969 1.00000000754417 1.00000011387846 1.00000151935601 1.00001734990726 1.0001660790427 1.00126282138318 1.0108139412836 1.03206067147984 1.05300862232409 1.01339376889326 0.98106287485993 0.98433200323471 0.99433836821428 0.99898659544772 0.99986984774938 0.99998812397824 1.0 1.0 1.0 1.0 1.0 1.0 1.00000000000001 1.00000000000008 1.00000000000506 1.00000000123552 1.00000002035061 1.00000029939552 1.00000381817864 1.00004112973825 1.0003659128127 1.00269997063055 1.01799970198972 1.04080379540375 1.04076142972022 0.97385083642864 0.97350359935548 0.96732167119668 0.98538130677003 0.99673543657761 0.99961347529604 0.99996482794384 1.0 1.0 1.0 1.0 1.0 1.0 1.00000000000001 1.00000000000005 1.0000000000002 1.00000000040986 1.00000000791219 1.00000011686761 1.00000151868187 1.00001681362642 1.00015455973484 1.00121854100666 1.00740116753425 1.02043122657822 1.02017143651674 0.97720805419775 0.95062397167624 0.97342050771063 0.99048814308727 0.99867471003173 0.99982010941489 0.99998402836755 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.00000000000006 1.00000000000039 1.00000000001762 1.00000000153182 1.00000002462995 1.00000034103265 1.00000407572377 1.00004028342167 1.00033737345661 1.00179209278649 1.00523046934847 0.99863878548162 0.98057005063137 0.98029529880362 0.9892094248511 0.9968940645618 0.999617805115 0.99995280635024 0.99999606288215 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.00000000000001 1.00000000000008 1.0000000000004 1.00000000003114 1.00000000221573 1.00000003303275 1.00000040084223 1.00000415882374 1.00003670896603 1.00017924492199 1.00034182020691 0.99889608004209 0.9913663848813 0.99093596835175 0.99737075453252 0.99953102233892 0.99994459312503 0.99999413957337 0.99999953734667 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.00000000000002 1.00000000000016 1.00000000000068 1.00000000007248 1.00000000334943 1.00000004396931 1.00000051603952 1.00000366201079 1.00001426891511 0.99999294749085 0.99967438316695 0.99839194696475 0.99875783006288 0.99966333748857 0.99994558580123 0.99999361788977 0.99999935684644 0.99999995079931 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.00000000000004 1.0000000000003 1.00000000000245 1.00000000007772 1.00000000330446 1.00000003885607 1.000000270074 1.0000008055191 0.99999429022657 0.99993193529656 0.99978764529882 0.99985323288181 0.99996081194377 0.99999460413534 0.99999939079677 0.99999994179094 0.99999999571316 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.00000000000001 1.00000000000007 1.00000000000057 1.00000000000426 1.00000000011979 1.00000000233761 1.00000001579327 1.00000002119145 0.99999910269408 0.99999279365215 0.99997513392116 0.99998497486989 0.99999626159834 0.999999542977 0.99999994999873 0.99999999539704 0.99999999984392 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.00000000000001 1.00000000000007 1.00000000000059 1.00000000000434 1.00000000007903 1.00000000075092 0.99999999785989 0.99999988352251 0.99999929692791 0.99999760923474 0.99999869190155 0.99999969642163 0.99999996585307 0.99999999639562 0.99999999985522 0.99999999999626 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.00000000000005 1.00000000000037 1.00000000000063 0.99999999999913 0.99999999970334 0.99999999081601 0.99999994209594 0.99999980480045 0.99999990110823 0.99999997848403 0.9999999978239 0.99999999991293 0.999999999998 0.99999999999941 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.00000000000004 1.00000000000004 0.99999999999921 0.99999999998809 0.99999999947736 0.99999999578767 0.9999999860878 0.99999999333684 0.99999999868546 0.99999999996919 0.99999999999952 0.9999999999997 0.99999999999992 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999999999991 0.99999999999914 0.99999999999596 0.99999999981953 0.99999999915024 0.99999999967212 0.9999999999897 0.9999999999998 0.99999999999988 0.99999999999995 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999999999989 0.99999999999949 0.99999999999962 0.99999999999994 0.99999999999987 0.99999999999968 0.99999999999996 0.99999999999998 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999999999999 0.9999999999999 0.9999999999999 0.99999999999997 0.99999999999996 0.99999999999996 0.99999999999999 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999999999999 0.99999999999998 0.99999999999999 0.99999999999999 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 +D/cons.2.00.000000.dat 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 +D/cons.2.00.000050.dat 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.04999999999998 0.04999999999985 0.04999999999852 0.04999999995664 0.0499999984001 0.04999997957838 0.04999978232802 0.04999797157363 0.0499902878356 0.04998182739876 0.0499960751942 0.04999938106452 0.05000003381 0.05000000856874 0.05000000100677 0.05000000001495 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.04999999999998 0.04999999999991 0.04999999999924 0.04999999996505 0.04999999804289 0.0499999723654 0.04999967362416 0.04999666110062 0.04997179167587 0.04987362208779 0.04979500270019 0.04995332370807 0.04999590208714 0.05000077234015 0.0500001640228 0.05000002054782 0.05000000142656 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.04999999999997 0.04999999999991 0.04999999998707 0.0499999984459 0.04999997630444 0.04999968978865 0.04999651432822 0.04996513200567 0.04973947300454 0.04886228959382 0.04844702739997 0.04965988470099 0.05002665801026 0.05001300315021 0.05000224611704 0.05000027001187 0.05000001833414 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.04999999999997 0.04999999999993 0.04999999999829 0.04999999908893 0.04999998433892 0.04999977655061 0.04999724417788 0.04997068402071 0.04971003845997 0.04791717459303 0.04046153933614 0.03920886810765 0.04958772313699 0.05050682767823 0.0501543137144 0.05002283678706 0.05000246455708 0.05000017634278 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.04999999999999 0.04999999999998 0.04999999999171 0.04999999947224 0.04999999121361 0.04999986161475 0.04999804984207 0.04997631063731 0.04976510179399 0.04756388821286 0.03707798526772 0.0151910726345 0.02137024692702 0.05415951024026 0.05639912039192 0.05154645384744 0.05020172938319 0.05001953443281 0.05000145015627 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.04999999999994 0.04999999987455 0.04999999765034 0.04999996265127 0.04999945547732 0.04999314818286 0.04992741273364 0.04937334916842 0.04445347192799 0.0277792189321 0.01595995610544 0.0044145149174 0.04654566530577 0.06866919011405 0.0553730268946 0.05072330212586 0.05007789766397 0.05000600781569 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05000000000024 0.05000000005581 0.05000000091144 0.05000001339099 0.05000017175019 0.05000187595906 0.05001720123517 0.05012957278729 0.05111144878045 0.05086645013896 0.00453373308381 0.00424225920536 0.00424074658185 0.05235222860661 0.05013473202561 0.04995480054216 0.04999204966421 0.04999904415738 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05000000000008 0.05000000016857 0.05000000314246 0.05000004900437 0.05000069772611 0.05000858056632 0.05008923955642 0.05075540985388 0.05684935329741 0.07583370956532 0.05071451110407 0.00425688381464 0.02115766088615 0.032375754643 0.04423933031983 0.04912086777526 0.04990489321638 0.04999248838338 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05000000000001 0.05000000000005 0.05000000001203 0.05000000074876 0.0500000123787 0.05000018606488 0.05000248115519 0.05002811163529 0.05027191286947 0.05210260596651 0.05973099420368 0.05363544462246 0.02150507607173 0.0179680479152 0.03805057168408 0.04724005011161 0.04970675862522 0.04996812419348 0.04999761281952 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05000000000001 0.05000000000005 0.05000000000011 0.05000000001001 0.05000000129132 0.05000002119048 0.05000028703293 0.05000331511974 0.05003487805975 0.05023205427589 0.05094292163251 0.04992463698527 0.03682876661385 0.03906689587369 0.04748566506318 0.04960820666813 0.04995797035164 0.04999596878183 0.0499997092499 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05000000000001 0.05000000000006 0.05000000000015 0.05000000002887 0.05000000219753 0.05000003129742 0.05000038395344 0.0500037547041 0.05002254076395 0.05006241989968 0.04969127516492 0.04771073658908 0.0484425882517 0.049663299753 0.04995030009267 0.04999471429796 0.04999951342255 0.04999996581089 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05000000000003 0.05000000000013 0.05000000000127 0.05000000005615 0.05000000265182 0.05000003593323 0.05000031670824 0.05000161582414 0.05000070415837 0.0499303255639 0.04970371214049 0.04982060256319 0.04995961525821 0.04999483410635 0.049999469564 0.04999995336772 0.04999999687562 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05000000000004 0.05000000000028 0.05000000000267 0.05000000008517 0.05000000248336 0.05000002113343 0.05000008511463 0.04999943086575 0.04999255070326 0.04996587640856 0.04998184990993 0.04999606952128 0.04999954815481 0.04999995490458 0.04999999626085 0.04999999988266 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05000000000006 0.05000000000056 0.05000000000223 0.050000000062 0.05000000112714 0.05000000268971 0.04999989964493 0.04999925445991 0.04999676400779 0.04999843069989 0.04999967611215 0.04999996550212 0.04999999673104 0.04999999985583 0.04999999999802 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05000000000006 0.05000000000045 0.0500000000012 0.04999999999997 0.0499999997887 0.04999999173111 0.04999993696475 0.04999973869117 0.04999988195783 0.0499999768544 0.04999999774288 0.0499999998974 0.04999999999869 0.04999999999946 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05000000000004 0.05000000000017 0.04999999999968 0.04999999998617 0.04999999948497 0.04999999540003 0.04999998160065 0.04999999212809 0.04999999855683 0.04999999996031 0.04999999999938 0.04999999999966 0.04999999999992 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05000000000001 0.04999999999995 0.04999999999907 0.04999999999818 0.04999999980571 0.04999999889115 0.04999999960881 0.04999999999303 0.04999999999979 0.04999999999987 0.04999999999995 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.04999999999988 0.04999999999938 0.04999999999949 0.04999999999973 0.04999999999979 0.04999999999962 0.04999999999996 0.04999999999998 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.04999999999999 0.04999999999989 0.04999999999988 0.04999999999996 0.04999999999995 0.04999999999995 0.04999999999999 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.04999999999999 0.04999999999998 0.04999999999999 0.04999999999999 0.04999999999999 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.05 +D/cons.3.00.000000.dat 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +D/cons.3.00.000050.dat -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -5e-14 -3.9e-13 -1.67e-12 -3.223e-11 -1.59892e-09 -1.681843e-08 -1.3856516e-07 -1.19948516e-06 -2.46667983e-06 4.7305218e-07 2.66766224e-06 6.2837466e-07 5.273083e-08 1.96152e-09 -5.4952e-10 -4.108e-11 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -3e-14 -2.6e-13 -1.37e-12 -5.432e-11 -2.16736e-09 -2.660954e-08 -2.6697658e-07 -2.18536472e-06 -1.746985815e-05 -3.188577043e-05 7.52103543e-06 3.632087106e-05 7.51955303e-06 4.9759222e-07 -1.338751e-08 -1.069859e-08 -9.4547e-10 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -2e-14 -1.4e-13 -7.6e-13 -5.059e-11 -2.21996e-09 -3.056143e-08 -3.5028609e-07 -3.39228723e-06 -2.746387943e-05 -0.00018575429547 -0.000274934958 9.539710802e-05 0.00033005014801 6.675412011e-05 3.30020203e-06 -1.11297457e-06 -2.1984161e-07 -1.579524e-08 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -1e-14 -6e-14 -3.4e-13 -2.554e-11 -1.82152e-09 -2.788533e-08 -3.5489957e-07 -3.90037565e-06 -3.648087169e-05 -0.00029578458508 -0.00179743546873 -0.00239494487606 0.00161491683665 0.0024996647428 0.00038130553297 5.24133202e-06 -2.007014129e-05 -3.61077303e-06 -2.4754039e-07 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -1e-14 -6e-14 -4.5e-13 -6.31e-12 -1.30044e-09 -2.123641e-08 -3.0063779e-07 -3.68262057e-06 -3.795807272e-05 -0.00030550485877 -0.00263302306327 -0.0090384013136 -0.00873250320269 0.0078136994975 0.0124105086927 0.00114908348924 -0.00068760738192 -0.00022594914669 -2.784193619e-05 -2.30527625e-06 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -1e-14 -7e-14 -3e-13 -4.1959e-10 -8.25765e-09 -1.2530581e-07 -1.66468922e-06 -1.893395559e-05 -0.0001808096265 -0.00137359789804 -0.01204430745508 -0.03908406264867 -0.05057186616935 -0.09237481699761 -0.0321005396525 -0.01189143877782 -0.00562583379135 -0.00093424222551 -0.00012897177645 -1.135233312e-05 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -1e-14 -9e-14 -6.33e-12 -1.53255e-09 -2.588004e-08 -3.8428663e-07 -4.95617336e-06 -5.421356328e-05 -0.00049271119826 -0.00374025013747 -0.02578374947252 -0.06762679913976 -0.09486948662964 -0.0887703235992 -0.08873867157797 -0.04284919020004 -0.02294038586894 -0.00448841560301 -0.00052374594717 -4.868601861e-05 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -1e-14 -7e-14 -2.8e-13 -4.5901e-10 -8.75455e-09 -1.295397e-07 -1.67007906e-06 -1.831677152e-05 -0.00016661899785 -0.00129817882927 -0.00820633189809 -0.01762033243704 -0.03822939550003 -0.0890763471673 -0.04796540451312 -0.03315006370455 -0.01044006199519 -0.00142376734459 -0.00019910533328 -1.732140606e-05 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -1e-14 -6e-14 -4.8e-13 -1.282e-11 -1.56065e-09 -2.477109e-08 -3.3804155e-07 -3.92518345e-06 -3.702744707e-05 -0.000292721984 -0.00114497263143 0.0009781418049 0.01226414392766 0.00533697016287 -0.00887069847331 -0.00866653199124 -0.00265194037207 -0.00033177136859 -4.38380998e-05 -3.48713425e-06 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -1e-14 -8e-14 -4.6e-13 -3.362e-11 -2.00578e-09 -2.835812e-08 -3.2349586e-07 -3.07803939e-06 -2.633475127e-05 -5.532420641e-05 0.00042317770559 0.00309383506817 0.00194882636492 -0.00281212147835 -0.00209095279699 -0.00035389951338 -4.519646062e-05 -5.05469823e-06 -3.7183709e-07 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -3e-14 -1.7e-13 -8.1e-13 -7.518e-11 -2.69171e-09 -3.522605e-08 -4.029288e-07 -2.31994601e-06 2.15440461e-06 7.707780667e-05 0.0004411811563 0.00013708614344 -0.00037533011449 -0.00023703056799 -3.54902698e-05 -4.56482649e-06 -4.9357931e-07 -3.451015e-08 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -4e-14 -2.9e-13 -2.1e-12 -5.694e-11 -2.08423e-09 -2.255534e-08 -1.1020425e-07 5.1510156e-07 9.69046654e-06 5.225840647e-05 1.047315795e-05 -4.506315655e-05 -2.41701399e-05 -3.11726451e-06 -3.949096e-07 -4.089622e-08 -2.67373e-09 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -1e-14 -7e-14 -5.2e-13 -3.25e-12 -9.159e-11 -1.36576e-09 -1.13199e-09 5.760326e-08 9.2156428e-07 4.98475148e-06 9.0767276e-07 -4.53853721e-06 -2.0576803e-06 -2.3981737e-07 -2.989892e-08 -2.91138e-09 -9.446e-11 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -1e-14 -6e-14 -3e-13 -3.24e-12 -6.4e-11 1.0862e-10 5.9088e-09 7.972211e-08 4.0379866e-07 6.45278e-08 -3.8489106e-07 -1.5048811e-07 -1.652856e-08 -2.0011e-09 -6.705e-11 -3.05e-12 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -2e-14 -1e-13 1.4e-13 1.59e-12 2.8808e-10 5.51805e-09 2.949187e-08 3.82064e-09 -2.811843e-08 -9.95829e-09 -1.0167e-09 -2.363e-11 -1.55e-12 -2.6e-13 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -1e-14 1.1e-13 9.2e-13 1.43e-12 2.8863e-10 2.03259e-09 1.7895e-10 -1.91178e-09 -5.8964e-10 -3.85e-12 -7e-14 -9e-14 -2e-14 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 1e-13 2.9e-13 3.97e-12 8.724e-11 1.343e-11 -9.632e-11 -8.05e-12 -6e-14 -2e-14 -2e-14 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 7e-14 1e-13 1.7e-13 4e-14 -2.9e-13 -7e-14 -3e-14 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 1e-14 1e-14 -1e-14 -0.0 -0.0 -1e-14 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 -0.0 0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 0.0 0.0 0.0 0.0 0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 -0.0 +D/cons.4.00.000000.dat 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 +D/cons.4.00.000050.dat 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125000000001 2.50125000000019 2.50125000000149 2.50125000000902 2.50125000020633 2.50125000859586 2.50125009990995 2.50125092798522 2.50125776827054 2.50128036655153 2.50129708958141 2.50126533269354 2.50125314647192 2.50125007738619 2.50124998457466 2.50124999632175 2.5012499998296 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125000000001 2.50125000000012 2.50125000000088 2.50125000000571 2.50125000023407 2.50125001079274 2.50125013543255 2.50125146090047 2.50126344310427 2.50135289962077 2.50163610354759 2.50179860589056 2.5014236886659 2.50127444509615 2.50124926343659 2.50124954449979 2.50124992711244 2.50124999342688 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125000000005 2.50125000000047 2.50125000000233 2.50125000016886 2.50125000974817 2.50125013568922 2.50125162909082 2.5012666868019 2.50139886037906 2.50222162635358 2.50463861534345 2.5053487507676 2.50239328912011 2.50134986739888 2.50122473399134 2.50124235065826 2.50124880357281 2.50124990617146 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125000000003 2.5012500000002 2.50125000000111 2.50125000007452 2.50125000684156 2.5012501092209 2.5012514256506 2.50126610663117 2.50140632378477 2.50261948497485 2.50943626831346 2.53005146739478 2.52870573913042 2.50549044286766 2.50094612786944 2.50087435385203 2.50115718626278 2.50123541558689 2.50124889133073 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125000000002 2.5012500000002 2.50125000000126 2.50125000003776 2.50125000445301 2.50125007528898 2.50125107618295 2.50126347940734 2.50139317001159 2.50245627919361 2.51195940275518 2.54355698064923 2.57786319463593 2.5730014865444 2.50700771146297 2.48944703638311 2.49662488468056 2.50029031600907 2.50113896366904 2.50124042343811 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125000000004 2.5012500000002 2.50125000000074 2.50125000132217 2.50125002628312 2.50125039654668 2.50125528862459 2.50131036132202 2.50182751369159 2.50564075098523 2.53904839612585 2.61444433253171 2.69066666706893 2.55195835754466 2.43777436395064 2.44785679958712 2.48177910712744 2.49774287304 2.50079856685968 2.50120874962168 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125000000003 2.50125000000028 2.5012500000177 2.50125000432556 2.50125007124179 2.50125104816922 2.50126336748043 2.50139400272701 2.50253154304987 2.51072514545815 2.56511359666288 2.64961750394873 2.65031375084002 2.41423737507538 2.41334373735842 2.390418609701 2.45073972457766 2.48985912754992 2.49989774064867 2.50112690010189 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125000000004 2.50125000000019 2.50125000000069 2.50125000144242 2.50125002783603 2.50125041133388 2.50125534837345 2.50130925656435 2.50179529201511 2.50555473341187 2.52761544929204 2.57507258951665 2.57498490631672 2.42539199948546 2.33205692040653 2.40887352247904 2.46786531789593 2.49657338192713 2.50061593937057 2.50119374462536 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125000000002 2.5012500000002 2.50125000000136 2.50125000006224 2.50125000540062 2.50125008679268 2.50125120249382 2.50126438404256 2.50139235105698 2.50244421006043 2.50763273607904 2.5201640049212 2.49688264557053 2.43308386834447 2.4318443444926 2.4631187724784 2.49026411723765 2.49989843655853 2.50108329283855 2.5012361056965 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125000000004 2.50125000000029 2.50125000000142 2.50125000010953 2.50125000782114 2.50125011663489 2.50125141680021 2.50126471651051 2.50138018414076 2.50188889250438 2.50249641619703 2.49739782312315 2.4705981402399 2.46917761136296 2.49193975463941 2.49959012150078 2.50105405245559 2.50122929440961 2.50124836675558 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125000000008 2.50125000000056 2.50125000000239 2.50125000025802 2.50125001182842 2.50125015540014 2.50125182468991 2.50126300024185 2.50130105183225 2.50122847792327 2.50009543120039 2.49551693731696 2.49683025880101 2.50005560250179 2.50105714178051 2.5012274064266 2.50124772543994 2.50124982615106 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125000000001 2.50125000000015 2.50125000000106 2.5012500000084 2.50125000027915 2.50125001169484 2.50125013774414 2.50125096075648 2.50125289911089 2.50123005858608 2.50100838217907 2.50049243783323 2.50072761576767 2.50111087628943 2.50123086302127 2.50124784203058 2.50124979401072 2.50124998484546 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125000000002 2.50125000000026 2.50125000000201 2.50125000001496 2.5012500004273 2.50125000830271 2.50125005631218 2.50125007839928 2.50124683207181 2.50122441445761 2.50116129641358 2.50119652422962 2.50123672379515 2.5012483784002 2.50124982280454 2.50124998370906 2.50124999944361 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125000000002 2.50125000000026 2.50125000000208 2.50125000001513 2.50125000028291 2.50125000268667 2.5012499926477 2.50124958745734 2.50124750285244 2.50124147354123 2.50124534483427 2.50124892166211 2.50124987880481 2.50124998722627 2.50124999948208 2.50124999998688 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125000000019 2.50125000000132 2.50125000000211 2.50124999999693 2.5012499989515 2.50124996745384 2.50124979425801 2.50124930398169 2.5012496481016 2.50124992356497 2.5012499922734 2.50124999968645 2.50124999999297 2.50124999999791 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125000000001 2.50125000000014 2.50125000000015 2.50124999999721 2.50124999995766 2.50124999814137 2.50124998503333 2.50124995040657 2.50124997629505 2.50124999532647 2.50124999988714 2.50124999999831 2.50124999999894 2.50124999999972 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125000000001 2.50125000000002 2.50124999999968 2.50124999999695 2.5012499999859 2.50124999935426 2.50124999696732 2.50124999882923 2.50124999996242 2.50124999999932 2.50124999999957 2.50124999999983 2.50124999999999 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50124999999999 2.5012499999996 2.50124999999819 2.50124999999873 2.50124999999982 2.50124999999959 2.50124999999891 2.50124999999984 2.50124999999994 2.50124999999999 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50124999999995 2.50124999999966 2.50124999999965 2.50124999999988 2.50124999999986 2.50124999999985 2.50124999999998 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50124999999998 2.50124999999994 2.50124999999998 2.50124999999997 2.50124999999999 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 2.50125 +D/cons.5.00.000000.dat 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 +D/cons.5.00.000050.dat 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 +D/ib_markers.00.dat 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 1.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \ No newline at end of file diff --git a/toolchain/bootstrap/modules.sh b/toolchain/bootstrap/modules.sh index 2a0245fc8..4ea412cef 100644 --- a/toolchain/bootstrap/modules.sh +++ b/toolchain/bootstrap/modules.sh @@ -44,7 +44,8 @@ if [ -v $u_c ]; then log "$R""Caltech$W: Richardson (r)" log "$BR""Brown$W: Oscar (o)" log "$B""DoD$W: Carpenter Cray (cc) | Carpenter GNU (c) | Nautilus (n)" - log_n "($G""a$W/$G""f$W/$G""s$W/$G""w$W/$C""b$W/$C""e$CR/$C""d/$C""dai$CR/$Y""p$CR/$R""r$CR/$B""cc$CR/$B""c$CR/$B""n$CR/$BR""o"$CR"): " + log "$OR""Florida$W: HiPerGator (h)" + log_n "($G""a$W/$G""f$W/$G""s$W/$G""w$W/$C""b$W/$C""e$CR/$C""d/$C""dai$CR/$Y""p$CR/$R""r$CR/$B""cc$CR/$B""c$CR/$B""n$CR/$BR""o"$CR"/$OR""h"$CR"): " read u_c log fi diff --git a/toolchain/mfc/run/case_dicts.py b/toolchain/mfc/run/case_dicts.py index c27632b56..a63af7267 100644 --- a/toolchain/mfc/run/case_dicts.py +++ b/toolchain/mfc/run/case_dicts.py @@ -115,7 +115,7 @@ def analytic(self): ("theta", ParamType.REAL), ("slip", ParamType.LOG), ("c", ParamType.REAL), ("p", ParamType.REAL), ("t", ParamType.REAL), ("m", ParamType.REAL), - ("moving_ibm", ParamType.INT)]: + ("moving_ibm", ParamType.INT), ("mass", ParamType.REAL)]: PRE_PROCESS[f"patch_ib({ib_id})%{real_attr}"] = ty for dir_id in range(1, 4): @@ -364,7 +364,7 @@ def analytic(self): ("theta", ParamType.REAL), ("slip", ParamType.LOG), ("c", ParamType.REAL), ("p", ParamType.REAL), ("t", ParamType.REAL), ("m", ParamType.REAL), - ("moving_ibm", ParamType.INT)]: + ("moving_ibm", ParamType.INT), ("mass", ParamType.REAL)]: SIMULATION[f"patch_ib({ib_id})%{real_attr}"] = ty for dir_id in range(1, 4): diff --git a/toolchain/util.sh b/toolchain/util.sh index fddbe22af..cf1da21d2 100644 --- a/toolchain/util.sh +++ b/toolchain/util.sh @@ -2,10 +2,11 @@ if [ -t 1 ]; then RED="\x1B[31m"; CYAN="\x1B[36m"; GREEN="\x1B[32m"; BROWN="\x1B[38;5;58m" - YELLOW="\x1B[33m"; MAGENTA="\x1B[35m"; BLUE="\x1B[34m"; COLOR_RESET="\033[m" + YELLOW="\x1B[33m"; MAGENTA="\x1B[35m"; BLUE="\x1B[34m"; ORANGE="\033[38;5;214m"; + COLOR_RESET="\033[m" R=$RED; C=$CYAN; G=$GREEN; BR=$BROWN - Y=$YELLOW; M=$MAGENTA; B=$BLUE; CR=$COLOR_RESET; W=$CR + Y=$YELLOW; M=$MAGENTA; B=$BLUE; OR=$ORANGE; CR=$COLOR_RESET; W=$CR fi log() { echo -e "$CYAN"mfc"$COLOR_RESET: $1$COLOR_RESET"; }