• Main Page
  • Namespaces
  • Data Structures
  • Files
  • File List

/export/development/ViennaFEM/viennafem/log/api.hpp

Go to the documentation of this file.
00001 #ifndef VIENNAFEM_LOG_API_HPP
00002 #define VIENNAFEM_LOG_API_HPP
00003 
00004 /* =========================================================================
00005    Copyright (c) 2012, Institute for Microelectronics,
00006                        Institute for Analysis and Scientific Computing,
00007                        TU Wien.
00008                              -----------------
00009                ViennaFEM - The Vienna Finite Element Method Library
00010                              -----------------
00011 
00012    Author:     Karl Rupp                          rupp@iue.tuwien.ac.at
00013 
00014    License:    MIT (X11), see file LICENSE in the ViennaFEM base directory
00015 ============================================================================ */
00016 
00017 
00018 #include <vector>
00019 #include "viennafem/forwards.h"
00020 #include "viennagrid/forwards.h"
00021 #include "viennagrid/domain.hpp"
00022 #include "viennagrid/segment.hpp"
00023 #include "viennagrid/iterators.hpp"
00024 
00025 #include "viennafem/log/latex.hpp"
00026 
00031 namespace viennafem
00032 {
00034   template <typename PDESystem>
00035   void log_strong_form(PDESystem const & pde_system)
00036   {
00037     pde_system.logger().write_strong_form(pde_system.pdes());
00038   }
00039 
00041   template <typename EquationArray, typename PDESystem>
00042   void log_weak_form(EquationArray const & weak_form, PDESystem const & pde_system)
00043   {
00044     pde_system.logger().write_weak_form(weak_form);
00045   }
00046 
00048   template <typename EquationArray, typename PDESystem>
00049   void log_coordinated_weak_form(EquationArray const & weak_form, PDESystem const & pde_system)
00050   {
00051     pde_system.logger().write_coordinated_weak_form(weak_form);
00052   }
00053 
00055   template <typename CellType, typename EquationArray, typename PDESystem>
00056   void log_transformed_weak_form(EquationArray const & weak_form, PDESystem const & pde_system)
00057   {
00058     // make cell type known to logger
00059     // TODO: Better encapsulation
00060     pde_system.logger().translator().add_processor(new rt_latex_dt_dx_processor<CellType, viennamath::default_interface_type>());
00061     
00062     pde_system.logger().write_transformed_weak_form(weak_form);
00063   }
00064 
00066   template <typename EquationArray, typename PDESystem>
00067   void log_test_and_trial_space(EquationArray const & test_space,
00068                                 EquationArray const & trial_space,
00069                                 PDESystem const & pde_system)
00070   {
00071     pde_system.logger().write_test_and_trial_space(test_space, trial_space);
00072   }
00073   
00074   
00075   /*void write_linear_solver_stats(latex_logger & log)
00076   {
00077     
00078   }*/
00079 
00080 }
00081 
00082 #endif

Generated on Wed Feb 29 2012 21:51:05 for ViennaFEM - The Vienna Finite Element Method Library by  doxygen 1.7.1