# Set system-bath interaction # mol1.set_transition_environment((0, 1), cf) mol2.set_transition_environment((0, 1), cf) # # Creating aggregate # agg = Aggregate("Dimer", molecules=[mol1, mol2]) agg.set_coupling_by_dipole_dipole() with energy_units("1/cm"): print(agg.get_resonance_coupling(0, 1)) agg.build(mult=2) with energy_units("1/cm"): rwa_cm = agg.get_RWA_suggestion() rwa = agg.get_RWA_suggestion() # # Prepare for calculation of 2D spectra # # TimeAxis for t2 waiting time t2s = TimeAxis(0.0, 5, 20.0) # # Set up calculator # tcalc = TwoDSpectrumCalculator(t1axis=ta, t2axis=t2s, t3axis=ta, system=agg)
agg.build() # # Now we can start simulations # H = agg.get_Hamiltonian() with energy_units("1/cm"): print("\nExcited state Hamiltonian (energies in 1/cm):\n") # for i in range(1, H.dim): # for j in range(i,H.dim): # print(i,j,":",H.data[i,j]) numpy.set_printoptions(precision=2, linewidth=100, formatter={'all': lambda x: "%8.1f" % x}) print(H.data[1:, 1:]) agg.diagonalize() calc = qr.AbsSpectrumCalculator(tmax, system=agg) #with qr.energy_units("1/cm"): rwa = agg.get_RWA_suggestion() print("RWA frequency =", rwa) calc.bootstrap(rwa=rwa) abss = calc.calculate() abss.normalize2() if _show_plots_: with qr.energy_units("1/cm"): abss.plot(axis=[11500, 13000, 0, 1.1])
# Now we can start simulations # H = agg.get_Hamiltonian() with energy_units("1/cm"): print("\nExcited state Hamiltonian (energies in 1/cm):\n") # for i in range(1, H.dim): # for j in range(i,H.dim): # print(i,j,":",H.data[i,j]) numpy.set_printoptions(precision=2, linewidth=100, formatter={'all':lambda x: "%8.1f" % x}) print(H.data[1:,1:]) agg.diagonalize() calc = qr.AbsSpectrumCalculator(tmax, system=agg) #with qr.energy_units("1/cm"): rwa = agg.get_RWA_suggestion() print("RWA frequency =", rwa) calc.bootstrap(rwa=rwa) abss = calc.calculate() abss.normalize2() if _show_plots_: with qr.energy_units("1/cm"): abss.plot(axis=[11500,13000,0,1.1])
# Set system-bath interaction # mol1.set_transition_environment((0,1),cf) mol2.set_transition_environment((0,1),cf) # # Creating aggregate # agg = Aggregate(name="Dimer", molecules=[mol1, mol2]) agg.set_coupling_by_dipole_dipole() with energy_units("1/cm"): print(agg.get_resonance_coupling(0,1)) agg.build(mult=2) with energy_units("1/cm"): rwa_cm = agg.get_RWA_suggestion() rwa = agg.get_RWA_suggestion() # # Prepare for calculation of 2D spectra # # TimeAxis for t2 waiting time t2s = TimeAxis(0.0, 5, 20.0) # # Set up calculator # tcalc = qr.TwoDSpectrumCalculator(t1axis=ta, t2axis=t2s, t3axis=ta, system=agg)