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
Grzegorz Kowal
7fb9a56625
MESH: improve block configuration in domain_default().
...
- now the meta blocks are inserted in the chain in the proper order and
their config flags are set accordingly to the block neighbors; this
should work in 2D and 3D, as well;
note: in order of optimize the initial configuration we should first
sort the dimentions, then generate the proper configuration for
the sorted dimentions, and then rotate the domain back to the
original dimensions updating the config flags properly; this
require a bit of thinking so we leave the user for now, how to
orient the domain properly;
2011-02-16 11:28:50 -02:00
Grzegorz Kowal
1da8cc659b
MESH: remove subroutines for problem domain generation.
...
- remove subroutines domain_blast() and domain_reconnection() since
subroutine domain_default() handles these configurations properly
now;
2010-12-21 20:30:04 -02:00
Grzegorz Kowal
9aea1fb673
MESH: rewrite subroutine domain_default().
...
- rewrite subroutine domain_default() to support arbitrary number of
blocks along each dimension for the lowest level; the lowest level
block dimension is set in rdims vector; this version supports 2D for
now;
2010-12-21 20:25:17 -02:00
Grzegorz Kowal
7c1636a193
CONFIG: rename parameters rdims(x,y,z) to rdim(x,y,z).
2010-12-15 15:54:30 -02:00
Grzegorz Kowal
3bd4868bb2
EVOLUTION: take resistivity timestep condition into account.
2010-12-14 17:29:38 -02:00
Grzegorz Kowal
c97175fc60
BOUNDARIES: restrict magnetic field not only when GLM.
2010-12-14 16:38:28 -02:00
Grzegorz Kowal
e2e404ad94
MESH: restrict magnetic field not only when GLM.
2010-12-14 16:34:51 -02:00
Grzegorz Kowal
937a74ff3f
BOUNDARIES: update magnetic field not only when GLM.
2010-12-14 16:33:41 -02:00
Grzegorz Kowal
0a3d1036e2
BOUNDARIES: improve the divergence free boundary conditions.
...
- in order to find the boundary value for normal magnetic field
component we use the divergence free condition, i.e., we need to
calculate normal direvatived perpendicular components; now we used
the derivative calculation with the proper limiting in order to keep
the consistency of the scheme;
- in the interpolation module the new function has been added returning
the limited derivative;
2010-12-14 16:11:26 -02:00
Grzegorz Kowal
a359f3949a
MESH: improve autobalancing for block distribution.
...
- improve the algorithm for autobalancing for more equal data block
distribution;
2010-12-14 11:19:11 -02:00
Grzegorz Kowal
28cc35d0ab
BLOCKS: remove the flux fields from data block structure.
...
- we do not use the flux fields so in order to save much more space
remove them from the data block structure;
2010-12-14 10:35:42 -02:00
Grzegorz Kowal
cd995dd076
IO: don't store fluxes.
...
- fluxes will be removed from the data block structure so don't store
them;
2010-12-14 10:33:32 -02:00
Grzegorz Kowal
9061068b5a
IO: correct wording in some comments.
2010-12-14 10:31:23 -02:00
Grzegorz Kowal
5b74c7d4cb
IO: store data objects only if available on CPU.
...
- the data blocks should be stored in the appropriate group only if
they are allocated on the current processors;
2010-12-14 10:29:49 -02:00
Grzegorz Kowal
e2a154de2a
CONFIG: remove warning about not implemented parameter.
2010-12-14 10:12:13 -02:00
Grzegorz Kowal
8cfee01238
BOUNDARIES: implement divergence free boundary conditions.
2010-12-13 11:47:38 -02: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
b9798e1c96
PROBLEM: correct perturbation in reconnection problem.
2010-12-11 19:25:59 -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
6be2c79940
BOUNDARIES: rewrite subroutine bnd_spec().
2010-12-11 14:01:16 -02:00
Grzegorz Kowal
09095f14f6
PROBLEM: rewrite the perturbation in reconnection problem.
2010-12-10 18:47:28 -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
6764ed4a89
RESISTIVITY: add a new config parameter ueta.
...
- a new parameter ueta determines the value of resistivity coefficient;
2010-12-10 15:39:24 -02:00
Grzegorz Kowal
5520e726bf
RESISTIVITY: add a compilation flag to turn on resistivity.
2010-12-10 15:38:17 -02:00
Grzegorz Kowal
242a421b79
PROBLEM: prepare specific domain for reconnection problem.
2010-12-10 15:10:43 -02:00
Grzegorz Kowal
713868c713
PROBLEM: make total pressure uniform in reconnection problem.
2010-12-10 14:02:00 -02:00
Grzegorz Kowal
e4504e3549
FORCING: generate the same phases on all CPUs.
...
- to make the forcing consistent across the domain we need to generate
the same phases on all CPUs;
2010-12-09 18:17:59 -02:00
Grzegorz Kowal
da8d2fee81
EVOLUTION: include forcing terms in the RK3 integration.
2010-12-09 17:54:59 -02:00
Grzegorz Kowal
2e8a1fd16f
FORCING: normalize the forcing terms by dt.
...
- this normalization is required since the forcing terms integration
takes into account dt;
2010-12-09 16:23:27 -02:00
Grzegorz Kowal
c430192a35
FORCING: slightly optimize real_forcing().
2010-12-09 16:22:48 -02:00
Grzegorz Kowal
328200b6fc
PROBLEM: fix q and u sizes in turbulence problem.
2010-12-08 22:23:31 -02:00
Grzegorz Kowal
83e53f1001
PROBLEM: implement setup for turbulence problem.
2010-12-08 22:05:18 -02:00
Grzegorz Kowal
04a3f6a4ba
EVOLUTION: add forcing terms in the RK2 update.
2010-12-08 21:55:45 -02:00
Grzegorz Kowal
cf7db3c3a6
RANDOM: fix compilation without MPI.
2010-12-08 21:49:53 -02:00