Introduce an algorithm class
Description
Several changes related to the multisystem propagators:
- some cleaning
- add an algorithm class that implements the concept of algorithms as lists of algorithmic operations.
- use the new classes for the propagators
- move the description of the algorithmic operations specific to a given propagator to the corresponding module
The long term idea is that each system should have an algorithm that is executed during the calculation. This might be something different than a TD propagator, like an energy minimization. Before we get there, more changes are required to the framework, but this will be done over several merge requests.
Contributes to #376 (closed)
News snippet
Introduce an algorithm class.
Checklist
-
I have checked that my code follows the Octopus coding standards -
I have added tests for all the new features added in this request.
Merge request reports
Activity
changed milestone to %11.0
added Multisystem label
Codecov Report
Merging #1026 into develop will increase coverage by
0.02%
. The diff coverage is69.01%
.@@ Coverage Diff @@ ## develop #1026 +/- ## =========================================== + Coverage 68.36% 68.38% +0.02% =========================================== Files 512 513 +1 Lines 97906 97872 -34 =========================================== - Hits 66930 66927 -3 + Misses 30976 30945 -31
Impacted Files Coverage Δ src/classical/charged_particle.F90 92.30% <ø> (-0.55%)
src/electrons/electrons.F90 65.83% <ø> (+1.59%)
src/hamiltonian/gauge_field.F90 85.05% <ø> (-0.08%)
src/multisystem/system.F90 74.13% <0.00%> (-0.20%)
src/td/propagator_elec.F90 86.70% <25.00%> (ø)
src/multisystem/propagator_beeman.F90 57.14% <43.75%> (ø)
src/multisystem/propagator_exp_mid.F90 61.29% <52.63%> (ø)
src/classical/classical_particle.F90 88.65% <100.00%> (-0.19%)
src/maxwell/system_mxll.F90 84.16% <100.00%> (-0.26%)
src/multisystem/algorithm.F90 100.00% <100.00%> (ø)
... and 5 more
Continue to review full report at Codecov.
Legend - Click here to learn more
Δ = absolute <relative> (impact)
,ø = not affected
,? = missing data
Powered by Codecov. Last update 1558e53...026aeda. Read the comment docs.Edited by Codecovassigned to @nicolastd
- Resolved by Nicolas Tancogne-Dejean
- Resolved by Nicolas Tancogne-Dejean
- Resolved by Nicolas Tancogne-Dejean
- Resolved by Nicolas Tancogne-Dejean
- Resolved by Nicolas Tancogne-Dejean
- Resolved by Nicolas Tancogne-Dejean
@micael.oliveira Apart from minor comments, this looks ready to be merge. Once you address them, I will merge it.
added 4 commits
Toggle commit listadded 6 commits
- 0e711fbe - Deleted the store_current_status defered method from the system class. Either...
- a13acee8 - Delete ununsed SYNC propagator operation.
- 676cc6c7 - Add new algorithm and algorithmic_step classes.
- 5e2f751b - Using the new algorithm class in the propagator.
- e49abfa1 - Move algorithmic operations that are specific to certain propagators to the corresponding module.
- 7280707f - Improve description of several algorithmic operations.
Toggle commit listassigned to @heiko.appel
- Resolved by Heiko Appel
- Resolved by Heiko Appel
- Resolved by Heiko Appel
added 4 commits
Toggle commit list