\section{Numerical experiments}\label{sec:exp}


In this section, we provide preliminary numerical experiments to illustrate our theory. We implement {\DPUM} on a toy model that is not log-concave (mixture of Gaussians).

\textbf{Setup.} The target distribution is a mixture of five Gaussians in dimension 5. On Figures~\ref{fig:667} and~\ref{fig:42}, the red stars represent the means of the Gaussians and the red ellipses around the stars represent the variances of the Gaussians. We start by sampling 500 independent points (in blue) from a standard Gaussian. Then, we run {\DPUM} from the blue dots over 300 iterations and plot the two first coordinates of the dots at iterations 0, 100, 200 and 300. \edit{This is a low-dimensional toy example so it does not illustrate our theory, rather we include it as a simple sanity check.}

\textbf{Parameters.} We use a closed form formula for the score along the forward process. \edit{In other words, the score estimation error is equal to zero.} The step size of the predictor is $0.01$ and the step size of the corrector is $0.001$. The corrector consists in 3 steps of the underdamped Langevin algorithm. In the latter algorithm, we initialize the velocity as a centered Gaussian random variable with standard deviation $0.001$ and set the parameter $\gamma$ to $0.01$.

\textbf{Observations.} We observe the expected behavior: although the target distribution is highly non-log-concave, {\DPUM} is able to provide samples \edit{from a distribution that is close to the target distribution}. In particular, the initial Gaussian distribution splits in clusters that will fit each component of the target mixture of Gaussians. Recall that we experiment without score error but with discretization error: our numerical results illustrate the common wisdom that score knowledge along the forward process can replace convexity assumptions. In particular, we observe that even isolated, low probability components of the Gaussian mixture, are recovered by {\DPUM}.  

\begin{figure}[ht!]
 \includegraphics[width=0.48\linewidth]{Figs/frame_1_underdamped_300_seed667.eps} \hfill
  \includegraphics[width=0.48\linewidth]{Figs/frame_2_underdamped_300_seed667.eps}

    \includegraphics[width=0.48\linewidth]{Figs/frame_3_underdamped_300_seed667.eps} \hfill
  \includegraphics[width=0.48\linewidth]{Figs/frame_4_underdamped_300_seed667.eps}
    \caption{A realization of {\DPUM} for a mixture of Gaussians.}
     \label{fig:667}
\end{figure}

\begin{figure}[ht!]
 \includegraphics[width=0.48\linewidth]{Figs/frame_1_underdamped_300_seed42.eps} \hfill
  \includegraphics[width=0.48\linewidth]{Figs/frame_2_underdamped_300_seed42.eps}
  
    \includegraphics[width=0.48\linewidth]{Figs/frame_3_underdamped_300_seed42.eps} \hfill
  \includegraphics[width=0.48\linewidth]{Figs/frame_4_underdamped_300_seed42.eps}
    \caption{A realization of {\DPUM} for another mixture of Gaussians.}
        \label{fig:42}
\end{figure}