Hi everyone,
I am trying to print the solution of a test-system to a file/stdout.
For this I think it is best to use the compute_data() function which I
do in the following way:
After solving the system, I inserted

   MeshBase::const_element_iterator           el =
mesh.active_local_elements_begin();
    const MeshBase::const_element_iterator end_el =
mesh.active_local_elements_end();
    for ( ; el != end_el; ++el)
      {
        const Elem * elem = *el;
        for(unsigned int i=0; i<elem->n_nodes(); i++){
           Point q_point=elem->point(i); // how are points enumerated??
           FEComputeData data(equation_systems, q_point);
           data.init();
           FEInterface::compute_data(3, fe_type, elem, data);  //fe_type
is declared before already
           out<<q_point<<"  ";
           const unsigned int n_dof = data.shape.size();
           for(unsigned int j=0; j<n_dof; j++){
              out<<data.shape[j]<<"  "; // how do I make the output in
best case??
           }
           out<<std::endl;
        }
     }

(Here, I use the example miscellaneous_ex1 as starting point). However,
as in the example, I want to use infinite elements as well and than the
calculation ends with the error

Assertion `-1.-1.e-5 <= v && v < 1.' failed.

Stack frames: 10
0: libMesh::print_trace(std::ostream&)
1: libMesh::MacroFunctions::report_error(char const*, int, char const*,
char const*)
2:
/home/tm162/bin/libmesh/libmesh-1.0/.libs/libmesh_dbg.so.0(+0x135da7d)
[0x2aeffb645a7d]
3: libMesh::InfFE<3u, (libMesh::FEFamily)11,
(libMesh::InfMapType)0>::eval(double, libMesh::Order, unsigned int)
........

As far as I understand the problem, the function InfFE::compute_data()
(in src/fe/inf_fe_static.C)  ist called.
Therein, the parameter v is set (line 249) to the z-coordinate of the
point of evaluation (which is contrary to my understanding of the
parameter v) and than evaluated in InfFE::eval()
(src/fe/inf_fe_map_eval.C) in line 316 which requires v to be in -1<v<1
as the assertion says.

So my main question is: Am I using the function in the way it is thought
to be used and would you agree on my interpretation of what happens?
I would appreciate any help with this, either by correcting me with how
to use it or by suggesting solutions.

Thanks in advance,
Hubert


------------------------------------------------------------------------------
_______________________________________________
Libmesh-users mailing list
Libmesh-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to