]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Put some parenthesis in Stokes assembly in order to speed up things a bit.
authorMartin Kronbichler <kronbichler@lnm.mw.tum.de>
Wed, 20 May 2009 03:53:33 +0000 (03:53 +0000)
committerMartin Kronbichler <kronbichler@lnm.mw.tum.de>
Wed, 20 May 2009 03:53:33 +0000 (03:53 +0000)
git-svn-id: https://svn.dealii.org/trunk@18868 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/examples/step-32/step-32.cc

index c92672ba87b8e2cf505db239eee2c273202147f2..1d233ad94bb82d3bead4cbb8733e7b01b828a792 100644 (file)
@@ -659,8 +659,8 @@ class BoussinesqFlowProblem
     unsigned int timestep_number;
 
     std_cxx1x::shared_ptr<TrilinosWrappers::PreconditionAMG> Amg_preconditioner;
-    std_cxx1x::shared_ptr<TrilinosWrappers::PreconditionILU>  Mp_preconditioner;
-    std_cxx1x::shared_ptr<TrilinosWrappers::PreconditionILU>  T_preconditioner;
+    std_cxx1x::shared_ptr<TrilinosWrappers::PreconditionILU> Mp_preconditioner;
+    std_cxx1x::shared_ptr<TrilinosWrappers::PreconditionIC>  T_preconditioner;
 
     bool rebuild_stokes_matrix;
     bool rebuild_stokes_preconditioner;
@@ -1322,7 +1322,7 @@ local_assemble_stokes_system (const typename DoFHandler<dim>::active_cell_iterat
        for (unsigned int i=0; i<dofs_per_cell; ++i)
          for (unsigned int j=0; j<dofs_per_cell; ++j)
            data.local_matrix(i,j) += (EquationData::eta * 2 *
-                                      scratch.grads_phi_u[i] * scratch.grads_phi_u[j]
+                                      (scratch.grads_phi_u[i] * scratch.grads_phi_u[j])
                                       - scratch.div_phi_u[i] * scratch.phi_p[j]
                                       - scratch.phi_p[i] * scratch.div_phi_u[j])
                                      * scratch.stokes_fe_values.JxW(q);
@@ -1683,8 +1683,8 @@ void BoussinesqFlowProblem<dim>::assemble_temperature_system (const double maxim
 
   if (rebuild_temperature_preconditioner == true)
     {
-      T_preconditioner =  std_cxx1x::shared_ptr<TrilinosWrappers::PreconditionILU>
-                                   (new TrilinosWrappers::PreconditionILU());
+      T_preconditioner =  std_cxx1x::shared_ptr<TrilinosWrappers::PreconditionIC>
+                                   (new TrilinosWrappers::PreconditionIC());
       T_preconditioner->initialize (temperature_matrix);
 
       rebuild_temperature_preconditioner = false;
@@ -1794,7 +1794,7 @@ void BoussinesqFlowProblem<dim>::project_temperature_field ()
   GrowingVectorMemory<TrilinosWrappers::MPI::Vector> memory;
   SolverCG<TrilinosWrappers::MPI::Vector> cg(control,memory);
 
-  TrilinosWrappers::PreconditionILU preconditioner_mass;
+  TrilinosWrappers::PreconditionIC preconditioner_mass;
   preconditioner_mass.initialize(temperature_mass_matrix);
 
   cg.solve (temperature_mass_matrix, sol, rhs, preconditioner_mass);

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.