From: Wolfgang Bangerth Date: Tue, 19 Apr 2011 00:12:15 +0000 (+0000) Subject: Compute correct sparsity pattern. Use proper coupling term. Copy local contribution... X-Git-Tag: v8.0.0~4149 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=31e0804d0a95abebf51fdbd618d2d4f892b3fe1d;p=dealii.git Compute correct sparsity pattern. Use proper coupling term. Copy local contribution into global matrix. git-svn-id: https://svn.dealii.org/trunk@23608 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/examples/step-46/step-46.cc b/deal.II/examples/step-46/step-46.cc index 363b7cbcfc..5e093d8e5c 100644 --- a/deal.II/examples/step-46/step-46.cc +++ b/deal.II/examples/step-46/step-46.cc @@ -323,7 +323,7 @@ void FluidStructureProblem::setup_dofs () CompressedSimpleSparsityPattern csp (dof_handler.n_dofs(), dof_handler.n_dofs()); - DoFTools::make_sparsity_pattern (dof_handler, csp, constraints, false); + DoFTools::make_flux_sparsity_pattern (dof_handler, csp, constraints, false); sparsity_pattern.copy_from (csp); } @@ -505,16 +505,22 @@ void FluidStructureProblem::assemble_system () for (unsigned int i=0; ineighbor(f)->get_dof_indices (neighbor_dof_indices); - //constraints.distribute_local_to_global(); + + + neighbor_dof_indices.resize (elasticity_dofs_per_cell); + cell->neighbor(f)->get_dof_indices (neighbor_dof_indices); + constraints.distribute_local_to_global(local_interface_matrix, + neighbor_dof_indices, + local_dof_indices, + system_matrix); } } else if ((cell->neighbor(f)->level() == cell->level())