This program shows how to use Runge-Kutta methods to solve a time-dependent
problem.
-<h3>Problem statement<h3>
+<h3>Problem statement</h3>
In this example, we solve the energy-integrated time-dependent diffusion
approximation of the neutron transport equation (see step-28 for the
\left(\Sigma_a (bx-x^2)+2D\right) \right).
@f}
Because the solution is a sine, we know that
-\f$\phi\left(x,\frac{\pi}{\omega}\right) = 0$. Therefore, we can easily
+$\phi\left(x,\frac{\pi}{\omega}\right) = 0$. Therefore, we can easily
compute the error at this time since it is simply the norm of the solution
found.
<h4>Explicit Runge-Kutta</h4>
These methods that include for forward Euler, third order Runge-Kutta, and
-fourth order Runge-Kutta, require a function to evaluate $M^{-1}f(t,y). These
+fourth order Runge-Kutta, require a function to evaluate $M^{-1}f(t,y)$. These
methods become unstable when the time step chosen is too large.
<h4>Embedded Runge-Kutta</h4>
// Compute the intensity of the source at the given point.
double get_source(double time,const Point<2> &point) const;
- // Evaluate the diffusion equation \f$M^{-1}(f(t,y))\f$
+ // Evaluate the diffusion equation $M^{-1}(f(t,y))$
Vector<double> evaluate_diffusion(const double time, const Vector<double> &y) const;
- // Evaluate \f$\left(I-\tau M^{-1} \frac{\partial f(t,y)}{\partial y}\right)^{-1} =
- // \left(M-\tau \frac{\partial f}{\partial y}\right)^{-1} M \f$
+ // Evaluate $\left(I-\tau M^{-1} \frac{\partial f(t,y)}{\partial y}\right)^{-1} =
+ // \left(M-\tau \frac{\partial f}{\partial y}\right)^{-1} M $
Vector<double> id_minus_tau_J_inverse(const double time, const double tau,
const Vector<double> &y);
cell = dof_handler.begin_active(),
endc = dof_handler.end();
- // Compute \f$-\int D \nabla b \cdot \nabla b - \int \Sigma_a b b\f$ and \f$\int b b\f$
+ // Compute $-\int D \nabla b \cdot \nabla b - \int \Sigma_a b b $ and $\int b b $
for (; cell!=endc; ++cell)
{
cell_matrix = 0.;