[firedrake] Second derivatives
David Ham
David.Ham at imperial.ac.uk
Wed Jul 22 13:51:10 BST 2015
Hi Justin,
I'm clearly not understanding your new paper, but why does the new second
derivative you create in 4.13 not go away by multiplying by a test funcion
and integrating by parts?
In addition, I don't understand why it makes sense to take a second
derivative of a Q1 element. Q1 does not span P2 so you have a very big part
of your space which is linear (and therefore has the same issue as P1). In
addition, as Andrew already stated, C0 elements don't have enough
continuity to take that derivative, so I don't understand why the second
derivative in this case makes sense.
Having said all that, as far as I know, it should be possible to just put
the second derivative into UFL and let FFC deal with it. Does that produce
an error?
Cheers,
David
On Tue, 21 Jul 2015 at 20:17 Justin Chang <jychang48 at gmail.com> wrote:
> I am looking at equal order mixed formulations. Two discretizations in
> particular:
>
> 1) Our group recently released a paper on enforcing local mass balance and
> discrete maximum principles through the least-squares finite element
> method. The paper can found here:
>
> http://arxiv.org/pdf/1506.06099v1.pdf
>
> Equation 4.13 is what I want to solve using firedrake. Everything in that
> paper was written in MATLAB because the authors could not get FEniCS to do
> what they want. I am guessing it's because there were no Q1 elements
> available within FEniCS (double derivative of P1 elements makes no sense).
>
> 2) The other discretization, based on the variational multi-scale
> formulation, for Darcy-Brinkmann equations is described in this paper:
>
> http://onlinelibrary.wiley.com/doi/10.1002/fld.2544/abstract
>
> Though I am currently looking at the steady-state version of this.
> Appendix A1 describes how they discretize the \delta v and \delta w terms.
>
> I could perhaps figure these out through trial and error, but I got my
> hands full with other things ATM :)
>
> Thanks,
> Justin
>
> On Tue, Jul 21, 2015 at 4:33 AM, David Ham <David.Ham at imperial.ac.uk>
> wrote:
>
>> Hi Justin,
>>
>> Can you provide a little more information about the sort of
>> discretisation you're talking about: if we can see what you're talking
>> about then we'd be in a better position to tell you whether Firedrake can
>> do that.
>>
>> Cheers,
>>
>> David
>>
>> On Fri, 17 Jul 2015 at 07:39 McRae, Andrew <a.mcrae12 at imperial.ac.uk>
>> wrote:
>>
>>> It's possible to represent second derivatives in a form, such as
>>> assemble(div(grad(f))*dx). I assume this is true in FEniCS as well as
>>> Firedrake, because this is just UFL/FFC/FIAT functionality. This would
>>> produce the sum (over cells) of the Laplacian of f on each cell.
>>>
>>> However, like FEniCS, none of our function spaces have more than C^0
>>> continuity. That is, the functions are at most continuous, but won't have
>>> continuous derivatives. It's likely that you won't want to use second
>>> derivatives of C^0 functions in a practical discretisation (though I'm sure
>>> there are methods that *do* do this).
>>>
>>> Andrew
>>>
>>> On 17 July 2015 at 01:50, Justin Chang <jychang48 at gmail.com> wrote:
>>>
>>>> Hi everyone,
>>>>
>>>> Is it possible to do second derivatives? What I mean by that is
>>>> things like div[grad[u]] and grad[grad[u]]. I haven't tried this out yet,
>>>> but we use these discretizations a lot for our research, and FEniC's
>>>> inability to do this made us sad (although our more major qualms had to do
>>>> with its inability to support quads).
>>>>
>>>> Thanks,
>>>> Justin
>>>>
>>>>
>>>
>> _______________________________________________
>> firedrake mailing list
>> firedrake at imperial.ac.uk
>> https://mailman.ic.ac.uk/mailman/listinfo/firedrake
>>
>>
>
-------------- next part --------------
HTML attachment scrubbed and removed
More information about the firedrake
mailing list