dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #09664
Re: [HG DOLFIN] Use symmetric gradient in variational form in elasticity demo
On Mon, Sep 15, 2008 at 02:54:25PM +0100, Garth N. Wells wrote:
>
>
> Anders Logg wrote:
> > On Mon, Sep 15, 2008 at 02:45:58PM +0100, Garth N. Wells wrote:
> >>
> >> Anders Logg wrote:
> >>> On Mon, Sep 15, 2008 at 11:21:59AM +0100, Garth N. Wells wrote:
> >>>> DOLFIN wrote:
> >>>>> One or more new changesets pushed to the primary dolfin repository.
> >>>>> A short summary of the last three changesets is included below.
> >>>>>
> >>>>> changeset: 4754:23602808c60413cb8faffca818e7a8c04527d3ec
> >>>>> tag: tip
> >>>>> user: Anders Logg <logg@xxxxxxxxx>
> >>>>> date: Sun Sep 14 19:46:40 2008 +0200
> >>>>> files: demo/pde/elasticity/python/demo.py
> >>>>> description:
> >>>>> Use symmetric gradient in variational form in elasticity demo
> >>>>>
> >>>> In particular reason for this? It is simpler (and still correct) to use
> >>>> the gradient.
> >>>>
> >>>> Garth
> >>> To make the form and the matrix symmetric. I showed the demo to a
> >>> friend (in computational mechanics) and he insisted that we replace
> >>> grad(v) by epsilon(v).
> >>>
> >> He's wrong :). When you take the inner product A : B, where B is
> >> symmetric, the inner product only 'sees' the symmetric part of A. It's a
> >> classic exercise and you can prove it by writing out the indices.
> >>
> >> Garth
> >
> > I don't understand how that makes it wrong. My point (and maybe his)
> > is that since B is symmetric, we may replace A by its symmetric part
> > (as you say easy to see by writing out the indices). So, both
> > epsilon(v) and grad(v) are correct.
> >
>
> They are both correct (I never said they they aren't). Quoting your
> earlier email
>
> "I showed the demo to a friend (in computational mechanics) and he
> insisted that we replace grad(v) by epsilon(v)."
>
> which is not correct.
Yes, it is correct. He did insist that we should replace grad(v) by
epsilon(v)! ;-)
> We can use grad(v) *or* epsilon(v). Either way,
> the matrix will be symmetric. grad(v) leads to a slightly small .h file
> and I would expect is easier for FFC.
>
> Garth
Yes, and I realize now that the matrix will still be symmetric if we
use grad(v). So the reason is something different. Maybe related to
boundary conditions as suggested by Shawn.
--
Anders
Attachment:
signature.asc
Description: Digital signature
Follow ups
References