Skip to content

Instantly share code, notes, and snippets.

@amitjamadagni
Created April 12, 2016 09:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save amitjamadagni/191133884c771eb7ab321b33fdac373d to your computer and use it in GitHub Desktop.
Save amitjamadagni/191133884c771eb7ab321b33fdac373d to your computer and use it in GitHub Desktop.
Time dependence in QuDynamics
julia> require("/home/amit/Downloads/SemVII/QuDynamics.jl/src/QuDynamics.jl")
WARNING: `require` is deprecated, use `using` or `import` instead
in depwarn at deprecated.jl:73
[inlined code] from deprecated.jl:694
in require at no file:0
while loading no file, in expression starting on line 0
julia> using QuBase
julia> using QuDynamics
julia> immutable QuSchrodingerEqTD <: QuEquation{1}
hamiltonian_const::QuBase.QuArray
QuSchrodingerEqTD(hamiltonian_const) = new(hamiltonian_const)
end
julia> function fn(H,t)
expm(H*t)
end
fn (generic function with 1 method)
julia> function QuDynamics.operator(QSTD::QuSchrodingerEqTD, t)
fn(QSTD.hamiltonian_const,t)
end
operator (generic function with 9 methods)
julia> qsetd = QuSchrodingerEqTD(sigmax + 2*sigmay + 3*sigmaz)
QuSchrodingerEqTD(2x2 QuMatrix in QuBase.FiniteBasis{QuBase.Orthonormal}:
...coefficients: Array{Complex{Float64},2}
Complex{Float64}[3.0 + 0.0im 1.0 - 2.0im
1.0 + 2.0im -3.0 + 0.0im])
julia> sys = QuPropagator(qsetd, statevec(1, FiniteBasis(2)), 0.:0.1:2*π, QuExpmV())
QuDynamics.QuStateEvolution{QuDynamics.QuExpmV,QuBase.QuArray{QuBase.FiniteBasis{QuBase.Orthonormal},Float64,1,Array{Float64,1}},QuSchrodingerEqTD}(QuSchrodingerEqTD(2x2 QuMatrix in QuBase.FiniteBasis{QuBase.Orthonormal}:
...coefficients: Array{Complex{Float64},2}
Complex{Float64}[3.0 + 0.0im 1.0 - 2.0im
1.0 + 2.0im -3.0 + 0.0im]),2-element QuVector in QuBase.FiniteBasis{QuBase.Orthonormal}:
...coefficients: Array{Float64,1}
[1.0,0.0],0.0:0.1:6.2,QuDynamics.QuExpmV(Dict{Symbol,Any}()))
julia> for (t,psi) in sys
println(t,psi)
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment