I would like to solve $$\alpha u_{tt} = -\nabla^2u$$ with $\frac{\partial u}{\partial n} = 1$. On using a Galerkin approximation I obtain $$M\ddot{c}=\frac{1}{\alpha}(Dc+b)$$ where $M$ is the mass matrix and and $D$ is the stiffness matrix. I note that I can write this in the form $$\dot{U} = ZU+B$$

where $U = [c, \dot{c}]^T$ and $Z$ has off diagonal blocks top right: $I$ and bottom left $M^{-1}D$ and $B$ has only non-trivial entries in the "second half" of the vector given by $M^{-1}b$.

We can go ahead and use in implicit finite difference scheme on this problem then.(?)

I know my explanation is sparse but I am hoping that someone who might have solved this before can confirm whether this is a viable method. My solution is very "unstable" looking.

Perhaps I am being really naive using this method. Are there simple methods to solve this problem?

  • $\begingroup$ Do you have initial conditions? What is the geometry of your domain? $\endgroup$ – nicoguaro Mar 10 '18 at 22:51
  • 6
    $\begingroup$ The formulation you use is exactly the one I'm using here: dealii.org/8.5.0/doxygen/deal.II/step_23.html $\endgroup$ – Wolfgang Bangerth Mar 11 '18 at 5:59
  • $\begingroup$ I am trying both a disk and a square. I am using Neumann boundary conditions with constant initial displacement and zero initial velocity(hence should remain constant). I think there must be something wrong with my implementation. Thanks for the link Wolfgang. $\endgroup$ – ZingyMcGhee Mar 11 '18 at 7:59
  • $\begingroup$ Thanks, it all worked out. It was the classic case of missing minus sign. $\endgroup$ – ZingyMcGhee Mar 13 '18 at 12:29
  • 1
    $\begingroup$ Great! You can answer your own question and accept your answer. It is considered good citizenship at SO. $\endgroup$ – Anton Menshov Mar 17 '18 at 2:04

The solution was to use


and to be vigilant of rogue minus signs.

| cite | improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.