Coverage for gpaw/test/tddft/test_be_nltd_ip.py: 100%

16 statements  

« prev     ^ index     » next       coverage.py v7.7.1, created at 2025-07-14 00:18 +0000

1import numpy as np 

2from ase import Atoms 

3from gpaw.tddft import TDDFT 

4from gpaw.tddft.abc import LinearAbsorbingBoundary 

5from gpaw.tddft.laser import CWField 

6 

7 

8def test_tddft_be_nltd_ip(in_tmp_dir, gpw_files): 

9 atoms = Atoms('Be', [(0, 0, 0)], pbc=False) 

10 atoms.center(vacuum=6) 

11 

12 td_calc = TDDFT(gpw_files['be_atom_fd'], 

13 td_potential=CWField(1e-3, 2.0 * np.pi / 50.0, 150.0)) 

14 td_calc.set_absorbing_boundary( 

15 LinearAbsorbingBoundary(5.0, 0.01, 

16 atoms.positions.copy())) 

17 td_calc.propagate(8.0, 5) 

18 td_calc.write('be_nl_td.gpw', 'all') 

19 

20 td_rest = TDDFT('be_nl_td.gpw', 

21 td_potential=CWField(1e-3, 2.0 * np.pi / 50.0, 150.0)) 

22 td_rest.set_absorbing_boundary( 

23 LinearAbsorbingBoundary(5.0, 0.01, 

24 atoms.positions.copy())) 

25 td_rest.propagate(8.0, 5) 

26 td_calc.write('be_nl_td.gpw', 'all')