On 11/21/18 5:39 AM, 'Maxi Miller' via deal.II User Group wrote:
> Hmm, but in that case I have an addition (update of the sparse jacobian), 
> which I do not know how to handle (yet)

Well, if you also have a previous Jacobian matrix, say J, then you would 
replace...

>         void BroydenOperator::vmult (Vector<double> &dst,
>                                      const Vector<double> &src) const
>         {
>            dst = 0;

...this line by
              J.vmult (dst, src);
and keep the rest...

>            for (unsigned int k=0; k<n_vectors; ++k)
>              {
>                 const double xk_dot_src = x[k] * src;
>                 dst.add (xk_dot_src, y[k]);
>              }
>         }
...as is. This corresponds to the operator

   B = J + sum_k  y_k x_k^T

Best
  W.

-- 
------------------------------------------------------------------------
Wolfgang Bangerth          email:                 bange...@colostate.edu
                            www: http://www.math.colostate.edu/~bangerth/

-- 
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see 
https://groups.google.com/d/forum/dealii?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to dealii+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to