]> https://gitweb.dealii.org/ - dealii.git/commitdiff
add parameter parsing to DoFOutputOperator
authorGuido Kanschat <dr.guido.kanschat@gmail.com>
Sun, 1 Jun 2014 15:46:13 +0000 (15:46 +0000)
committerGuido Kanschat <dr.guido.kanschat@gmail.com>
Sun, 1 Jun 2014 15:46:13 +0000 (15:46 +0000)
git-svn-id: https://svn.dealii.org/trunk@32993 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/include/deal.II/numerics/dof_output_operator.h
deal.II/include/deal.II/numerics/dof_output_operator.templates.h

index 983bec97a8e22b13a398be6870688f932e90d557..ed4bf51c1456f9124ee399c96afda04fa121c415 100644 (file)
@@ -19,6 +19,7 @@
 #define __deal2__dof_output_operator_h
 
 #include <deal.II/base/config.h>
+#include <deal.II/base/parameter_handler.h>
 #include <deal.II/base/named_data.h>
 #include <deal.II/algorithms/any_data.h>
 #include <deal.II/base/event.h>
@@ -41,17 +42,18 @@ namespace Algorithms
   class DoFOutputOperator : public OutputOperator<VECTOR>
   {
   public:
-      /*
-       * Constructor. The <tt>filename</tt> is the common base name of all
-       * files and the argument <tt>digits</tt> should be the number of digits
-       * of the highest number in the sequence. File names by default
-       * have the form "outputNN" with NNN the number set by the last
-       * step command. Numbers with less digits are filled with zeros
-       * from the left.
-       */
-      DoFOutputOperator (const std::string filename_base = std::string("output"),
-      const unsigned int digits = 3);
-      
+    /*
+     * Constructor. The <tt>filename</tt> is the common base name of
+     * all files and the argument <tt>digits</tt> should be the number
+     * of digits of the highest number in the sequence. File names by
+     * default have the form "outputNN" with NNN the number set by the
+     * last step command. Numbers with less digits are filled with
+     * zeros from the left.
+     */
+    DoFOutputOperator (const std::string filename_base = std::string("output"),
+                       const unsigned int digits = 3);
+
+    void parse_parameters(ParameterHandler &param);
     void initialize (DoFHandler<dim, spacedim> &dof_handler);
 
     virtual OutputOperator<VECTOR> &
@@ -60,11 +62,11 @@ namespace Algorithms
   private:
     SmartPointer<DoFHandler<dim, spacedim>,
                  DoFOutputOperator<VECTOR, dim, spacedim> > dof;
-      
-      const std::string filename_base;
-      const unsigned int digits;
-      
-      DataOut<dim> out;
+
+    const std::string filename_base;
+    const unsigned int digits;
+
+    DataOut<dim> out;
   };
 
   template <class VECTOR, int dim, int spacedim>
index 76285b16e41efe052eb5db2f544add9000691cce..5bb629a8e15fdd9755355429e32679349b26800f 100644 (file)
@@ -25,13 +25,20 @@ namespace Algorithms
   DoFOutputOperator<VECTOR, dim, spacedim>::DoFOutputOperator (
     const std::string filename_base,
     const unsigned int digits)
-                 :
-                 filename_base(filename_base),
-                 digits(digits)
+    :
+    filename_base(filename_base),
+    digits(digits)
   {
     out.set_default_format(DataOutBase::gnuplot);
   }
-  
+
+
+  template <class VECTOR, int dim, int spacedim>
+  void
+  DoFOutputOperator<VECTOR, dim, spacedim>::parse_parameters(ParameterHandler &param)
+  {
+    out.parse_parameters(param);
+  }
 
   template <class VECTOR, int dim, int spacedim>
   OutputOperator<VECTOR> &
@@ -40,21 +47,21 @@ namespace Algorithms
   {
     Assert ((dof!=0), ExcNotInitialized());
     out.attach_dof_handler (*dof);
-    for (unsigned int i=0;i<data.size();++i)
+    for (unsigned int i=0; i<data.size(); ++i)
       {
-       const VECTOR* p = data.try_read_ptr<VECTOR>(i);
-       if (p!=0)
-         {
-           out.add_data_vector (*p, data.name(i));
-         }
+        const VECTOR *p = data.try_read_ptr<VECTOR>(i);
+        if (p!=0)
+          {
+            out.add_data_vector (*p, data.name(i));
+          }
       }
     std::ostringstream streamOut;
     streamOut << filename_base
-             << std::setw(digits) << std::setfill('0') << this->step
-             << out.default_suffix();
+              << std::setw(digits) << std::setfill('0') << this->step
+              << out.default_suffix();
     std::ofstream out_filename (streamOut.str().c_str());
-    out.build_patches (2);
-    out.write_gnuplot (out_filename);
+    out.build_patches ();
+    out.write (out_filename);
     out.clear ();
     return *this;
   }

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.