|
112 | 112 | sol_me = mesolve(prob_me) |
113 | 113 | sol_me2 = mesolve(H, ψ0, tlist, c_ops, progress_bar = Val(false)) |
114 | 114 | sol_me3 = mesolve(H, ψ0, tlist, c_ops, e_ops = e_ops, saveat = saveat, progress_bar = Val(false)) |
115 | | - sol_me4 = mesolve(H, ψ0, tlist, progress_bar = Val(false)) |
116 | 115 | prob_mc = mcsolveProblem(H, ψ0, tlist, c_ops, e_ops = e_ops, progress_bar = Val(false)) |
117 | 116 | sol_mc = mcsolve(H, ψ0, tlist, c_ops, e_ops = e_ops, progress_bar = Val(false)) |
118 | 117 | sol_mc2 = mcsolve( |
|
184 | 183 | rng = MersenneTwister(12), |
185 | 184 | ) |
186 | 185 |
|
| 186 | + # Redirect to `sesolve` |
| 187 | + sol_me5 = mesolve(H, ψ0, tlist, progress_bar = Val(false)) |
| 188 | + |
187 | 189 | ρt_mc = [ket2dm.(normalize.(states)) for states in sol_mc_states.states] |
188 | 190 | expect_mc_states = mapreduce(states -> expect.(Ref(e_ops[1]), states), hcat, ρt_mc) |
189 | 191 | expect_mc_states_mean = sum(expect_mc_states, dims = 2) / size(expect_mc_states, 2) |
|
199 | 201 | sol_sme_string = sprint((t, s) -> show(t, "text/plain", s), sol_sme) |
200 | 202 | @test prob_me.prob.f.f isa MatrixOperator |
201 | 203 | @test prob_mc.prob.f.f isa MatrixOperator |
202 | | - @test isket(sol_me4.states[1]) |
| 204 | + @test isket(sol_me5.states[1]) |
203 | 205 | @test sum(abs, sol_mc.expect .- sol_me.expect) / length(tlist) < 0.1 |
204 | 206 | @test sum(abs, sol_mc2.expect .- sol_me.expect) / length(tlist) < 0.1 |
205 | 207 | @test sum(abs, vec(expect_mc_states_mean) .- vec(sol_me.expect[1, saveat_idxs])) / length(tlist) < 0.1 |
|
0 commit comments