Re: [Libmesh-users] Help with initialization functions for vector solutions

2012-06-27 Thread Paul T. Bauman
On Wed, Jun 27, 2012 at 8:20 PM, Andrew E Slaughter < andrew.e.slaugh...@gmail.com> wrote: > Paul, > Thanks for linking the function, that is where I will head with > my initialization. I will post my implementation when I am done in case > anyone needs this in the future. > No problem, glad it w

Re: [Libmesh-users] Help with initialization functions for vector solutions

2012-06-27 Thread Andrew E Slaughter
Here is my test problem with an initialization class that inherits from FunctionBase. Thanks for the help! -Andrew // Standard library includes #include #include #include #include #include using std::string; // libMesh includes #include "libmesh.h" #include "mesh.h" #include "mesh_generatio

Re: [Libmesh-users] Help with initialization functions for vector solutions

2012-06-27 Thread Andrew E Slaughter
Paul, Thanks for linking the function, that is where I will head with my initialization. I will post my implementation when I am done in case anyone needs this in the future. One question, where is libmesh_not_implemented() defined, I can't seem to find any documentation on it, but it looks useful

Re: [Libmesh-users] Help with initialization functions for vector solutions

2012-06-27 Thread Paul T. Bauman
On Wed, Jun 27, 2012 at 6:35 PM, Andrew E Slaughter < andrew.e.slaugh...@gmail.com> wrote: > I just checkout out the trunk with the following and the folder you > specify does not exist, only examples/vector_fe/vector_fe_ex1.C > *facepalm* Sorry, that patch is still being discussed on libmesh-de

Re: [Libmesh-users] Help with initialization functions for vector solutions

2012-06-27 Thread Andrew E Slaughter
Paul, I just checkout out the trunk with the following and the folder you specify does not exist, only examples/vector_fe/vector_fe_ex1.C svn checkout https://libmesh.svn.sourceforge.net/svnroot/libmesh/trunk/libmesh On Wed, Jun 27, 2012 at 5:52 PM, Paul T. Bauman wrote: > On Wed, Jun 27, 201

Re: [Libmesh-users] Help with initialization functions for vector solutions

2012-06-27 Thread Paul T. Bauman
On Wed, Jun 27, 2012 at 3:40 PM, John Peterson wrote: > > Paul, do you have an example code where you actually overload > component() since you suggested it? > Yeah, I would suggest deriving from FunctionBase directly. Check out boundary_function.h in examples/vector_fe/vector_fe_ex2 (this will

Re: [Libmesh-users] Help with initialization functions for vector solutions

2012-06-27 Thread John Peterson
On Wed, Jun 27, 2012 at 2:30 PM, Andrew E Slaughter wrote: > But, if I am programming the component member to perform the initialization, > I don't need a function pointer, so passing one in is meaningless. Is this > just an unfortunate consequence or is the pointer actually going to be used > in

Re: [Libmesh-users] Help with initialization functions for vector solutions

2012-06-27 Thread Andrew E Slaughter
But, if I am programming the component member to perform the initialization, I don't need a function pointer, so passing one in is meaningless. Is this just an unfortunate consequence or is the pointer actually going to be used in some other capacity? Thanks, Andrew On Wed, Jun 27, 2012 at 4:24 P

Re: [Libmesh-users] Help with initialization functions for vector solutions

2012-06-27 Thread John Peterson
On Wed, Jun 27, 2012 at 2:11 PM, Andrew E Slaughter wrote: > If I understand correctly, if my initialization is expensive then it should > be coded directly into the component member of a class derived from > AnalyticFunction, as follows. Then simply use the project_solution and skip > the add_ini

Re: [Libmesh-users] Help with initialization functions for vector solutions

2012-06-27 Thread Andrew E Slaughter
If I understand correctly, if my initialization is expensive then it should be coded directly into the component member of a class derived from AnalyticFunction, as follows. Then simply use the project_solution and skip the add_initial_function(...) and init() commands for the system. Is this corre

Re: [Libmesh-users] Help with initialization functions for vector solutions

2012-06-27 Thread John Peterson
On Wed, Jun 27, 2012 at 12:55 PM, Paul T. Bauman wrote: > > > On Wed, Jun 27, 2012 at 1:44 PM, Andrew E Slaughter > wrote: >> >> I was playing around with that, but the function still gets called for >> each >> variable. Essentially, doing the calculations twice or three times in 3D. >> This seem

Re: [Libmesh-users] Help with initialization functions for vector solutions

2012-06-27 Thread Paul T. Bauman
On Wed, Jun 27, 2012 at 1:44 PM, Andrew E Slaughter < andrew.e.slaugh...@gmail.com> wrote: > I was playing around with that, but the function still gets called for each > variable. Essentially, doing the calculations twice or three times in 3D. > This seems far to inefficient. Is there no way arou

Re: [Libmesh-users] Help with initialization functions for vector solutions

2012-06-27 Thread Andrew E Slaughter
I was playing around with that, but the function still gets called for each variable. Essentially, doing the calculations twice or three times in 3D. This seems far to inefficient. Is there no way around this? void initial_velocity(DenseVector& output, const Point&, const Real){ output.resize(2);

Re: [Libmesh-users] Help with initialization functions for vector solutions

2012-06-27 Thread John Peterson
On Wed, Jun 27, 2012 at 12:25 PM, Andrew E Slaughter wrote: > > // A function for initializing, this d > void initial_velocity(DenseVector& output, const Point&, const > Real){ > output(0) = 1; // x-dir > // output(1) = 2; // y-dir (this causes an error, but this is what seems > logical) > } I th

[Libmesh-users] Help with initialization functions for vector solutions

2012-06-27 Thread Andrew E Slaughter
If I understand libmesh correctly, if you are solving a system that has a vector solution (i.e., velocity) then you need to add variables such as "vx" and "vy" for each component. Then solve the system using submatrices and vectors etc. Therefore, the libmesh::System add_vector command is only for