73 Commits

Author SHA1 Message Date
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
18886475fc Rename module INTERPOLATION to INTERPOLATIONS. 2012-07-27 16:36:51 -03:00
Grzegorz Kowal
dbd38c9399 Remove dependency of module SCHEME on CONFIG. 2012-07-27 16:30:55 -03:00
Grzegorz Kowal
7e8f4757bd Remove RESISTIVITY from module SCHEME. 2012-07-27 16:23:18 -03:00
Grzegorz Kowal
57967cb022 Remove support for viscosity from module SCHEME. 2012-07-27 16:21:24 -03:00
Grzegorz Kowal
24c261afb5 Use variables from COORDINATES in module SCHEME. 2012-07-27 16:06:27 -03:00
Grzegorz Kowal
0da52f7aec Rewrite module TIMERS to be compatible with Godunov version. 2012-07-22 15:46:56 -03:00
Grzegorz Kowal
64a098c9bb Rename module TIMER to TIMERS.
Rename internal array timers(:) to times(:) to not conflict with the
module name.
2012-07-22 12:59:15 -03:00
Grzegorz Kowal
dbfbabc613 Change the license to GNU General Public License version 3. 2012-07-22 12:30:20 -03:00
Grzegorz Kowal
3df4e1e4d8 Add timers for reconstruction and Riemann solver. 2011-05-29 12:22:50 -03:00
Grzegorz Kowal
5ce57da3bc Calculate directional fluxes in update_flux() only.
- instead of calculating all fluxes at once in update_flux(), select
   the direction as a subroutine argument and calculate only the flux
   along this direction;

 - directional fluxes are needed for the directional RK integration of
   the numerical fluxes;

 - update subroutines flux_euler(), flux_rk2(), and flux_rk3() to use
   new update_flux() subroutine;
2011-05-19 18:24:09 -03:00
Grzegorz Kowal
8076970c22 Update copyright headers with the new email. 2011-05-05 18:37:53 -03:00
Grzegorz Kowal
16ec922b2f Fix a bug introduced in 58cfb07e9ab54a0cb77775f78bdb9e6105c89309.
- the order of flags CONSERVATIVE was wrong in the subroutines
   calculating numerical fluxes;
2011-05-01 16:56:34 -03:00
Grzegorz Kowal
58cfb07e9a Return fluxes instead of their derivatives if CONSERVATIVE=Y.
- if the flag CONSERVATIVE is enable, we need to return the numerical
   fluxes instead of their derivatives; the directional derivatives are
   calculated after sunchronization of the flux;
2011-04-30 12:49:29 -03:00
Grzegorz Kowal
ed429e795e Add a subroutine to calculate numerical fluxes.
- the subroutine update_flux() in the SCHEME module calculates
   numerical fluxes from the conserved variables; the calculated fluxes
   are then returned;
2011-04-30 12:28:02 -03:00
Grzegorz Kowal
fc32225dc1 Change the license to GNU General Public License, version 2. 2011-04-29 11:21:30 -03:00
Grzegorz Kowal
0ff433e16b Rename the code from Godunov-AMR to AMUN. 2011-04-25 13:44:34 -03:00
Grzegorz Kowal
23ae07b2f6 Add viscous and resistive terms for adiabatic EOS.
- also slightly optimize the dissipation term calculations;
2011-04-05 00:42:24 +02:00
Grzegorz Kowal
b3b4b42ad8 Change flag RESIS to RESISTIVITY. 2011-03-22 17:24:28 -03:00
Grzegorz Kowal
1a26c3e204 Optimize hydro Roe solvers and prepare MHD Roe solvers. 2011-03-22 15:36:59 -03:00
Grzegorz Kowal
ca30b0674c Implement Roe Riemann solver for isothermal hydrodynamics. 2011-03-21 14:58:18 -03:00
Grzegorz Kowal
cacce96f52 Implement Roe Riemann solver for adiabatic hydrodynamics.
- the method is based on the Athena implementation;
2011-03-21 14:29:40 -03:00
Grzegorz Kowal
2e77f327b1 Implement viscous terms. 2011-03-18 15:33:24 -03:00
Grzegorz Kowal
2682d37d20 Update the copyright information. 2011-02-27 22:45:54 -03:00
Grzegorz Kowal
15c31f92a1 SCHEME: small corrections in subroutine hll(). 2010-12-12 21:54:29 -02:00
Grzegorz Kowal
3c022bd80f SCHEME: remove subroutine emf(). 2010-12-12 21:41:26 -02:00
Grzegorz Kowal
623ddc73b6 SCHEME: correct flux calculation for magnetic field. 2010-12-11 19:26:33 -02:00
Grzegorz Kowal
29b000c75f SCHEME: slightly rewrite subroutine update(). 2010-12-11 14:38:34 -02:00
Grzegorz Kowal
9f361b4175 SCHEME: slightly rewrite subroutine hll(). 2010-12-11 14:32:38 -02:00
Grzegorz Kowal
e89c705ca5 RESISTIVITY: implement resistivity in Riemann solvers.
- implement the resistive term (with uniform resistivity) in the HLL
   and HLLD solvers;
2010-12-10 17:14:26 -02:00
Grzegorz Kowal
91521184cd INTERPOLATION: pass dx to the reconstruction.
- the spacial increment is required by some interpolation methods, so
   pass it to the subroutine reconstruct();
2010-12-06 16:27:49 -02:00
Grzegorz Kowal
41e44779e5 Revert "INTERPOLATION: pass the spacial increment to reconstruct()."
This reverts commit d92ae5d3a62743b66e97c42be4aa5f31ef5993d1.
2010-12-06 16:20:49 -02:00
Grzegorz Kowal
d92ae5d3a6 INTERPOLATION: pass the spacial increment to reconstruct().
- pass the spacial increment to the reconstruction subroutine since
   some interpolation methods require it; in addition, move obtaining
   the spacial interval and its inversion to the subroutine update();
2010-12-06 16:09:09 -02:00
Grzegorz Kowal
2cc3489123 SCHEME: clean up code after removal indices icx, icy, icz. 2010-12-05 09:27:19 -02:00
Grzegorz Kowal
c6f935a616 SCHEME: remove FIELDCT and FLUXCT parts. 2010-12-05 09:17:13 -02:00
Grzegorz Kowal
5fc6eb70c4 SCHEME: rewrite the HLLC Riemann solver.
- rewrite the HLLC hydrodynamic Riemann solver;
 - also add more conditions for compilation flags;
2010-12-03 16:29:28 -02:00
Grzegorz Kowal
7630328406 SCHEME: small fixes in the adiabatic HLLD solver. 2010-12-03 12:27:53 -02:00
Grzegorz Kowal
91cd15c0de SCHEME: implement the adiabatic HLLD Riemann solver.
- the HLLD approximate solver calculates the numerical fluxes for the
   adiabatic equation of states for the MHD equations;
2010-12-02 17:54:15 -02:00
Grzegorz Kowal
f6c78bb258 SCHEME: implement the isothermal HLLD Riemann solver.
- the HLLD approximate solver calculates the numerical fluxes for the
   isothermal equation of states for the MHD equations;
2010-12-02 12:07:01 -02:00
Grzegorz Kowal
3a1b56860d SCHEME: remove argument 'd' from the Riemann solvers.
- this flag specifies if to return the flux or its spatial derivative;
   this is not used in the GLM-MHD approach;
2010-12-02 10:14:39 -02:00
Grzegorz Kowal
1b995390c5 SCHEME: remove subroutine numerical_flux().
- subroutine numerical_flux() is not used in the GLM-MHD approach, so
   remove it; later, during the implementation of GALERKIN methods, it
   may be reintroduced;
2010-12-02 10:10:40 -02:00
Grzegorz Kowal
fe5cade684 GLM-MHD: obtain the states for Bx and Psi.
- in the GLM-MHD set of equations variables Bx and Psi are couples,
   thus find their values and substitute to the left and right states
   before entering the approximate Riemann solver;
2010-12-01 13:27:01 -02:00
Grzegorz Kowal
c220a578b0 SCHEME: move cmax parameter from module 'evolution' to 'scheme'. 2010-12-01 13:13:27 -02:00
Grzegorz Kowal
db40c6253c SCHEME: fix iteration for reconstruction in HLL.
- fix the index for reconstruction of magnetic field components in the
   subroutine HLL;
2010-12-01 12:39:56 -02:00
Grzegorz Kowal
e58967b9a4 GLM-MHD: copy Psi between primitive and conserved variables.
- update subroutines cons2prim() and prim2cons() to convert the scalar
   potential between primitive and conserved variables;
2010-12-01 10:22:00 -02:00
Grzegorz Kowal
010c49556e GLM-MHD: calculate physical fluxes for B and Psi.
- calculate physical fluxes for the magnetic field components and
   scalar potential in subroutine fluxspeed();
2010-12-01 10:17:10 -02:00
Grzegorz Kowal
4e212d73b9 GLM-MHD: fix the preprocessor flag. 2010-12-01 10:07:06 -02:00
Grzegorz Kowal
6e2e07d9c9 GLM-MHD: update the numerical fluxes in HLL solver.
- reconstruct the states for the magnetic field components and scalar
   potential just like other fluid variables;
 - calculate the numerical fluxes for the magnetic field components and
   scalar potential;
2010-12-01 10:03:00 -02:00
Grzegorz Kowal
0b255858bb GLM_MHD: update magnetic field and potential increment.
- update the magnetic field component and the scalar potential Psi
   increments in the subroutine update();
2010-12-01 09:51:12 -02:00
Grzegorz Kowal
226c2a3fe9 Move variable indices to new module 'variables'.
VARIABLES

 - create new module 'variables' which stores references to variable
   indices; we gonna store dofferent objects related to variables in
   this module;
2010-12-01 09:25:30 -02:00