Skip to content

Commit 2f175b3

Browse files
authored
fix: QC with rnumber (#406)
* fix: QC with rnumber * format
1 parent 97a703e commit 2f175b3

File tree

2 files changed

+38
-1
lines changed

2 files changed

+38
-1
lines changed

ext/QuantumCumulantsExt.jl

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,11 @@ function HarmonicBalance.Problem(MFeqs::MeanfieldEquations, parameters, swept, f
9999
vars, equations = compute_real_equations(MFeqs)
100100

101101
return HarmonicBalance.Problem(
102-
equations, vars, parameters, OrderedDict(swept), OrderedDict(fixed)
102+
Num.(equations),
103+
Num.(vars),
104+
Num.(parameters),
105+
OrderedDict(swept),
106+
OrderedDict(fixed),
103107
)
104108
end
105109

test/extensions/QuantumCumulantsExt.jl

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,3 +24,36 @@ using Plots
2424
result = get_steady_states(problem, TotalDegree())
2525
@test sum(any.(get_class(result, "stable"))) == 3
2626
end
27+
28+
@testset "work with rnumbers and cumber" begin
29+
@testset "@cnumbers" begin
30+
h = FockSpace(:cavity)
31+
@qnumbers a::Destroy(h)
32+
@cnumbers Δ U G κ
33+
param = [Δ, U, G, κ]
34+
35+
H_RWA = -Δ * a' * a + U * (a'^2 * a^2) / 2 - G * (a' * a' + a * a) / 2
36+
ops = [a, a']
37+
38+
eqs = meanfield(ops, H_RWA, [a]; rates=[κ], order=1)
39+
40+
fixed = (U => 0.001, κ => 0.002)
41+
varied ==> range(-0.03, 0.03, 50), G => range(1e-5, 0.02, 50))
42+
problem_c1 = HarmonicBalance.Problem(complete(eqs), param, varied, fixed)
43+
end
44+
@testset "@rnumbers" begin
45+
h = FockSpace(:cavity)
46+
@qnumbers a::Destroy(h)
47+
@rnumbers Δ U G κ
48+
param = [Δ, U, G, κ]
49+
50+
H_RWA = -Δ * a' * a + U * (a'^2 * a^2) / 2 - G * (a' * a' + a * a) / 2
51+
ops = [a, a']
52+
53+
eqs = meanfield(ops, H_RWA, [a]; rates=[κ], order=1)
54+
55+
fixed = (U => 0.001, κ => 0.002)
56+
varied ==> range(-0.03, 0.03, 50), G => range(1e-5, 0.02, 50))
57+
problem_c1 = HarmonicBalance.Problem(complete(eqs), param, varied, fixed)
58+
end
59+
end

0 commit comments

Comments
 (0)