@@ -102,13 +102,13 @@ qualitative result is not really changed though.
102
102
alpha = 0.05
103
103
w_cutoff = 10 * Omega
104
104
epsilon = 2 * Omega
105
- dkmax = 10
105
+ tcut = 2.0
106
106
epsrel = 1e-5
107
107
final_t = 20
108
108
delta_t = 0.2
109
109
initial_state = spin_down
110
110
corr = oqupy.PowerLawSD(alpha, 1, w_cutoff, temperature = 1)
111
- pars = oqupy.TempoParameters(delta_t, dkmax , epsrel)
111
+ pars = oqupy.TempoParameters(delta_t, tcut , epsrel)
112
112
system = oqupy.System(Omega*s_x + epsilon*s_z)
113
113
bath = oqupy.Bath(s_z, corr)
114
114
pt = oqupy.PtTempo(bath, 0.0, final_t, pars)
@@ -118,8 +118,8 @@ qualitative result is not really changed though.
118
118
.. parsed-literal ::
119
119
120
120
--> PT-TEMPO computation:
121
- 100.0% 100 of 100 [########################################] 00:00:03
122
- Elapsed time: 3.1s
121
+ 100.0% 100 of 100 [########################################] 00:00:00
122
+ Elapsed time: 0.8s
123
123
124
124
125
125
Now as we saw previously the process tensor can readily be used to
@@ -145,14 +145,14 @@ matrix elements evolve.
145
145
146
146
--> Compute dynamics:
147
147
100.0% 100 of 100 [########################################] 00:00:00
148
- Elapsed time: 0.4s
148
+ Elapsed time: 0.1s
149
149
150
150
151
151
152
152
153
153
.. parsed-literal ::
154
154
155
- <matplotlib.legend.Legend at 0x7ff2e5df9da0 >
155
+ <matplotlib.legend.Legend at 0x7fd9cf197fd0 >
156
156
157
157
158
158
@@ -241,8 +241,8 @@ frequency, in this case let’s look at ``w = Omega`` and a bandwidth of
241
241
.. parsed-literal ::
242
242
243
243
--> Compute correlations:
244
- 100.0% 100 of 100 [########################################] 00:00:14
245
- Elapsed time: 14.4s
244
+ 100.0% 100 of 100 [########################################] 00:00:07
245
+ Elapsed time: 7.7s
246
246
247
247
248
248
@@ -277,23 +277,10 @@ see what happens if we want the energy of another mode now, let’s say
277
277
plt.xlabel(r'$\Omega t$')
278
278
plt.ylabel(r'$\Delta Q (2 \Omega, t)$')
279
279
280
-
281
-
282
-
283
- .. parsed-literal ::
284
-
285
- Text(0, 0.5, '$\\ Delta Q (2 \\ Omega, t)$')
286
-
287
-
288
-
289
-
290
- .. image :: bath_dynamics_files/bath_dynamics_16_1.png
291
-
292
-
293
280
Much quicker! This is because the same set of system correlation
294
281
functions can be used to compute any bath correlation function
295
282
:math: `\langle \alpha _2 (t_2 )\alpha _1 (t_1 )\rangle ` where
296
- :math: `\alpha _ 2 , \alpha _1 \in \ { a_k^\dagger ,a_k\}` and
283
+ :math: `\alpha \_ 2 , \alpha _1 \in {a_k^\dagger ,a_k}` and
297
284
:math: `t_1 ,t_2 < t_N`. So now we see the logic of having a bath_dynamics
298
285
object, it allows us to conveniently store the calculated system
299
286
correlation functions and re-use them as we like :)
@@ -320,19 +307,6 @@ exchanged over the process so simply look at the final value of
320
307
plt.xlabel(r"Mode Frequency$/\Omega$")
321
308
plt.ylabel(r"Heat Exchanged$/\Omega$")
322
309
323
-
324
-
325
-
326
- .. parsed-literal ::
327
-
328
- Text(0, 0.5, 'Heat Exchanged$/\\ Omega$')
329
-
330
-
331
-
332
-
333
- .. image :: bath_dynamics_files/bath_dynamics_18_1.png
334
-
335
-
336
310
This is highly oscillatory, perhaps unsurprising from the dynamics we
337
311
generated but still it would be nice to smooth this out. We expect the
338
312
result to eventually equilibrate but with such a small bandwidth this
@@ -355,22 +329,10 @@ we average over the last :math:`n` timesteps where
355
329
plt.xlabel(r"Mode Frequency$/\Omega$")
356
330
plt.ylabel(r"Heat Exchanged$/\Omega$")
357
331
358
-
359
-
360
-
361
- .. parsed-literal ::
362
-
363
- Text(0, 0.5, 'Heat Exchanged$/\\ Omega$')
364
-
365
-
366
-
367
-
368
- .. image :: bath_dynamics_files/bath_dynamics_20_1.png
369
-
370
-
371
332
Here, as in the paper, we see heat is absorbed by the system from the
372
333
band of the modes in the vicinity of
373
334
:math: `\tilde {\Omega }=\sqrt {\Omega ^2 +\epsilon ^2 }`. This seems sensible
374
335
as in a Markovian theory the system would sample the environment purely
375
336
at its eigensplitting :math: `\tilde {\Omega }`.
376
337
338
+ --------------
0 commit comments