← Back to team overview

dolfin team mailing list archive

Re: Computation of Norms

 

On Mon, Jun 15, 2009 at 10:09:11AM +0200, Patrick Riesen wrote:
> Hi,
> 
> ffc looks for the variables a, L or M to generate a form, so you should 
> use L  instead of L2, so that ffc notices it.

Should be M unless you want to assemble a vector.

-- 
Anders


> regards,
> patrick
> 
> Jehanzeb Hameed wrote:
> > I cant figure out how to generate a form file for norm, in C++. The
> > problem is that the form is quadratic in its arguments, and so isn't a
> > valid form according to ffc user manual. I tried it anyway, making a
> > file like this (just for testing):.
> > 
> > vecElement = VectorElement("Lagrange", "triangle", 1,3)
> > u = Function(vecElement)
> > L2 = dot(u,u)*dx
> > 
> > ffc doesnt make .h file, and exits with the following message:
> > 
> > "No forms or elements specified, nothing to do."
> > 
> > I tried compiling by "ffc -r quadrature l2norm.form", and again got
> > the same message.
> > 
> > Can someome please help amd point out what I can do?
> > 
> > Thanks,
> > -Jehanzeb
> > 
> > On Wed, Jun 10, 2009 at 11:14 AM, Anders Logg<logg@xxxxxxxxx> wrote:
> >> On Wed, Jun 10, 2009 at 09:58:20AM -0500, Jehanzeb Hameed wrote:
> >>> Thanks. So I guess that means no such facility is available in C/C++ ?
> >> No, since the computation depends on the space the functions are in
> >> and so the code needs to be generated. In C++, you need to define a
> >> form file for the norm. Look at
> >>
> >>  site-packages/dolfin/norm.py
> >>
> >> for how to define the norms.
> >>
> >>
> >>
> >>> On Wed, Jun 10, 2009 at 2:03 AM, Anders Logg<logg@xxxxxxxxx> wrote:
> >>>> On Tue, Jun 09, 2009 at 05:11:48PM -0500, Jehanzeb Hameed wrote:
> >>>>> Hello,
> >>>>>
> >>>>> Is there a builtin function in dolfin to compute L^2 or H_1 norms? If
> >>>>> so, can you please point it out. If not, are there support functions
> >>>>> (e.g. a Gauss Quadrature table, computation of Jacobians, etc) which
> >>>>> can help in this?
> >>>> Yes, this is available in the DOLFIN Python interface:
> >>>>
> >>>>  norm(v)
> >>>>
> >>>> The default computes the L^2 norm. Several options are available:
> >>>>
> >>>>  L^2:     norm(v, 'L2')
> >>>>  H^1:     norm(v, 'H1')      includes L^2 term
> >>>>  H^1_0:   norm(v, 'H10')     does not include L^2 term
> >>>>  H(div):  norm(v, 'Hdiv')    includes L^2 term
> >>>>  H(div):  norm(v, 'Hdiv0')   does not include L^2 term
> >>>>  H(curl): norm(v, 'Hcurl')   includes L^2 term
> >>>>  H(curl): norm(v, 'Hcurl0')  does not include L^2 term
> >>>>
> >>>>
> >>>> -----BEGIN PGP SIGNATURE-----
> >>>> Version: GnuPG v1.4.9 (GNU/Linux)
> >>>>
> >>>> iEYEARECAAYFAkovWqUACgkQTuwUCDsYZdGb3gCfa2gWnzealWzkjPoRj8hf3cr/
> >>>> 0EUAoJh4mpaIzRU9eCnnC+XWlupu6SV0
> >>>> =so4c
> >>>> -----END PGP SIGNATURE-----
> >>>>
> >>>> _______________________________________________
> >>>> DOLFIN-dev mailing list
> >>>> DOLFIN-dev@xxxxxxxxxx
> >>>> http://www.fenics.org/mailman/listinfo/dolfin-dev
> >>>>
> >>>>
> >>> _______________________________________________
> >>> DOLFIN-dev mailing list
> >>> DOLFIN-dev@xxxxxxxxxx
> >>> http://www.fenics.org/mailman/listinfo/dolfin-dev
> >> -----BEGIN PGP SIGNATURE-----
> >> Version: GnuPG v1.4.9 (GNU/Linux)
> >>
> >> iEYEARECAAYFAkov28sACgkQTuwUCDsYZdE8KQCdEI7wS27QaNw9knI2U9L+RVST
> >> xeUAnRdLrrhAVzsBn6nO1b6CLEpF64ey
> >> =a7iu
> >> -----END PGP SIGNATURE-----
> >>
> >> _______________________________________________
> >> DOLFIN-dev mailing list
> >> DOLFIN-dev@xxxxxxxxxx
> >> http://www.fenics.org/mailman/listinfo/dolfin-dev
> >>
> >>
> > _______________________________________________
> > DOLFIN-dev mailing list
> > DOLFIN-dev@xxxxxxxxxx
> > http://www.fenics.org/mailman/listinfo/dolfin-dev
> 
> _______________________________________________
> DOLFIN-dev mailing list
> DOLFIN-dev@xxxxxxxxxx
> http://www.fenics.org/mailman/listinfo/dolfin-dev

Attachment: signature.asc
Description: Digital signature


Follow ups

References