Grzegorz Kowal
eb2f8dae50
Add missing parentheses in reconstruct() subroutine.
2011-03-28 11:10:30 -03:00
Grzegorz Kowal
d9ad9c4232
Improve calculation of the refinement criterion.
...
- now the refinement criterion uses the second derivative and is
normalized properly to lay between 0.0 and 1.0; it is calculated in a
similar way as in the Flash code;
2011-03-26 19:33:37 -03:00
Grzegorz Kowal
a0f7d5118f
Introduce the compression of the HDF5 output files.
2011-03-26 13:31:52 -03:00
Grzegorz Kowal
0f863de622
Optimize LimO3 reconstruction.
2011-03-25 01:05:58 -03:00
Grzegorz Kowal
f9b00e79af
Add the Orszag-Tang MHD test problem.
2011-03-24 19:26:57 -03:00
Grzegorz Kowal
2e4273326f
Add minmod4 function and use it in MP interpolation.
2011-03-24 16:15:51 -03:00
Grzegorz Kowal
ba92cd4f7a
Change the default compiler to GNU Fortran.
2011-03-23 23:34:48 -03:00
Grzegorz Kowal
d05f1d4116
Remove linking to HDF4 libraries.
2011-03-23 22:22:57 -03:00
Grzegorz Kowal
1841ae56f9
Optimize MP reconstruction methods.
2011-03-23 18:01:16 -03: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
2320bafe93
Print some info about solved set of equations.
2011-03-21 18:24:55 -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
5a8cd7d184
Implement 'multi current sheet' problem.
2011-03-18 14:00:27 -03:00
Grzegorz Kowal
4e1e535ec6
Reorganize compilation flags and move them to make.config.
...
- in this way all flags are controlled from make.config and host
specific files choose the right compilers, options, and libraries,
depending on the chosen flags;
2011-03-11 19:55:31 -03:00
Grzegorz Kowal
2c3e4eb509
Slightly optimize subroutine fourier_transform().
2011-03-10 15:56:21 -03:00
Grzegorz Kowal
f07457e084
Reorganize printed informations, parameters and timings.
2011-03-10 15:22:10 -03:00
Grzegorz Kowal
4176930759
Add more timers to forcing subroutines.
...
- now each step of forcing (initialization, evolution, Fourier
transforms) has separate time; this helps to optimize the forcing
algorithm;
2011-03-10 14:57:25 -03:00
Grzegorz Kowal
cd91d350ab
Introduce a compilation flag REFINE.
...
- the flag REFINE determines if the code should be compiler with the
adaptive mesh refining/derefining; otherwise, the static mesh is
generated;
2011-03-10 01:08:00 -03:00
Grzegorz Kowal
1169454cde
Correct calculation of the forcing component amplitudes.
...
- correct calculating the amplitudes of the forcing components;
micro optimizations of the force initialization;
- correct the evolution of the forcing components so the power input
corresponds exactly to the defined power fpow;
2011-03-10 01:04:06 -03:00
Grzegorz Kowal
aa5ecd5d38
FORCE: reduce number of components and fix constants.
...
- we don't need all components from a sphere in the Fourier space, only
half components are independent, so reduce it's number;
- correct the amplitude calculation so the proper amount of energy is
injected in the system;
2011-03-08 23:47:18 -03:00
Grzegorz Kowal
01a1f671bb
FORCE: adjust the power coefficient for forcing.
2011-03-08 22:39:38 -03:00
Grzegorz Kowal
0638a74d7b
INTEGRALS: add forcing correlations to the integrals file.
...
- calculate the force-force correlation in the real and Fourier spaces
and store them in the integrals file;
2011-03-08 21:56:47 -03:00
Grzegorz Kowal
dfe54acf48
FORCE: fix Fourier transform for multiblock domains.
2011-03-07 17:23:49 -03:00
Grzegorz Kowal
c597a3ef43
FORCE: correct sign in the inverse Fourier transform.
2011-03-07 01:06:00 -03:00
Grzegorz Kowal
28c525bcfc
FORCE: implement condition for minimizing velocity-force correlation.
2011-03-07 00:54:46 -03:00
Grzegorz Kowal
cfb35e7cd9
MPI: implement reduction of a complex array.
...
- reduce the velocity Fourier components from all processors;
2011-03-07 00:28:58 -03:00
Grzegorz Kowal
de3d89bb1b
FORCE: implement and use Fourier transform of velocity.
...
- we need to calculate Fourier transform of velocity for all forcing
components in order to minimize the velocity-force correlation;
2011-03-07 00:08:31 -03:00
Grzegorz Kowal
605cb1e370
FORCE: keep the forcing amplitudes in a separate array.
2011-03-06 23:53:36 -03:00
Grzegorz Kowal
16b550e765
FORCE: update momenta due to forcinf only once.
...
- do not put forcing terms in the RK substeps; instead, update the
momenta components only once before executing the Riemann solver and
update step;
2011-03-06 23:37:51 -03:00
Grzegorz Kowal
36967b6f00
INTEGRALS: add initial support for calculation of integrals.
...
- add a new module INTEGRALS which handles initialization and
calculation of the conserved variables and energies;
- add make dependencies to makefile;
- call the initialization, storage and termination subroutines from the
driver;
2011-03-02 15:52:33 -03:00
Grzegorz Kowal
ec59dcea1a
FORCE: put back the initialization of the forcing module.
...
- it was mistakenly removed during moving the initialization of the
mesh module;
2011-03-02 15:19:01 -03:00
Grzegorz Kowal
c4fe923faf
MESH: move initialization of mesh to be done earlier.
...
- since other modules might depend on the mesh, move its initialization
as soon as possible; similarly, perform clearing of the mesh at the
end;
2011-03-02 15:04:16 -03:00
Grzegorz Kowal
6e928be724
MESH: add an array to store volume elements for all levels.
2011-03-02 15:01:08 -03:00
Grzegorz Kowal
7d7a0b7e32
MPI: add subroutine to reduce double precision array.
2011-03-02 14:56:22 -03:00
Grzegorz Kowal
fb4218e542
Add support for timer in the FORCING module subroutines.
2011-03-01 18:58:18 -03:00
Grzegorz Kowal
ceae2e27e2
FORCE: optimize subroutine real_forcing().
...
- we moved the calculation of trigonometric functions out of the loop,
and now we calculate the directional sinuses and cosinuses and
calculate the total value using the trigonometric relations; this
speeds up the inverse Fourier transform significantly;
2011-03-01 16:46:06 -03:00
Grzegorz Kowal
b3c1c94e1c
MAKE: add more cleaning options to makefile.
2011-02-28 16:08:20 -03:00
Grzegorz Kowal
272a8b2d50
DRIVER: change a bit the progress info.
2011-02-28 16:04:38 -03:00
Grzegorz Kowal
2682d37d20
Update the copyright information.
2011-02-27 22:45:54 -03:00
Grzegorz Kowal
a8cd2b256f
DRIVER: change the way progress is printed.
2011-02-27 22:39:56 -03:00
Grzegorz Kowal
d97799cd50
Make GNU Fortran happy.
2011-02-27 13:49:26 -03:00
Grzegorz Kowal
0bee62e6eb
BOUNDARIES: prolongation needs to be done twice.
...
- prolongation needs to be done twice since it uses multidimensional
interpolation;
2011-02-27 13:40:11 -03:00
Grzegorz Kowal
7bb39dbd35
BOUNDARIES: separate prolongation from copying and restriction.
...
- the interpolation used in the prolongation of boundaries requires the
boundary values from the neighbor, thus if we prolongate the
boundaries before restricting the neighbor boundaries the values
might be incorrect resulting in a wrong interpolation; separating
prolontation from copying and restriction and moving it to the last
step of update procedure solves the problem of incorrect
interpolation and in consequence wrong update of boundaries;
2011-02-26 22:46:45 -03:00
Grzegorz Kowal
2834d6fea1
Make GNU compiler happy.
2011-02-26 14:08:10 -03:00
Grzegorz Kowal
460e04bf30
Merge branch 'master' into mesh_rewrite
2011-02-22 19:10:53 -03:00
Grzegorz Kowal
b660be2409
FORCE: fix calculation of the direction of forcing terms.
...
- in the case when kx = ky = 0 and kz <> 0 all components of
directional vectors e1 and e2 become zero; fix this situation by
rotating the system, so e1 lays in the YZ plane instead of XY plane;
2011-02-22 19:08:12 -03:00
Grzegorz Kowal
ab7e1c5143
MESH: improve printed info about the block structure.
2011-02-16 12:08:50 -02:00