1bd066f56f
Remove dependency of the module VARIABLES.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2013-12-10 21:36:35 -02:00
f48950aa4d
EQUATIONS: Completely rewrite this module.
...
Now, module EQUATIONS provides a complet interface for equation systems,
including the definition of the number of equations/independent
variables, variable indices and names, conversion subroutines between
primitive and conservative variables, flux and characteristic speed
calculation, and maximum speed determination.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2013-12-10 20:56:37 -02:00
386fd36f5e
Update copyright line.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2013-12-10 15:23:28 -02:00
b8a2d02631
PARAMETERS: Add simple formatting checker.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2013-12-10 15:17:30 -02:00
610762d263
Correct double precision flags in default hosts file.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2013-12-10 12:06:45 -02:00
8dcc4d95b7
Remove PREC flag to set the computation precision.
...
The code by default works only with double precision arithmetics. Quad
precision arithmetics can be added as an option in the future.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2013-12-10 12:04:29 -02:00
9df9b7fa45
Make the config and host file detection similar to GODUNOV.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2013-12-10 11:58:26 -02:00
Grzegorz Kowal
b7bdcb3982
Implement MC limiter and use it in prolongation.
2012-08-05 22:03:13 -03:00
Grzegorz Kowal
139a4bca00
Rewrite some subroutines of module INTERPOLATIONS.
2012-08-05 19:42:06 -03:00
Grzegorz Kowal
e448cd2dfb
Remove unused subroutines from module INTERPOLATIONS.
2012-08-05 18:00:10 -03:00
Grzegorz Kowal
92e67b2f36
Fix an MPI bug in new_time_step().
...
The maximum level was estimated from the list of data blocks. If we
have many processors, sometimes all blocks could lay at level smaller
than maxlev, what can cause wrong dx_min estimation and desyncronization
between processors.
2012-08-03 02:48:38 -03:00
Grzegorz Kowal
4669367697
Rewrite subroutine check_refinement_criterion().
...
These modifications slightly speed up the criterion calculation and
applies new default values of the parameters crefmin and crefmax, which
have been tuned in the blast problem.
2012-08-03 01:37:31 -03:00
Grzegorz Kowal
39afde1328
Check the refinement criterion before storing it in the file.
...
This step is required, since the mesh can be refined/derefined just
before the snapshot dump. Since the refinement is checked before the
mesh update, it means that the freshly refined/derefined blocks have
undetermined array %c in their structure.
2012-08-02 23:50:46 -03:00
Grzegorz Kowal
b3a455fa52
Remove unused variables from advance() in EVOLUTION.
2012-08-02 23:45:53 -03:00
Grzegorz Kowal
5629bc1d3f
Support strings both with ' and " in the parameter file.
2012-08-02 23:21:57 -03:00
Grzegorz Kowal
6dee6c643a
Fix compilation with MPI=Y after recent changes.
2012-08-02 19:26:32 -03:00
Grzegorz Kowal
b2d14727f2
Rewrite subroutine boundy_variables().
2012-08-02 19:06:12 -03:00
Grzegorz Kowal
8e672aff60
Add subroutine specific_boundaries() to module BOUNDARIES.
2012-08-02 18:45:10 -03:00
Grzegorz Kowal
d20487494f
Add subroutine copy_boundaries() to module BOUNDARIES.
2012-08-02 18:28:33 -03:00
Grzegorz Kowal
b276bbec00
Add new subroutine prolong_boundaries() to BOUNDARIES.
2012-08-02 18:18:30 -03:00
Grzegorz Kowal
2aa2ed841a
Add new subroutine restrict_boundaries() to BOUNDARIES.
2012-08-02 18:09:50 -03:00
Grzegorz Kowal
d9a43e8b32
Add subroutine update_corners() to module BOUNDARIES.
...
This subroutine is called before the boundary update and assures that
the values stored in all cells of block are physical, even if they do
not influence the solution.
2012-08-02 17:21:42 -03:00
Grzegorz Kowal
c49dabf737
First step of the BOUNDARY module rewrite.
2012-08-02 16:05:02 -03:00
Grzegorz Kowal
179ae41321
Fix compilation when MPI=N.
2012-08-02 15:09:44 -03:00
Grzegorz Kowal
fd7b393415
Implement storing refinement criterion values if DEBUG is on.
2012-08-02 13:09:44 -03:00
Grzegorz Kowal
9dbb5186ec
First step of the module IO rewrite.
2012-08-02 00:35:37 -03:00
Grzegorz Kowal
eff71922d2
Change the default refinement criterion parameters.
2012-08-01 19:13:13 -03:00
Grzegorz Kowal
1d02d28905
Rename subroutine boundary_correct_fluxes() to boundary_fluxes().
2012-08-01 17:41:56 -03:00
Grzegorz Kowal
85c25ea2c4
Correct comments.
2012-08-01 17:25:49 -03:00
Grzegorz Kowal
9c1bda9e6c
Rewrite Roe's Riemann solvers and eigensystem for HYDRO.
2012-08-01 17:24:12 -03:00
Grzegorz Kowal
2c463858e7
Add compilation flag FIX_POSITIVITY.
2012-08-01 16:56:14 -03:00
Grzegorz Kowal
c6f046485f
Remove all occurences of the flag CONSERVATIVE.
...
The scheme is fully conservative now.
2012-08-01 16:52:07 -03:00
Grzegorz Kowal
abc98f8369
Implement positivity fix subroutine in module INTERPOLATIONS.
2012-08-01 16:42:45 -03:00
Grzegorz Kowal
88bbafeeb4
Rename module SCHEME to SCHEMES and rewrite it completely.
2012-08-01 16:38:10 -03:00
Grzegorz Kowal
4006de5584
Update makefile after the rename of file scheme.F90.
2012-08-01 12:59:27 -03:00
Grzegorz Kowal
02fc228cd6
Rename file scheme.F90 to schemes.F90.
2012-08-01 12:58:19 -03:00
Grzegorz Kowal
bbed8c41e5
Rewrite module EVOLUTION. Move update_interval() to SCHEME.
...
Improve subroutine comments and remove unused code.
2012-08-01 12:56:52 -03:00
Grzegorz Kowal
2413de249f
Move maxspeed() to module EQUATIONS.
2012-08-01 12:16:38 -03:00
Grzegorz Kowal
fca524da42
Remove all remaining and unused evolution subroutines.
2012-07-31 17:43:11 -03:00
Grzegorz Kowal
abc6c263b0
Remove subroutine evolve().
2012-07-31 17:40:34 -03:00
Grzegorz Kowal
ec16790010
Use fluxspeed() from module EQUATIONS in SCHEME.
2012-07-31 17:02:29 -03:00
Grzegorz Kowal
c15296df8e
In Riemann solvers use prim2cons() from module EQUATIONS.
2012-07-31 16:57:39 -03:00
Grzegorz Kowal
bc57d406d1
Use primitive variables in maxspeed() and remove cons2prim().
2012-07-31 16:55:00 -03:00
Grzegorz Kowal
db606cfa1a
Use primitive variables in the Riemann solvers.
...
There is no need to convert conservative variables to primitive ones,
since they are already up to date, so pass primitive variables directly
to Riemann solvers in subroutine update_flux().
2012-07-31 16:49:14 -03:00
Grzegorz Kowal
272b40ddbb
Move primitive variable update for all blocks to update_variables().
2012-07-31 16:38:16 -03:00
Grzegorz Kowal
e0860d9afb
Move variable interval calculation to update_interval().
2012-07-31 16:23:20 -03:00
Grzegorz Kowal
3d5582f230
Remove flag CONSERVATIVE from advance_rk2().
2012-07-31 16:04:43 -03:00
Grzegorz Kowal
68dc3de4d9
Move flux update of data blocks to update_fluxes().
2012-07-31 16:02:59 -03:00
Grzegorz Kowal
e3df4f38f2
Update time step after updating primitive variables in advance().
2012-07-31 15:16:25 -03:00
Grzegorz Kowal
eda9cdcf43
Make subroutine find_new_timestep() private.
...
Also call it in initialize_evolution().
2012-07-31 15:13:51 -03:00