[petsc-users] Modification to ex11.c

Mark Adams mfadams at lbl.gov
Fri Apr 17 06:55:01 CDT 2020


You can write your own DMPlexTSComputeRHSFunctionFVM method like this and
give that to the dm.

PetscErrorCode foo(DM dm, PetscReal time, Vec locX, Vec F, void *user)
{
  PetscErrorCode ierr;
  PetscFunctionBegin;
  ierr = DMPlexTSComputeRHSFunctionFVM(dm, time, locX, F, user);CHKERRQ(ierr);
...

  PetscFunctionReturn(0);
}


On Fri, Apr 17, 2020 at 5:28 AM MUKKUND SUNJII <mukkundsunjii at gmail.com>
wrote:

> Greetings,
>
> I had been working on ts/tutorials/ex11.c as part of my master’s thesis.
>
> In ex11.c, there is a 2D Shallow Water Model. I want to modify the model
> by adding a source term to the model. This source term would factor in the
> effects of bathymetry or bed elevation in addition to water height.
>
> I know how I will be able to achieve this if just use TSSetRHSFunction().
> However ex11.c makes use of the Riemann Solver for the computation fluxes
> at the interfaces (therefore, it uses DMTSSetRHSFunctionLocal(dm,
> DMPlexTSComputeRHSFunctionFVM, user) ).
>
> Is there a routine that allows me to *add* a source term *for every cell*
> to the RHS function?
>
> Thank you in advance!
>
> Regards,
>
> Mukkund
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20200417/30b66056/attachment.html>


More information about the petsc-users mailing list