Alberto Castro edited Optimal control.tex  over 9 years ago

Commit id: e4b6e5319f95f15ee08598b4b8aab69c0d60817d

deletions | additions      

       

Perhaps the most relevant result of QOCT is the equation for the gradient of $G$, which allows to use the various maximization algorithms available. For the simple formulation given above, this gradient is given by:  \begin{equation}  \label{eq:qoctgradient}  \frac{\partial G}{\partial u_m}(u) = 2 {\rm Im} \int_0^T\!\!{\rm d}t\;  \langle \chi(t)\vert\frac{\partial \hat{H}}{\partial u_m}[u,t]\vert  \psi(t)\rangle\,,  \label{eq:qoctgradient}  \end{equation}  where $\chi$ is the \emph{costate}, an auxiliary wave function that is defined through the following equation of motion:  \begin{eqnarray} 

This equation assumes, in order to keep this description short, that the target functional $F$ depends on the state of the system only at the final time of the propagation $T$, i.e. it is a functional of $\psi(T)$ (otherwise the equations are slightly more complicated). Note the presence of a boundary value equation at the final time of the propagation, as opposed to the equation of motion for the ``real'' system $psi$, that naturally depends on an initial value condition, at time zero. With these simple equations, we may already summarize what is needed from an implementation point of view in order to perform basic QOCT calculations:  \begin{itemize}  \item The first step is the selection of the parameters $u$, that constitute the \emph{search space}. Frequently, these parameters are simply the values that the \emph{control function} (typically, the electric field amplitude) takes at the time intervals that are used to discretize the propagation interval. interval, a ``real time parametrization''.  However, more sopnisticated parametrizations allow to fine-tune the search space, introducing constraints and penalties into the formulation. \item First, Then,  one must decide on an algorithm for maximizing multi-dimensional functions such as $G$.   One possibility is the family of \emph{gradient-less} algorithms, that only require of a procedure to compute the value of the function, and do not necessitate the gradient. In this case, the previous equations are obviously not needed. One only needs then to propagate the system forwards in time, which is what octopus can do best. The value of the function $G$ can then be computed from the result obtained with this propagation, and feed it into the optimization procedure. We have added to octopus a few gradient-less algorithms.  However, the most efficient optimizations can be obtained if the gradient information can be employed. In that case, we can use for example the family of conjugate-gradient algorithms, or the Broyden-Fletcher-Goldfarb-Shanno quasi-Newton scheme -- we use the implementation of these algorithms included in the GSL mathematical library.  \item In order to compute the gradient, one needs to implement of a \emph{backwards-propagation} scheme Finally, note that  for the costate, which obviously does not differ from the ones that are real time parametrization mentioned above, some ad-hoc algorithms, developed  alreadyimplemented in octopus  for the normal forwards propagation. Note, however that first applications of QOCT, exist. These may  in some cases the backwards propagation does not have the exact same simple linear form circumstances be faster  than the forwards propagation, and may include inhomogeneous or non-linear terms. general purpose ones. Some of those have also been implemented in octopus.  \item The final step in In order to compute  the computation gradient, one needs to implement  of a \emph{backwards-propagation} scheme for  the gradient is costate, which obviously does not differ from  the computation of ones that are already implemented in octopus for  the integral given normal forwards propagation. Note, however that  in Eq.~\ref{eq:qoctgradient}. some cases the backwards propagation does not have the exact same simple linear form than the forwards propagation, and may include inhomogeneous or non-linear terms.  \item The final step in the computation of the gradient is the computation of the integral given in Eq.~\ref{eq:qoctgradient}.  \end{itemize} 

Also, the usual formulation of QOCT assumes the linearity of quantum mechanics. However, the time-dependent Kohn-Sham equations are not linear, and this fact complicates both the theory and the numerics. We therefore extended the basic theory to handle the TDDFT equations, and implemented the resulting equations~\cite{Castro2012a}.  Applications Finally, we enumerate some of the applications of the QOCT machinery included in octopus, that can give an idea of the available options:  \begin{enumerate}  \item a~\cite{Rasanen2007} Ref.~\cite{Rasanen2007} shows the optimization of the shape of laser pulses to induce circular electron currents in 2D quantum rings constructed on semiconductors.  \item b~\cite{Rasanen2008b}  \item c~\cite{Rasanen2008}  \item d~\cite{Castro2009e}