[Dune] jacobian construction

Martin Nolte nolte at mathematik.uni-freiburg.de
Mon Jun 20 20:05:53 CEST 2016


Hi Marco,

there is no call to jacobianTransposed. The jacobianTransposed is a by-product 
of the method affine( jacobianTransposed ) on the MultiLinearGeometry.

The affine check works as follows:
- a point geometry is always affine; its jacobianTransposed is trivial.
- a prism is affine if and only if the base geometry is affine
- a prism over some geometry is affine if
   + top and bottom geometry are both affine
   + the jacobian of top and bottom geometry equals

You see, I potentially need the jacobianTransposed on all "subgeometries". 
Therefore, as long as the geometry is affine, I have to compute it along the 
way. In contrast to jacobianTransposed, I have the jacobianTransposed of the 
base geometry or the bottom geometry already available. Therefore, the method 
jacobianTransposed is not called at all.

Best,

Martin

PS: Please keep the conversation on the mailing list.

On 06/20/2016 06:33 PM, Marco Cisternino wrote:
> Hi Martin,
> If I have understood CachedMultiLinearGeometry in the affine case constructs the jacobianTransposed calling implicitly the constructor of the base class, i.e. MultiLinearGeometry and when it is affine the constructor of MultiLinearGeometry is called and somewhere (but I cannot see where...) this constructor is called
>
> jacobianTransposed< false >( topologyId(), integral_constant< int, mydimension >(), cit, ctype( 1 ), local, ctype( 1 ), jacobianTransposed_ );
>
> right?
>
> Thanks,
> Marco
> ________________________________________
> Da: Martin Nolte <nolte at mathematik.uni-freiburg.de>
> Inviato: lunedì 20 giugno 2016 18.09.14
> A: Marco Cisternino
> Oggetto: Re: [Dune] jacobian construction
>
> Hi Marco,
>
> I guess your question is where the CachedMultiLinearGeometry computes its
> jacobianTransposed. In the case of an affine mapping, this is done in the
> constructor. Otherwise it is not cached at all.
>
> When checking whether a MultiLinearGeometry is affine, you compute the
> jacobianTransposed as a by-product.
>
> Best,
>
> Martin
>
> On 06/20/2016 11:57 AM, Marco Cisternino wrote:
>> Good morning duners,
>> I'm debuging my code and I have an incoherence between the corners stored in the geometry of the element and its jacobianTransposed: the code doesn't reproduce stored corners when it re-computes them by using the jacobian.
>> I'm using Dune 2.3.0 and ALUGrid 1.52b, setting a GeometryGrid with a element-by-element parametrization.
>> I would like to know where, when and how the jacobianTransposed is computed for the first time.
>>
>> Thanks,
>> Marco
>>
>> _______________________________________________
>> Dune mailing list
>> Dune at dune-project.org
>> http://lists.dune-project.org/mailman/listinfo/dune
>>
>
> --
> Dr. Martin Nolte <nolte at mathematik.uni-freiburg.de>
>
> Universität Freiburg                                   phone: +49-761-203-5630
> Abteilung für angewandte Mathematik                    fax:   +49-761-203-5632
> Hermann-Herder-Straße 10
> 79104 Freiburg, Germany
>

-- 
Dr. Martin Nolte <nolte at mathematik.uni-freiburg.de>

Universität Freiburg                                   phone: +49-761-203-5630
Abteilung für angewandte Mathematik                    fax:   +49-761-203-5632
Hermann-Herder-Straße 10
79104 Freiburg, Germany




More information about the Dune mailing list