Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Time integrated functional #34

Open
lgravina1997 opened this issue Mar 29, 2023 · 1 comment
Open

Time integrated functional #34

lgravina1997 opened this issue Mar 29, 2023 · 1 comment
Labels
enhancement New feature or request

Comments

@lgravina1997
Copy link

I am trying to optimise the control pulse to empty an optical resonator as fast as possible by, e.g switching off a driving field and controlling its detuning from the resonance frequency.

The initial state is therefore a coherent state, and the final one, the vacuum. To maximise the speed at which the cavity is empty the cost function to minimise would be, e.g, the photon number integrated cross the dynamics. Is there a way to set this as the optimisation functional?

@goerz
Copy link
Member

goerz commented Mar 29, 2023

Krotov's method in principle allows for state-dependent running costs, see Reich at al. J. Chem. Phys. 136, 104103 (2012) (arXiv). However, it has not yet been implemented in this package.

The exact math for Krotov would require a (time-continuous) inhomogeneous backward propagation, which currently isn't implemented in QuantumPropagators.jl. I'll probably get around to that eventually, but not anytime soon. I have a conjecture that it might work to use a "discrete inhomogeneous backward propagation", as I speculate in Quantum 6, 871 (2022), which uses a regular backward propagation and then just adds the inhomogenous term as a constant. That would be much easier to implement, basically the same as JuliaQuantumControl/GRAPE.jl#53 for GRAPE.

So if there's a good example, I might give it a shot after implementing the running costs for GRAPE, to see if it works. If it does, great, you'll be able to do the optimization with either GRAPE or Krotov. If not, you probably won't be able to solve this kind of optimization problem with Krotov.jl in the near future.

@goerz goerz added the enhancement New feature or request label Mar 29, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants