]> https://gitweb.dealii.org/ - dealii.git/commitdiff
further output formats
authorGuido Kanschat <dr.guido.kanschat@gmail.com>
Mon, 16 Jan 2006 21:37:23 +0000 (21:37 +0000)
committerGuido Kanschat <dr.guido.kanschat@gmail.com>
Mon, 16 Jan 2006 21:37:23 +0000 (21:37 +0000)
git-svn-id: https://svn.dealii.org/trunk@12056 0785d39b-7218-0410-832d-ea1e28bc413d

tests/base/data_out_base_gmv.cc [new file with mode: 0644]
tests/base/data_out_base_tecplot.cc [new file with mode: 0644]

diff --git a/tests/base/data_out_base_gmv.cc b/tests/base/data_out_base_gmv.cc
new file mode 100644 (file)
index 0000000..26eddc8
--- /dev/null
@@ -0,0 +1,82 @@
+//-----------------------------------------------------------------------------
+//    $Id$
+//    Version: $Name$ 
+//
+//    Copyright (C) 2006 by the deal.II authors
+//
+//    This file is subject to QPL and may not be  distributed
+//    without copyright and license information. Please refer
+//    to the file deal.II/doc/license.html for the  text  and
+//    further information on this license.
+//
+//-----------------------------------------------------------------------------
+
+#include "../tests.h"
+#include <base/data_out_base.h>
+#include <base/logstream.h>
+
+#include <vector>
+#include <iostream>
+#include <fstream>
+#include <string>
+#include <stdio.h>
+
+#include "patches.h"
+
+// Output data on repetitions of the unit hypercube
+
+// define this as 1 to get output into a separate file for each testcase
+#define SEPARATE_FILES 1
+
+
+template <int dim, int spacedim>
+void check(DataOutBase::GmvFlags flags,
+          std::ostream& out)
+{
+  const unsigned int np = 4;
+  
+  std::vector<DataOutBase::Patch<dim, spacedim> > patches(np);
+  
+  create_patches(patches);
+  
+  std::vector<std::string> names(5);
+  names[0] = "x1";
+  names[1] = "x2";
+  names[2] = "x3";
+  names[3] = "x4";
+  names[4] = "i";
+  DataOutBase::write_gmv(patches, names, flags, out);
+}
+
+
+template<int dim, int spacedim>
+void check_all(std::ostream& log)
+{
+#if SEPARATE_FILES == 0
+  std::ostream& out = log;
+#endif
+  
+  char name[100];
+  DataOutBase::GmvFlags flags;
+  if (true) {
+    sprintf(name, "data_out_base_gmv/%d%d.gmv", dim, spacedim);
+#if SEPARATE_FILES==1
+    std::ofstream out(name);
+#else
+       out << "==============================\n"
+           << name
+           << "\n==============================\n";
+#endif
+    check<dim,spacedim>(flags, out);
+  }
+}
+
+int main()
+{
+  std::ofstream logfile("data_out_base_gmv/output");
+  check_all<1,1>(logfile);
+  check_all<1,2>(logfile);
+  check_all<2,2>(logfile);
+  check_all<2,3>(logfile);
+  check_all<3,3>(logfile);
+}
diff --git a/tests/base/data_out_base_tecplot.cc b/tests/base/data_out_base_tecplot.cc
new file mode 100644 (file)
index 0000000..e6d2824
--- /dev/null
@@ -0,0 +1,113 @@
+//-----------------------------------------------------------------------------
+//    $Id$
+//    Version: $Name$ 
+//
+//    Copyright (C) 2006 by the deal.II authors
+//
+//    This file is subject to QPL and may not be  distributed
+//    without copyright and license information. Please refer
+//    to the file deal.II/doc/license.html for the  text  and
+//    further information on this license.
+//
+//-----------------------------------------------------------------------------
+
+#include "../tests.h"
+#include <base/data_out_base.h>
+#include <base/logstream.h>
+
+#include <vector>
+#include <iostream>
+#include <fstream>
+#include <string>
+#include <stdio.h>
+
+#include "patches.h"
+
+// Output data on repetitions of the unit hypercube
+
+// define this as 1 to get output into a separate file for each testcase
+#define SEPARATE_FILES 1
+
+
+template <int dim, int spacedim>
+void check(DataOutBase::TecplotFlags flags,
+          std::ostream& out)
+{
+  const unsigned int np = 4;
+  
+  std::vector<DataOutBase::Patch<dim, spacedim> > patches(np);
+  
+  create_patches(patches);
+  
+  std::vector<std::string> names(5);
+  names[0] = "x1";
+  names[1] = "x2";
+  names[2] = "x3";
+  names[3] = "x4";
+  names[4] = "i";
+  DataOutBase::write_tecplot(patches, names, flags, out);
+}
+
+
+template <int dim, int spacedim>
+void check_bin(DataOutBase::TecplotFlags flags,
+              std::ostream& out)
+{
+  const unsigned int np = 4;
+  
+  std::vector<DataOutBase::Patch<dim, spacedim> > patches(np);
+  
+  create_patches(patches);
+  
+  std::vector<std::string> names(5);
+  names[0] = "x1";
+  names[1] = "x2";
+  names[2] = "x3";
+  names[3] = "x4";
+  names[4] = "i";
+  DataOutBase::write_tecplot_binary(patches, names, flags, out);
+}
+
+
+template<int dim, int spacedim>
+void check_all(std::ostream& log)
+{
+#if SEPARATE_FILES == 0
+  std::ostream& out = log;
+#endif
+  
+  char name[100];
+  DataOutBase::TecplotFlags flags;
+  if (true) {
+    sprintf(name, "data_out_base_tecplot/%d%d.tecplot", dim, spacedim);
+#if SEPARATE_FILES==1
+    std::ofstream out(name);
+#else
+       out << "==============================\n"
+           << name
+           << "\n==============================\n";
+#endif
+    check<dim,spacedim>(flags, out);
+  }
+  if (true) {
+    sprintf(name, "data_out_base_tecplot/%d%dbin.tecplot", dim, spacedim);
+#if SEPARATE_FILES==1
+    std::ofstream out(name);
+#else
+       out << "==============================\n"
+           << name
+           << "\n==============================\n";
+#endif
+    check_bin<dim,spacedim>(flags, out);
+  }
+}
+
+int main()
+{
+  std::ofstream logfile("data_out_base_tecplot/output");
+  check_all<1,1>(logfile);
+  check_all<1,2>(logfile);
+  check_all<2,2>(logfile);
+  check_all<2,3>(logfile);
+  check_all<3,3>(logfile);
+}

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.