[cig-commits] commit 1918 by buerg to /var/svn/dealii/aspect

dealii.demon at gmail.com dealii.demon at gmail.com
Tue Sep 24 10:33:47 PDT 2013


Revision 1918

Add material model.

A   trunk/aspire/include/aspect/material_model/three_species_simple.h
A   trunk/aspire/source/material_model/three_species_simple.cc
A   trunk/aspire/three_species_simple.prm


http://www.dealii.org/websvn/revision.php?repname=Aspect+Repository&path=%2F&rev=1918&peg=1918

Diff:
Added: trunk/aspire/include/aspect/material_model/three_species_simple.h
===================================================================
--- trunk/aspire/include/aspect/material_model/three_species_simple.h	                        (rev 0)
+++ trunk/aspire/include/aspect/material_model/three_species_simple.h	2013-09-24 17:33:33 UTC (rev 1918)
@@ -0,0 +1,161 @@
+/*
+  Copyright (C) 2011, 2012 by the authors of the ASPECT code.
+
+  This file is part of ASPECT.
+
+  ASPECT is free software; you can redistribute it and/or modify
+  it under the terms of the GNU General Public License as published by
+  the Free Software Foundation; either version 2, or (at your option)
+  any later version.
+
+  ASPECT is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+  GNU General Public License for more details.
+
+  You should have received a copy of the GNU General Public License
+  along with ASPECT; see the file doc/COPYING.  If not see
+  <http://www.gnu.org/licenses/>.
+*/
+/*  $Id: simple.h 1689 2013-05-14 08:08:05Z heister $  */
+
+
+#ifndef __aspect__model_three_species_simple_h
+#define __aspect__model_three_species_simple_h
+
+#include <aspect/material_model/interface.h>
+#include <aspect/simulator_access.h>
+
+namespace aspect
+{
+  namespace MaterialModel
+  {
+    using namespace dealii;
+
+    /**
+     * A material model that describes a simple model with three species and one reaction
+     * C_1+C_2->C_3.
+     *
+     * @ingroup MaterialModels
+     */
+    template <int dim>
+    class ThreeSpeciesSimple : public MaterialModel::Interface<dim>, public ::aspect::SimulatorAccess<dim>
+    {
+      public:
+        /**
+         * @name Qualitative properties one can ask a material model
+         * @{
+         */
+
+        /**
+        * Return true if the viscosity() function returns something that
+        * may depend on the variable identifies by the argument.
+        */
+        virtual bool
+        viscosity_depends_on (const NonlinearDependence::Dependence dependence) const;
+
+        /**
+        * Return true if the density() function returns something that
+        * may depend on the variable identifies by the argument.
+        */
+        virtual bool
+        density_depends_on (const NonlinearDependence::Dependence dependence) const;
+
+        /**
+        * Return true if the compressibility() function returns something that
+        * may depend on the variable identifies by the argument.
+        *
+        * This function must return false for all possible arguments if the
+        * is_compressible() function returns false.
+        */
+        virtual bool
+        compressibility_depends_on (const NonlinearDependence::Dependence dependence) const;
+
+        /**
+        * Return true if the specific_heat() function returns something that
+        * may depend on the variable identifies by the argument.
+        */
+        virtual bool
+        specific_heat_depends_on (const NonlinearDependence::Dependence dependence) const;
+
+        /**
+        * Return true if the thermal_conductivity() function returns something that
+        * may depend on the variable identifies by the argument.
+        */
+        virtual bool
+        thermal_conductivity_depends_on (const NonlinearDependence::Dependence dependence) const;
+
+        /**
+         * Return whether the model is compressible or not.  Incompressibility
+         * does not necessarily imply that the density is constant; rather, it
+         * may still depend on temperature or pressure. In the current
+         * context, compressibility means whether we should solve the contuity
+         * equation as $
abla 


More information about the CIG-COMMITS mailing list