# [Getdp] Why this irrelevant result ?

Kubicek Bernhard Bernhard.Kubicek at arsenal.ac.at
Fri Aug 18 13:48:24 CEST 2006

For your first question, there is a thread in the mailinglist that might help you:
http://www.geuz.org/pipermail/getdp/2006/000785.html

Citation:
>"Dof{tmp}" represents the unknown quantity--and the equations need to be
>linear in the unknowns. Here you linearize your equations by using
>functional (or "Picard") iteration, where you get the next value of the
>unknown by plugging the value obtained at the previous iteration into
>your equation (the previous value is known, and is accessed with
>"{tmp}", without "Dof").

Because of -T_ext, {T} is not fully linear in your initial try , but shifted.

In a different mail, which I don't find right now, Christophe Geuzaine (?) explained that a DoF has to multiply the whole term in the Galerkin.

Maybe the following is not what you are asking for, but on the other hand, maybe it is or maybe it is useful for somebody else: a sketch on how to obtain the galerkin terms from a given diff. operator.
This is my workflow, which is more or less developed after reading the first chapters of Bossavit (it seems to work most of the time):

let it operate on desired field:

\nabla\cdot\nabla \phi-\rho=0

multiply with function \phi from dual space and integrate of the whole region:

\int_Volume d^3x \psi \nabla\cdot\nabla \phi-\int_Volume d^3x \psi \rho =0
(this has to be true for all possible \psi)
For each second order operator integrate by parts in the space coordinates, and ignore the surface integral, because the dual space elements for some reason are 0 on the surface (?):

\int_Volume d^3x \psi \nabla\cdot\nabla \phi
->
-\int_Volume d^3x (\nabla\psi) \cdot (\nabla \phi)

This is done by some rules named Ostograskii, but its really nothing but partial ingetration with nablas.
hence:
-\int_Volume d^3x (\nabla\psi) \cdot (\nabla \phi) -\int_Volume d^3x \psi \rho =0

multiply by -1;
\int_Volume d^3x (\nabla\psi) \cdot (\nabla \phi) +\int_Volume d^3x \psi \rho =0

having 2 operators K and L we
instead of \int_Volume d^3x (K \psi) (L \phi) we write
(L \phi, K \psi)

so we get:
\int_Volume d^3x (\nabla\psi) \cdot (\nabla \phi) +\int_Volume d^3x \psi \rho =0
->
(\nabla \phi, \nabla \psi ) + (\rho, \psi)=0

This is written as two Galerkin terms, where instead of \psi again \phi is written, while one "keeps in mind" that the second term is actually in the dual space
Galerkin { [ Dof{d phi} , {d phi} ] ;...}
together with
Galerkin { [ -rho , { phi} ] ;...}

I _guess_ that when building the matrix the individual Galerkin terms are overlaid and thereby added.

Disclaimer:
1) Please ignore sign mistakes in this sketch.
2) I dont fully understand getDP either.
3) When to use DoF and when not to is one of the things I don't understand.

For your second question, I have no clue, see disclaimer 2)
Hope this helps you a bit,

nice greetings from Vienna,
bernhard

-----Ursprüngliche Nachricht-----
Von: getdp-bounces at geuz.org [mailto:getdp-bounces at geuz.org] Im Auftrag von Olivier Castany
Gesendet: Freitag, 18. August 2006 12:01
An: getdp at geuz.org
Betreff: Re: [Getdp] Why this irrelevant result ?

Hello,

I eventually found what changes are needed to do in order to get the right
result. There are two small changes.

> I am really not not sure, but maybe you need to split your last
> Galerkin
term:
>
>       Galerkin { [ h[] * Dof{T} , {T} ] ;
>                  In SA ; Jacobian JSur ; Integration I ; }
>       Galerkin { [ -h[] *  T_ext[] , {T} ] ;
>                  In SA ; Jacobian JSur ; Integration I ; }

Yes, this is necessary.

Wrinting : "Galerkin { [ h[] * ( Dof{T} - T_ext[] ), {T} ] ;" yields irrevelvant results.

Could somebody explain the rules when writing the line "Galerkin" in the
Formulation ? (and explain the reasons behind)

> As well, you might need to expand the Region for the other Galerkin:
>       Galerkin { [ lambda[] * Dof{d T} , {d T} ] ;
>                  In Region[{D,SA}] ; Jacobian JVol ; Integration I ; }

Not necessary.

The other change I had to do is in the FunctionSpace :

I need to write "Support Region [{D,SA}]" instead of "Support D"...

Could somebody explain why I need to do that while all the nodes of SA are nodes of D ?

What exaclty is this "Support group-def" ? Isn't it the set of nodes in
the "group-def" ?

Olivier C.

_______________________________________________
getdp mailing list
getdp at geuz.org
http://www.geuz.org/mailman/listinfo/getdp