So I'm solving a simple linear system with Dirichelt BCs specified through the 
new API.  

I am using

dof_map.heterogenously_constrain_element_matrix_and_vector (Ke, Fe, 
dof_indices_disp);

as required.


The solve is fine, and post processing the solution reveals the desired 
boundary conditions are in the output.

But for the life of me, they are *not* in the output of the linear solver.  The 
output of the following code

…
        //extract displacement vectors
        dir1e.resize (n_disp_dofs);   disp_dof_map.extract_local_vector 
(*disp_system.solution,  dir1_dof_indices,   dir1e);
        dir2e.resize (n_disp_dofs);   disp_dof_map.extract_local_vector 
(*disp_system.solution,  dir2_dof_indices,   dir2e);
        
        if (elem->on_boundary())
          {
            for (unsigned int n=0; n<dir1_dof_indices.size(); n++)
              std::cout << " "
                        << n << " : "
                        << dir1_dof_indices[n] << " : "
                        << dir1e(n) << " : "
                        << dir2_dof_indices[n] << " : "
                        << dir2e(n) << '\n';
            
            std::cout << " \n";       
          }

is

…
 0 : 1637 : 0.00017747056 : 3318 : 0.00017149879
 1 : 1638 : 0.00013161062 : 3319 : 0.00014361684
 2 : 1679 : 0 : 3360 : 0
 3 : 1678 : 0 : 3359 : 0

Specifically, for all the DOFs on the boundary the Solution contains 0,but 
plotting it via the usual post processing mechanisms shows the desired values.

As this is my first foray into the new capability, please forgive any obvious 
oversights!

-Ben


------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
_______________________________________________
Libmesh-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to