You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
String case mismatch: The string for PARAM.inp.esolver_type should be "tddft" in lowercase, not "TDDFT" in uppercase. Due to this, this branch is skipped, which means the electric field force in RT-TDDFT is not applied at all.
Incorrect function call: Why is compute_force from the elecstate::Efield class being called here? It’s unrelated to the RT-TDDFT algorithm. Instead, we should be calling H_TDDFT_pw::compute_force:
Formula issue: Even in the function H_TDDFT_pw::compute_force, the force formula seems incorrect. The amp variable is just a constant amplitude that doesn’t change with time. This should likely be replaced with vext_time or something else. It is worth noting that the H_TDDFT_pw::compute_force function is never called anywhere in the entire program.
The text was updated successfully, but these errors were encountered:
Describe the bug
When I was debugging issue #5333, I found this in
module_hamilt_lcao/hamilt_lcaodft/FORCE_STRESS.cpp
:abacus-develop/source/module_hamilt_lcao/hamilt_lcaodft/FORCE_STRESS.cpp
Lines 272 to 278 in 105fd19
This piece of code has three issues:
PARAM.inp.esolver_type
should be"tddft"
in lowercase, not"TDDFT"
in uppercase. Due to this, this branch is skipped, which means the electric field force in RT-TDDFT is not applied at all.compute_force
from theelecstate::Efield
class being called here? It’s unrelated to the RT-TDDFT algorithm. Instead, we should be callingH_TDDFT_pw::compute_force
:abacus-develop/source/module_elecstate/potentials/H_TDDFT_pw.cpp
Lines 482 to 496 in 105fd19
H_TDDFT_pw::compute_force
, the force formula seems incorrect. Theamp
variable is just a constant amplitude that doesn’t change with time. This should likely be replaced withvext_time
or something else. It is worth noting that theH_TDDFT_pw::compute_force
function is never called anywhere in the entire program.The text was updated successfully, but these errors were encountered: