[petsc-users] examples of DMPlex*FVM methods

Matthew Knepley knepley at gmail.com
Wed Apr 5 12:53:09 CDT 2017


On Wed, Apr 5, 2017 at 12:46 PM, Ingo Gaertner <ingogaertner.tus at gmail.com>
wrote:

> Hi Matt,
> I don't care if FV is suboptimal to solve the Poisson equation. I only
> want to better understand the method by getting my hands dirty, and also
> implement the general transport equation later. We were told that FVM is
> far more efficient for the transport equation than FEM, and this is why
> most CFD codes would use FVM. Do you contradict?
>

For transport, there are issues with accuracy first. You normally want to
preserve positivity of the field since its a concentration. FV will do
this, but there
are also strategies for FEM. Plain vanilla FEM will do a bad job no doubt.


> Do you have benchmarks that show bad performance for the (parabolic)
> transport equation solved by FVM, or why do you think that FVM was designed
> only for hyperbolic problems?
>

There are benchmarks for Euler/high-Re NS which show FVM losing badly to
FEM (Ryan Glasby on the COFFEE project, Masayuki Yano from MIT), since FEM
can do better than first order. Justin Chang from UH has nice papers
enforcing positivity in FEM transport but I do not think there are
comparisons to FV. That would make a good paper for him soon :)


> The decision whether to focus on FEM or FVM is quite interesting for me,
> because it seems like a matter of taste, and our professor of numerical
> methods for CFD seems to strongly prefer FVM without a solid basis to
> justify his preference.
>

I agree with Jed here that the proper way to evaluate this tradeoff is to
agree on a figure of merit (perfect or not) and try to construct
work-precision diagrams (despite the imperfect measures of work).

  Thanks,

     Matt


> Thanks
> Ingo
>
>
> 2017-04-05 18:56 GMT+02:00 Matthew Knepley <knepley at gmail.com>:
>
>> On Wed, Apr 5, 2017 at 11:50 AM, Ingo Gaertner <
>> ingogaertner.tus at gmail.com> wrote:
>>
>>> Hi Jed,
>>> thank you for your reply. Two followup questions below:
>>>
>>> 2017-04-04 22:18 GMT+02:00 Jed Brown <jed at jedbrown.org>:
>>>
>>>> Ingo Gaertner <ingogaertner.tus at gmail.com> writes:
>>>>
>>>> > We have never talked about Riemann solvers in our CFD course, and I
>>>> don't
>>>> > understand what's going on in ex11.
>>>> > However, if you could answer a few of my questions, you'll give me a
>>>> good
>>>> > start with PETSc. For the simple poisson problem that I am trying to
>>>> > implement, I have to discretize div(k grad u) integrated over each FV
>>>> cell,
>>>> > where k is the known diffusivity, and u is the vector to solve for.
>>>>
>>>> Note that ex11 solves hyperbolic conservation laws, but you are solving
>>>> an elliptic equation.
>>>>
>>>
>>> I begin to understand. Petscs FVM methods don't provide a FVM library
>>> that can be used to implement the FV control volume approach (see Ferziger)
>>> for general CFD problems? They are around just because they have been used
>>> to tackle one or two specific problems, is this correct?
>>> I thought they could be used similar to the OpenFvm or OpenFoam
>>> libraries which seem to solve Poisson, Navier-Stokes, Euler and other
>>> problems. If such methods have not been prepared for Petsc, I'll just
>>> follow Ferzigers book and start my work on a lower level than I thought
>>> would be necessary. More work, more fun :)
>>>
>>
>> Yes, that is correct.
>>
>> As a side note, I think using FV to solve an elliptic equation should be
>> a felony. Continuous FEM is excellent for this, whereas FV needs
>> a variety of twisted hacks and is always worse in terms of computation
>> and accuracy. Hyperbolic problems are what FV is designed for
>> and I don't think I would ever support it for anything but that.
>>
>>   Thanks,
>>
>>     Matt
>>
>>
>>> > (My second question is more general about the PETSc installation. When
>>>> I
>>>> > configure PETSc with "--prefix=/somewhere --download-triangle
>>>> > --download-parmetis" etc., these extra libraries are built correctly
>>>> during
>>>> > the make step, but they are not copied to /somewhere during the "make
>>>> > install" step.
>>>>
>>>> Where are they put during configure?
>>>>
>>>
>>> My bad, Petsc installation works as expected. But the build system that
>>> I am using is doing something weird. I'll have to find out, what's going
>>> wrong there, but it is not related to Petsc.
>>>
>>> Thank you!
>>> Ingo
>>>
>>>
>>>
>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> Virenfrei.
>>> www.avast.com
>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
>>> <#m_2465698883969087045_m_-443598393346959692_m_-9031669297911553285_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
>>>
>>
>>
>>
>> --
>> What most experimenters take for granted before they begin their
>> experiments is infinitely more interesting than any results to which their
>> experiments lead.
>> -- Norbert Wiener
>>
>
>


-- 
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20170405/f7fa26d4/attachment.html>


More information about the petsc-users mailing list