On Thu, Dec 4, 2008 at 12:39 PM, bkraczek <[EMAIL PROTECTED]> wrote: > I'm new to libmesh, and I am not a great C++ programmer, so the answer to > this may seem obvious. I am working from example 3 to implement a poisson > solver with a RHS that includes the dot product of the weighting function > with a vector that I set. > > So, working from line 351 of ex3.C, > > Fe(i) += JxW[qp]*fxy*phi[i][qp]; > > I want to change this to > > Fe(i) += JxW[qp]*dphi[i][qp]* gradGat ; > > where gradGat is the vector I desire to take the inner product with. How do > I properly construct gradGat so I can get the desired dot product?
You can construct a Gradient object like this: Gradient gradGat(xvalue, yvalue, zvalue); See: include/numerics/vector_value.h, Gradient is nothing but a typedef for VectorValue<Number>, so you can use any of the VectorValue constructors which are available. Also, you may want to put parentheses, like so: JxW[qp]*(dphi[i][qp]* gradGat) ; to guarantee order of operation, but it should work either way. -- John ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ Libmesh-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libmesh-users
