def test_adaptive_zero_t(method): np.random.seed(0) evolve_config = EvolveConfig(method=method, guess_dt=0.1, adaptive=True) ct = ChargeTransport(band_limit_mol_list, evolve_config=evolve_config, stop_at_edge=True) ct.evolve(evolve_dt=5.) assert_band_limit(ct, 1e-2)
def test_bandlimit_zero_t(method, evolve_dt, nsteps, rtol, scheme): np.random.seed(0) evolve_config = EvolveConfig(method) ct = ChargeTransport(band_limit_mol_list.switch_scheme(scheme), evolve_config=evolve_config) ct.stop_at_edge = True ct.evolve(evolve_dt, nsteps) assert_band_limit(ct, rtol)
def test_gaussian_bond_dim(): compress_config = CompressConfig( criteria=CompressCriteria.fixed, bonddim_distri=BondDimDistri.center_gauss, max_bonddim=10, ) evolve_config = EvolveConfig(guess_dt=0.1, adaptive=True) ct = ChargeTransport( band_limit_mol_list, compress_config=compress_config, evolve_config=evolve_config, ) ct.stop_at_edge = True ct.evolve(evolve_dt=2.) assert_band_limit(ct, 1e-2)
def test_32backend(switch_to_32backend): evolve_config = EvolveConfig(evolve_dt=4, adaptive=True) ct = ChargeTransport(band_limit_mol_list, evolve_config=evolve_config) ct.stop_at_edge = True ct.evolve() assert_band_limit(ct, 1e-2)