Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members

ElasticStressStrategy.h

Go to the documentation of this file.
00001 /*
00002  * File:        ElasticStressStrategy.h
00003  * Copyright:   (c) 2005-2007 Princeton University
00004  * Author(s):   Kevin T. Chu
00005  * Revision:    $Revision: 379 $
00006  * Modified:    $Date: 2007-08-07 10:02:34 -0400 (Tue, 07 Aug 2007) $
00007  * Description: Header file for the ElasticStressStrategy class
00008  */
00009 
00010 #ifndef included_ElasticStressStrategy_h
00011 #define included_ElasticStressStrategy_h
00012 
00023 // System Headers
00024 #include <ostream>
00025 #include <vector>
00026 
00027 // SAMRAI Headers
00028 #include "SAMRAI_config.h"
00029 
00030 // LSMDD Headers
00031 #include "LSMDD_config.h"
00032 #include "BurgersVector.h"
00033 #include "LSMDD_Parameters.h"
00034 
00035 
00036 /******************************************************************
00037  *
00038  * ElasticStressStrategy Class Definition
00039  *
00040  ******************************************************************/
00041 
00042 namespace LSMDD {
00043 
00044 class ElasticStressStrategy
00045 {
00046 public:
00047 
00049 
00056   ElasticStressStrategy(){}
00057 
00058   virtual ~ElasticStressStrategy(){}
00059 
00061 
00062 
00064 
00083   virtual int getStressFieldHandle() = 0;
00084 
00086 
00087 
00089 
00109   virtual void setStressFieldToZero() = 0;
00110 
00131   virtual void addStressFieldForDislocationLine(
00132     const int dislocation_line_field_handle,
00133     const BurgersVector& burgers_vector,
00134     const LSMDD_Parameters& lsmdd_params) = 0;
00135 
00153   virtual void addAuxiliaryStressField(
00154     const int auxiliary_stress_field_handle,
00155     const LSMDD_Parameters& lsmdd_params) = 0;
00156 
00177   virtual void addAuxiliaryStressFieldComponent(
00178     const int auxiliary_stress_field_handle,
00179     const LSMDD_Parameters& lsmdd_params,
00180     const int component) = 0;
00181 
00183 
00184 
00186 
00207   virtual void printClassData(ostream& os) const = 0;
00208 
00210 };
00211 
00212 } // end LSMDD namespace
00213 
00214 #endif
00215 

Generated on Tue Aug 7 15:43:41 2007 for LSMDD by doxygen 1.3.4