[dune-fem] coefficients of basefunction in the dg space

Dedner, Andreas A.S.Dedner at warwick.ac.uk
Thu Oct 25 13:24:20 CEST 2012


Two remarks
If you are using a dg lagrange space then 1 0 0 0 would not be correct - locally your discrete function would would be the first lagrange hat function on the entity - 1at node with local number 0 whichever that is and zero at the other nodes.
If we are talking Legende dg space then your local dofs are correct I think.

The local function can act like a vector for the local dof.  Is that not good enough for your application?
Greetings
Andreas
.

Klaus Kaiser <klaus.kaiser at rwth-aachen.de> wrote:
Hi Tobias,

thanks for your fast answer. I have done the whole interpolation with LagrangeDiscontinuousGalerkinSpace and AdaptiveDiscreteFunction and set on every entity the dofs with

f.localFunction( *it )[j]=1;

where f is my AdaptiveDiscreteFunction. When I understood it right, then I iterate through every lagrange Point (DiscreteDGSpaceType::LagrangePointSetType) and set the value of the function at this point. So for example I got an constant Function (f(x)=1) and Polynomial Order 5, then on an entity the interpolation should look like this:

f_(x) = 1*phi_0(x)+0*phi_1(x)+0*phi_2(x)…

where phi_i is the i-the lagrange polynomial. With the function leakPointer(), I get an pointer on an array which gives me the functionvalues at the lagrange points. But I I think you misunderstood my question, I don't want to access the global DoF Vector, I want to access the coefficients of the basefunctions of the local functions. So in the example above I want to access an vector like this:

(1 0 0 0 0 0)

How do I get this vector? Or is this impossible?

Greetings & thanks

Klaus


Am 25.10.2012 um 08:20 schrieb Tobias Malkmus:

> Hi Klaus
>
>
> On 10/24/2012 06:48 PM, Klaus Kaiser wrote:
>> Hi,
>>
>> I have question concerning the dune-fem/dg part. I created an interpolation of a function in the discrete discontinuous galerkin space. This was done by setting the DoF Vector on every entity with the corresponding values of the function. Now I want to access the coefficients of the base functions, how do I do that? I searched a lot in the doxygen documentation, but didn't find a function, which gives me the values.
>>
> This sounds to me like Lagrange Interpolation, for a DG Space a L2 projection would be the suitable interpolation method.
>
> In Dune-Fem a discrete function is a combination of DofVector + DofMapper + LocalBasefunctions.
> This allows you to generate localFunctions which are the local representation of a GridFunction / DiscreteFunction.
>
> Some discreteFunction implementations allows you to access the DofVector as double*, eg. AdaptiveDiscreteFunction ( leakPointer() ).
>
> Let me ask you where do you need the global Dof Vector?
>
> Best Tobias
>
>> Greetings and thanks for your help
>>
>> Klaus
>>
>> _______________________________________________
>> dune-fem mailing list
>> dune-fem at dune-project.org
>> http://lists.dune-project.org/mailman/listinfo/dune-fem
>>
>
>
> --
> Tobias Malkmus                 <tomalk at mathematik.uni-freiburg.de>
>
> Mathematisches Institut               Tel: +49 (0) 761 203 5651
> Abt. für Angewandte Mathematik        Universität Freiburg
> Hermann-Herder-Str. 10
> 79104 Freiburg
>


_______________________________________________
dune-fem mailing list
dune-fem at dune-project.org
http://lists.dune-project.org/mailman/listinfo/dune-fem

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.dune-project.org/pipermail/dune-fem/attachments/20121025/620c4606/attachment.htm>


More information about the dune-fem mailing list