26022c4ce0
EVOLUTION, FORCING: Add injected flag to update_forcing().
...
This flag indicates whether the energy injection was performed. If not,
there is no need for the variable update.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2023-08-29 17:43:03 -03:00
271dd571ae
FORCING: Reset forcing statistics if there is no driving.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2023-02-28 10:15:23 -03:00
99d5196736
FORCING: Allow to specify the period of turbulence injection.
...
The period is controlled by two parameters:
'injection_time_start' - the beginning of the injection period,
'injection_time_stop' - the end of the injection period.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2023-02-27 10:04:06 -03:00
81de98d9e2
Update the copyright year to 2023.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2023-02-01 18:36:37 -03:00
f59db0375f
FORCING: Add parameter 'driving_velocity'.
...
By default this parameter is set to zero and the behavior is the same as
before. However, if this parameter is set to a value larger than zero,
it determines the driving time scale for the Ornstein–Uhlenbeck method,
and the injection power for the Alvelius method.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-11-27 15:55:57 -03:00
b28a42427c
FORCING: Parallelize inject_eddy() using OpenMP.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-11-25 18:13:22 -03:00
9ee8c0a2ae
FORCING: Slightly rewrite the parallelization of get_vcoefs().
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-11-25 18:10:12 -03:00
89be37c8b5
FORCING: Parallelize inject_fmodes() using OpenMP.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-11-25 16:07:04 -03:00
36544af793
FORCING: Parallelize get_vcoefs() using OpenMP.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-11-25 16:06:15 -03:00
ec7d12260e
FORCING: Adjust forcing modes for domain smaller than unity.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-11-16 13:41:43 -03:00
22104fb867
FORCING: Fix region of turbulence driving.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-11-07 19:56:47 -03:00
4f68d94827
FORCING: Implement driving region for in non-periodic directions.
...
This allows to control in which region the turbulence perturbation
should be injected.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-04-07 10:33:30 -03:00
9829505650
Update copyright year to 2022.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-02-02 09:51:41 -03:00
a634d9bed5
VARIOUS: Make thread number thread private.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-01-08 11:52:16 -03:00
977fd180ec
FORCING: Make variable initialization OpenMP conformant.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2022-01-08 11:09:45 -03:00
c6fc8d5194
OPENMP: Declare some local variables as threadprivate.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-07 19:55:30 -03:00
ea0b9b83dc
WORKSPACE: Make workspace thread safe.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-12-07 10:46:18 -03:00
863b7c5a85
IO: Rewrite write_binary_xml() so it accepts a pointer instead of array.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-11-30 17:45:33 -03:00
6afc2c5311
FORCING: Use print_message().
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-11-19 17:58:40 -03:00
f659000e8c
PROFILE: Remove all custom profiling.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-11-16 15:22:15 -03:00
2ac66d3d37
FORCING: Reset work_in_use in inject_fmodes_block().
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-11-15 17:22:52 -03:00
11559f1070
FORCING: Use resize_workspace() in inject_fmodes_block().
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-11-13 21:43:07 -03:00
a381fc0cce
MESH: Remove workspace from this module.
...
Use everywhere the workspace provided by module WORKSPACE.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-11-12 22:35:05 -03:00
7b4a54f71a
FORCING: Use workspace in inject_fmodes_block().
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-11-12 14:10:53 -03:00
58605eb177
FORCING: Use %dU instead of local arrays for acceleration.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-11-11 20:35:25 -03:00
3d16d5c13d
Update copyrights.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2021-02-04 17:35:04 -03:00
d05e3062fc
FORCING: Remove unused variables for 2D case.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-15 01:25:31 -03:00
c15378bddd
MPITOOLS: Rewrite MPI support using Fortran 2008 interface.
...
Use procedure interfaces, remove unused variables, etc.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-14 19:40:10 -03:00
a0acaa9f40
FORCING: Clean up compiler warnings.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-06 10:40:17 -03:00
ebccb96d0f
FORCING, IO: Make conversion to complex numbers double precision.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-08-06 10:30:43 -03:00
98fc748f9b
FORCING: Initialize status argument.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-07-30 12:05:34 -03:00
c5aa43f8ff
FORCING: Correct calculation of the acceleration RMS value.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-05-09 19:58:39 -03:00
195d8895b0
FORCING: Rewrite Fourier forcing so both methods use vectors e1 and e2.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-05-07 19:28:04 -03:00
09612783a7
Revert "FORCING: Take into account solenoidal parameter in e1 and e2 vectors."
...
This reverts commit 0303f4ed84c752324bb5c9195dcab1547c0df4b9.
2020-05-03 19:06:48 -03:00
0303f4ed84
FORCING: Take into account solenoidal parameter in e1 and e2 vectors.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-05-03 18:20:53 -03:00
15162344f5
FORCING: Driving time and velocity scales are determined from the power.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-05-03 17:23:48 -03:00
836b1a873c
FORCING: Calculate driving scales from driving power.
...
The driving power and injection scale determine the characteristic time
velocity and acceleration scales.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-05-03 17:20:45 -03:00
f1c30dffec
EVOLUTION, FORCING: Call update_forcing() only when enabled.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-05-01 21:16:46 -03:00
0631962b4d
FORCING: Export the number and coefficients of driving modes.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-04-29 17:37:41 -03:00
586df0bfa6
FORCING: Fix generation of vectors e1 and e2 in Alvelius method.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-04-28 14:25:15 -03:00
24d33316ae
RANDOM: Change Marsaglia's xorshift to Vigna's xoshiro256+ generator.
...
Completely rewrite the random generator module. The new method is
true 64-bit floating point generator in contrast to 32-bit Marsaglia's
methods. Add recommended seeds' initialization and jump for parallel
computations. Make function names more meaningful and add new functions
in IO module to store the seeds properly.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-04-25 18:37:58 -03:00
7b0b4e5e51
FORCING: Allow to set characteristic velocity in OH driving.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-04-23 17:34:53 -03:00
dcdcc303eb
FORCING: Fix e2vec NaNs in 2D case, break long lines.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-04-23 16:24:48 -03:00
198d0f5796
FORCING: Fix compilation when MPI=N.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-04-22 22:08:41 -03:00
b8dd0c5b4f
FORCING: Fix compilation when NDIMS = 2.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-04-22 22:03:34 -03:00
ddbb42a90f
FORCING: Implement driving force by Alvelius.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-04-22 21:33:04 -03:00
0298adf261
FORCING: Implement Ornstein–Uhlenbeck process driving.
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2020-04-20 13:12:45 -03:00
035db8370a
Merge branch 'master' into forcing
...
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
2019-02-15 18:26:13 -02:00