Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036 #ifndef tractionDisplacementFvPatchVectorField_H
00037 #define tractionDisplacementFvPatchVectorField_H
00038
00039 #include <finiteVolume/fvPatchFields.H>
00040 #include <finiteVolume/fixedGradientFvPatchFields.H>
00041
00042
00043
00044 namespace Foam
00045 {
00046
00047
00048
00049
00050
00051 class tractionDisplacementFvPatchVectorField
00052 :
00053 public fixedGradientFvPatchVectorField
00054 {
00055
00056
00057
00058 vectorField traction_;
00059 scalarField pressure_;
00060
00061
00062 public:
00063
00064
00065 TypeName("tractionDisplacement");
00066
00067
00068
00069
00070
00071 tractionDisplacementFvPatchVectorField
00072 (
00073 const fvPatch&,
00074 const DimensionedField<vector, volMesh>&
00075 );
00076
00077
00078 tractionDisplacementFvPatchVectorField
00079 (
00080 const fvPatch&,
00081 const DimensionedField<vector, volMesh>&,
00082 const dictionary&
00083 );
00084
00085
00086
00087 tractionDisplacementFvPatchVectorField
00088 (
00089 const tractionDisplacementFvPatchVectorField&,
00090 const fvPatch&,
00091 const DimensionedField<vector, volMesh>&,
00092 const fvPatchFieldMapper&
00093 );
00094
00095
00096 tractionDisplacementFvPatchVectorField
00097 (
00098 const tractionDisplacementFvPatchVectorField&
00099 );
00100
00101
00102 virtual tmp<fvPatchVectorField> clone() const
00103 {
00104 return tmp<fvPatchVectorField>
00105 (
00106 new tractionDisplacementFvPatchVectorField(*this)
00107 );
00108 }
00109
00110
00111 tractionDisplacementFvPatchVectorField
00112 (
00113 const tractionDisplacementFvPatchVectorField&,
00114 const DimensionedField<vector, volMesh>&
00115 );
00116
00117
00118 virtual tmp<fvPatchVectorField> clone
00119 (
00120 const DimensionedField<vector, volMesh>& iF
00121 ) const
00122 {
00123 return tmp<fvPatchVectorField>
00124 (
00125 new tractionDisplacementFvPatchVectorField(*this, iF)
00126 );
00127 }
00128
00129
00130
00131
00132
00133
00134 virtual const vectorField& traction() const
00135 {
00136 return traction_;
00137 }
00138
00139 virtual vectorField& traction()
00140 {
00141 return traction_;
00142 }
00143
00144 virtual const scalarField& pressure() const
00145 {
00146 return pressure_;
00147 }
00148
00149 virtual scalarField& pressure()
00150 {
00151 return pressure_;
00152 }
00153
00154
00155
00156
00157
00158 virtual void autoMap
00159 (
00160 const fvPatchFieldMapper&
00161 );
00162
00163
00164 virtual void rmap
00165 (
00166 const fvPatchVectorField&,
00167 const labelList&
00168 );
00169
00170
00171
00172 virtual void updateCoeffs();
00173
00174
00175 virtual void write(Ostream&) const;
00176 };
00177
00178
00179
00180
00181 }
00182
00183
00184
00185 #endif
00186
00187