]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Initialize variables in step constructors.
authorDavid Wells <wellsd2@rpi.edu>
Thu, 16 Mar 2017 22:21:14 +0000 (18:21 -0400)
committerDavid Wells <wellsd2@rpi.edu>
Sat, 18 Mar 2017 21:22:01 +0000 (17:22 -0400)
examples/step-14/step-14.cc
examples/step-18/step-18.cc
examples/step-21/step-21.cc
examples/step-23/step-23.cc
examples/step-24/step-24.cc
examples/step-26/step-26.cc
examples/step-28/step-28.cc
examples/step-31/step-31.cc
examples/step-35/step-35.cc
examples/step-42/step-42.cc
examples/step-43/step-43.cc

index 6bcf068688376fc9463a6616c7902e24d618b542..d7da265483f0e9a3db30aad2834b8b501407bba1 100644 (file)
@@ -397,7 +397,8 @@ namespace Step14
     template <int dim>
     Base<dim>::Base (Triangulation<dim> &coarse_grid)
       :
-      triangulation (&coarse_grid)
+      triangulation (&coarse_grid),
+      refinement_cycle (numbers::invalid_unsigned_int)
     {}
 
 
index 7f4ef9950bc8e793195ac831174eac7665da3669..8097a8a6d6d8c8d75899d6f15db04427d3fd24fe 100644 (file)
@@ -740,10 +740,15 @@ namespace Step18
     fe (FE_Q<dim>(1), dim),
     dof_handler (triangulation),
     quadrature_formula (2),
+    present_time (0.0),
+    present_timestep (1.0),
+    end_time (10.0),
+    timestep_no (0),
     mpi_communicator (MPI_COMM_WORLD),
     n_mpi_processes (Utilities::MPI::n_mpi_processes(mpi_communicator)),
     this_mpi_process (Utilities::MPI::this_mpi_process(mpi_communicator)),
-    pcout (std::cout, this_mpi_process == 0)
+    pcout (std::cout, this_mpi_process == 0),
+    n_local_cells (numbers::invalid_unsigned_int)
   {}
 
 
@@ -765,11 +770,6 @@ namespace Step18
   template <int dim>
   void TopLevel<dim>::run ()
   {
-    present_time = 0;
-    present_timestep = 1;
-    end_time = 10;
-    timestep_no = 0;
-
     do_initial_timestep ();
 
     while (present_time < end_time)
index 034d657ad7e4d7025d7b4f2892ba22bbd12b29c3..7d932e0d993136132e6178e852391df1c46f6f2e 100644 (file)
@@ -596,6 +596,7 @@ namespace Step21
     dof_handler (triangulation),
     n_refinement_steps (5),
     time_step (0),
+    timestep_number (1),
     viscosity (0.2)
   {}
 
@@ -1244,7 +1245,6 @@ namespace Step21
                             old_solution);
     }
 
-    timestep_number = 1;
     double time = 0;
 
     do
index 03089ec69c2373dab4c80c995a5516e478b67afd..5f62bb13617208385c0c1c25f2a9d19cfd091457 100644 (file)
@@ -140,7 +140,7 @@ namespace Step23
     Vector<double>       old_solution_u, old_solution_v;
     Vector<double>       system_rhs;
 
-    double time, time_step;
+    double time_step, time;
     unsigned int timestep_number;
     const double theta;
   };
@@ -311,6 +311,8 @@ namespace Step23
     fe (1),
     dof_handler (triangulation),
     time_step (1./64),
+    time (time_step),
+    timestep_number (1),
     theta (0.5)
   {}
 
@@ -511,9 +513,7 @@ namespace Step23
     Vector<double> tmp (solution_u.size());
     Vector<double> forcing_terms (solution_u.size());
 
-    for (timestep_number=1, time=time_step;
-         time<=5;
-         time+=time_step, ++timestep_number)
+    for (; time<=5; time+=time_step, ++timestep_number)
       {
         std::cout << "Time step " << timestep_number
                   << " at t=" << time
index 0e4294a82174d6c66765e657fe1b2f6448fdcca9..7c473acbb6bb9daeb41d4631c71e3aa227e556ab 100644 (file)
@@ -95,7 +95,7 @@ namespace Step24
     Vector<double>       old_solution_p, old_solution_v;
     Vector<double>       system_rhs_p, system_rhs_v;
 
-    double time, time_step;
+    double time_step, time;
     unsigned int timestep_number;
     const double theta;
 
@@ -192,12 +192,15 @@ namespace Step24
   // imaging) since this is where many of the experiments we want to compare
   // the output with are made in. The Crank-Nicolson scheme is used again,
   // i.e. theta is set to 0.5. The time step is later selected to satisfy $k =
-  // \frac hc$
+  // \frac hc$: here we initialize it to an invalid number.
   template <int dim>
   TATForwardProblem<dim>::TATForwardProblem ()
     :
     fe (1),
     dof_handler (triangulation),
+    time_step (std::numeric_limits<double>::quiet_NaN()),
+    time (time_step),
+    timestep_number (1),
     theta (0.5),
     wave_speed (1.437)
   {
@@ -498,9 +501,7 @@ namespace Step24
     Vector<double> G2 (solution_v.size());
 
     const double end_time = 0.7;
-    for (timestep_number=1, time=time_step;
-         time<=end_time;
-         time+=time_step, ++timestep_number)
+    for (time=time_step; time<=end_time; time+=time_step, ++timestep_number)
       {
         std::cout << std::endl;
         std::cout<< "time_step " << timestep_number << " @ t=" << time << std::endl;
index 50ffdde15f0f54ca0bf0bc29ec1a36f34dfebf9f..fc9eb3bcf55dcb6165b865e693b62a9c35e708b9 100644 (file)
@@ -206,7 +206,9 @@ namespace Step26
     :
     fe(1),
     dof_handler(triangulation),
+    time (0.0),
     time_step(1. / 500),
+    timestep_number (0),
     theta(0.5)
   {}
 
@@ -465,9 +467,6 @@ start_time_iteration:
                              old_solution);
     solution = old_solution;
 
-    timestep_number = 0;
-    time            = 0;
-
     output_results();
 
     // Then we start the main loop until the computed time exceeds our
index ce1cef8978f4e4fa6256e5082d21e1e9e84ac9d0..6fde76097d6fa18f10033319e0b7fff544d4f822 100644 (file)
@@ -1308,7 +1308,8 @@ namespace Step28
     :
     parameters (parameters),
     material_data (parameters.n_groups),
-    fe (parameters.fe_degree)
+    fe (parameters.fe_degree),
+    k_eff (std::numeric_limits<double>::quiet_NaN())
   {}
 
 
index eedc92996632be243a530e8c0d1643d8c10d5fd8..a4da66e1f3f865ed32700857fb577634a537392b 100644 (file)
@@ -568,7 +568,7 @@ namespace Step31
   BoussinesqFlowProblem<dim>::BoussinesqFlowProblem ()
     :
     triangulation (Triangulation<dim>::maximum_smoothing),
-
+    global_Omega_diameter (std::numeric_limits<double>::quiet_NaN()),
     stokes_degree (1),
     stokes_fe (FE_Q<dim>(stokes_degree+1), dim,
                FE_Q<dim>(stokes_degree), 1),
index b1f83006d42250bfc38e2ba74068c5ab9108dca0..935ddd7940060e619ef0b79b44f29b879475f328 100644 (file)
@@ -122,7 +122,22 @@ namespace Step35
     // In the constructor of this class we declare all the parameters. The
     // details of how this works have been discussed elsewhere, for example in
     // step-19 and step-29.
-    Data_Storage::Data_Storage()
+    Data_Storage::Data_Storage() :
+      form (METHOD_ROTATIONAL),
+      initial_time (0.),
+      final_time (1.),
+      Reynolds (1.),
+      dt (5e-4),
+      n_global_refines (0),
+      pressure_degree (1),
+      vel_max_iterations (1000),
+      vel_Krylov_size (30),
+      vel_off_diagonals (60),
+      vel_update_prec (15),
+      vel_eps (1e-12),
+      vel_diag_strength (0.01),
+      verbose (true),
+      output_interval (15)
     {
       prm.declare_entry ("Method_Form", "rotational",
                          Patterns::Selection ("rotational|standard"),
index 440a58026056137661337476777cc4d0ccfa45be..a2380228593e92bd370f9e31d1591268e6ac5ee0 100644 (file)
@@ -861,7 +861,9 @@ namespace Step42
               (new EquationData::SphereObstacle<dim>(base_mesh == "box" ? 1.0 : 0.5))),
 
     transfer_solution (prm.get_bool("transfer solution")),
-    n_refinement_cycles (prm.get_integer("number of cycles"))
+    n_refinement_cycles (prm.get_integer("number of cycles")),
+    current_refinement_cycle (0)
+
   {
     std::string strat = prm.get("refinement strategy");
     if (strat == "global")
@@ -2151,8 +2153,7 @@ namespace Step42
   PlasticityContactProblem<dim>::run ()
   {
     computing_timer.reset();
-    for (current_refinement_cycle = 0;
-         current_refinement_cycle < n_refinement_cycles;
+    for (; current_refinement_cycle < n_refinement_cycles;
          ++current_refinement_cycle)
       {
         {
index d97f6404e45ccd25ca7079b9c8f47a0c7fd7881f..5bf087e2475ad8d62b2780c597b05d29bc6aceae 100644 (file)
@@ -624,7 +624,7 @@ namespace Step43
   TwoPhaseFlowProblem<dim>::TwoPhaseFlowProblem (const unsigned int degree)
     :
     triangulation (Triangulation<dim>::maximum_smoothing),
-
+    global_Omega_diameter (std::numeric_limits<double>::quiet_NaN()),
     degree (degree),
     darcy_degree (degree),
     darcy_fe (FE_Q<dim>(darcy_degree+1), dim,
@@ -645,6 +645,7 @@ namespace Step43
 
     time_step (0),
     old_time_step (0),
+    timestep_number (0),
     viscosity (0.2),
     porosity (1.0),
     AOS_threshold (3.0),
@@ -2197,7 +2198,6 @@ start_time_iteration:
                           SaturationInitialValues<dim>(),
                           old_saturation_solution);
 
-    timestep_number = 0;
     time_step = old_time_step = 0;
     current_macro_time_step = old_macro_time_step = 0;
 

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.