Thanks. That works. I have a related question about forms. Can the form be defined in python, and then compiled via ffc? For example, I did,
from dolfin import * mesh = Mesh("./mesh_2d.xml") V = VectorFunctionSpace(mesh, "Lagrange", 1,3) u = Function(V) M = dot(u,u)*dx and then called ffc on this form. This generated a header file. Are there any caveats here that I should be careful about? -Jehanzeb On Mon, Jun 15, 2009 at 3:20 AM, Anders Logg<l...@simula.no> wrote: > 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<l...@simula.no> 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<l...@simula.no> 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@fenics.org >> >>>> http://www.fenics.org/mailman/listinfo/dolfin-dev >> >>>> >> >>>> >> >>> _______________________________________________ >> >>> DOLFIN-dev mailing list >> >>> DOLFIN-dev@fenics.org >> >>> 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@fenics.org >> >> http://www.fenics.org/mailman/listinfo/dolfin-dev >> >> >> >> >> > _______________________________________________ >> > DOLFIN-dev mailing list >> > DOLFIN-dev@fenics.org >> > http://www.fenics.org/mailman/listinfo/dolfin-dev >> >> _______________________________________________ >> DOLFIN-dev mailing list >> DOLFIN-dev@fenics.org >> http://www.fenics.org/mailman/listinfo/dolfin-dev > > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.9 (GNU/Linux) > > iEYEARECAAYFAko2BFQACgkQTuwUCDsYZdF7qACeJkPnmaCDwkc1ffLUsGyyEOtY > /kAAnidGRwRLBL7jksqEnf0KsUw4D7hb > =k8B2 > -----END PGP SIGNATURE----- > > _______________________________________________ > DOLFIN-dev mailing list > DOLFIN-dev@fenics.org > http://www.fenics.org/mailman/listinfo/dolfin-dev > > _______________________________________________ DOLFIN-dev mailing list DOLFIN-dev@fenics.org http://www.fenics.org/mailman/listinfo/dolfin-dev