PageRenderTime 120ms CodeModel.GetById 14ms app.highlight 84ms RepoModel.GetById 0ms app.codeStats 0ms

/FiniteElasticity/TriCubicAxialExtension/src/TriCubicAxialExtensionExample.f90

http://github.com/xyan075/examples
FORTRAN Modern | 1037 lines | 806 code | 80 blank | 151 comment | 0 complexity | e5bd7eb4a3ca8c56c881e5508a18f956 MD5 | raw file

Large files files are truncated, but you can click here to view the full file

  1!> \file
  2!> \author Kumar Mithraratne
  3!> \brief This is an example program to solve a finite elasticity equation using openCMISS calls.
  4!>
  5!> \section LICENSE
  6!>
  7!> Version: MPL 1.1/GPL 2.0/LGPL 2.1
  8!>
  9!> The contents of this file are subject to the Mozilla Public License
 10!> Version 1.1 (the "License"); you may not use this file except in
 11!> compliance with the License. You may obtain a copy of the License at
 12!> http://www.mozilla.org/MPL/
 13!>
 14!> Software distributed under the License is distributed on an "AS IS"
 15!> basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
 16!> License for the specific language governing rights and limitations
 17!> under the License.
 18!>
 19!> The Original Code is openCMISS
 20!>
 21!> The Initial Developer of the Original Code is University of Auckland,
 22!> Auckland, New Zealand and University of Oxford, Oxford, United
 23!> Kingdom. Portions created by the University of Auckland and University
 24!> of Oxford are Copyright (C) 2007 by the University of Auckland and
 25!> the University of Oxford. All Rights Reserved.
 26!>
 27!> Contributor(s): 
 28!>
 29!> Alternatively, the contents of this file may be used under the terms of
 30!> either the GNU General Public License Version 2 or later (the "GPL"), or
 31!> the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
 32!> in which case the provisions of the GPL or the LGPL are applicable instead
 33!> of those above. If you wish to allow use of your version of this file only
 34!> under the terms of either the GPL or the LGPL, and not to allow others to
 35!> use your version of this file under the terms of the MPL, indicate your
 36!> decision by deleting the provisions above and replace them with the notice
 37!> and other provisions required by the GPL or the LGPL. If you do not delete
 38!> the provisions above, a recipient may use your version of this file under
 39!> the terms of any one of the MPL, the GPL or the LGPL.
 40!>
 41
 42!> \example FiniteElasticity/TriCubicAxialExtension/src/TriCubicAxialExtensionExample.f90
 43!! Example program to solve a finite elasticity equation using openCMISS calls.
 44!! \par Latest Builds:
 45!! \li <a href='http://autotest.bioeng.auckland.ac.nz/opencmiss-build/logs_x86_64-linux/FiniteElasticity/TriCubicAxialExtension/build-intel'>Linux Intel Build</a>
 46!! \li <a href='http://autotest.bioeng.auckland.ac.nz/opencmiss-build/logs_x86_64-linux/FiniteElasticity/TriCubicAxialExtension/build-gnu'>Linux GNU Build</a>
 47!<
 48
 49!> Main program
 50PROGRAM TRICUBICAXIALEXTENSIONEXAMPLE
 51
 52  USE OPENCMISS
 53  USE MPI
 54
 55#ifdef WIN32
 56  USE IFQWIN
 57#endif
 58
 59  IMPLICIT NONE
 60
 61  !Test program parameters
 62
 63  INTEGER(CMISSIntg), PARAMETER :: CoordinateSystemUserNumber=1
 64  INTEGER(CMISSIntg), PARAMETER :: RegionUserNumber=1
 65  INTEGER(CMISSIntg), PARAMETER :: CubicBasisUserNumber=1
 66  INTEGER(CMISSIntg), PARAMETER :: LinearBasisUserNumber=2
 67  INTEGER(CMISSIntg), PARAMETER :: MeshUserNumber=1
 68  INTEGER(CMISSIntg), PARAMETER :: CubicMeshComponentNumber=1
 69  INTEGER(CMISSIntg), PARAMETER :: LinearMeshComponentNumber=2
 70  INTEGER(CMISSIntg), PARAMETER :: DecompositionUserNumber=1
 71  INTEGER(CMISSIntg), PARAMETER :: FieldGeometryUserNumber=1
 72  INTEGER(CMISSIntg), PARAMETER :: FieldFibreUserNumber=2
 73  INTEGER(CMISSIntg), PARAMETER :: FieldMaterialUserNumber=3
 74  INTEGER(CMISSIntg), PARAMETER :: FieldDependentUserNumber=4
 75  INTEGER(CMISSIntg), PARAMETER :: EquationSetUserNumber=1
 76  INTEGER(CMISSIntg), PARAMETER :: EquationsSetFieldUserNumber=13
 77  INTEGER(CMISSIntg), PARAMETER :: ProblemUserNumber=1
 78
 79  !Program types
 80
 81  !Program variables
 82
 83  INTEGER(CMISSIntg) :: NumberGlobalXElements,NumberGlobalYElements,NumberGlobalZElements
 84  INTEGER(CMISSIntg) :: TotalNumberElements,TotalNumberNodes,NumberOfMeshDimensions
 85  INTEGER(CMISSIntg) :: MPI_IERROR
 86  INTEGER(CMISSIntg) :: EquationsSetIndex
 87  INTEGER(CMISSIntg) :: NumberOfComputationalNodes,NumberOfDomains,ComputationalNodeNumber
 88
 89  !CMISS variables
 90  TYPE(CMISSBasisType) :: CubicBasis, LinearBasis
 91  TYPE(CMISSBoundaryConditionsType) :: BoundaryConditions
 92  TYPE(CMISSCoordinateSystemType) :: CoordinateSystem, WorldCoordinateSystem
 93  TYPE(CMISSMeshType) :: Mesh
 94  TYPE(CMISSDecompositionType) :: Decomposition
 95  TYPE(CMISSEquationsType) :: Equations
 96  TYPE(CMISSEquationsSetType) :: EquationsSet
 97  TYPE(CMISSFieldType) :: GeometricField,FibreField,MaterialField,DependentField,EquationsSetField
 98  TYPE(CMISSFieldsType) :: Fields
 99  TYPE(CMISSProblemType) :: Problem
100  TYPE(CMISSRegionType) :: Region,WorldRegion
101  TYPE(CMISSSolverType) :: Solver,LinearSolver
102  TYPE(CMISSSolverEquationsType) :: SolverEquations
103  TYPE(CMISSNodesType) :: Nodes
104  TYPE(CMISSMeshElementsType) :: CubicElements,LinearElements
105  TYPE(CMISSControlLoopType) :: ControlLoop
106
107#ifdef WIN32
108  !Quickwin type
109  LOGICAL :: QUICKWIN_STATUS=.FALSE.
110  TYPE(WINDOWCONFIG) :: QUICKWIN_WINDOW_CONFIG
111#endif
112
113  !Generic CMISS variables
114  INTEGER(CMISSIntg) :: Err
115
116#ifdef WIN32
117  !Initialise QuickWin
118  QUICKWIN_WINDOW_CONFIG%TITLE="General Output" !Window title
119  QUICKWIN_WINDOW_CONFIG%NUMTEXTROWS=-1 !Max possible number of rows
120  QUICKWIN_WINDOW_CONFIG%MODE=QWIN$SCROLLDOWN
121  !Set the window parameters
122  QUICKWIN_STATUS=SETWINDOWCONFIG(QUICKWIN_WINDOW_CONFIG)
123  !If attempt fails set with system estimated values
124  IF(.NOT.QUICKWIN_STATUS) QUICKWIN_STATUS=SETWINDOWCONFIG(QUICKWIN_WINDOW_CONFIG)
125#endif
126
127  !Intialise cmiss
128  CALL CMISSInitialise(WorldCoordinateSystem,WorldRegion,Err)
129
130  CALL CMISSErrorHandlingModeSet(CMISS_ERRORS_TRAP_ERROR,Err)
131
132  !Set all diganostic levels on for testing
133  !CALL CMISSDiagnosticsSetOn(CMISS_FROM_DIAG_TYPE,[1,2,3,4,5],"Diagnostics",["PROBLEM_RESIDUAL_EVALUATE"],Err)
134
135  !Get the number of computational nodes and this computational node number
136  CALL CMISSComputationalNumberOfNodesGet(NumberOfComputationalNodes,Err)
137  CALL CMISSComputationalNodeNumberGet(ComputationalNodeNumber,Err)
138
139  NumberGlobalXElements=1
140  NumberGlobalYElements=1
141  NumberGlobalZElements=1
142  NumberOfDomains=1
143
144  !Broadcast the number of elements in the X,Y and Z directions and the number of partitions to the other computational nodes
145  CALL MPI_BCAST(NumberGlobalXElements,1,MPI_INTEGER,0,MPI_COMM_WORLD,MPI_IERROR)
146  CALL MPI_BCAST(NumberGlobalYElements,1,MPI_INTEGER,0,MPI_COMM_WORLD,MPI_IERROR)
147  CALL MPI_BCAST(NumberGlobalZElements,1,MPI_INTEGER,0,MPI_COMM_WORLD,MPI_IERROR)
148  CALL MPI_BCAST(NumberOfDomains,1,MPI_INTEGER,0,MPI_COMM_WORLD,MPI_IERROR)
149
150  !Create a 3D rectangular cartesian coordinate system
151  CALL CMISSCoordinateSystem_Initialise(CoordinateSystem,Err)
152  CALL CMISSCoordinateSystem_CreateStart(CoordinateSystemUserNumber,CoordinateSystem,Err)
153  CALL CMISSCoordinateSystem_CreateFinish(CoordinateSystem,Err)
154
155  !Create a region and assign the coordinate system to the region
156  CALL CMISSRegion_Initialise(Region,Err)
157  CALL CMISSRegion_CreateStart(RegionUserNumber,WorldRegion,Region,Err)
158  CALL CMISSRegion_CoordinateSystemSet(Region,CoordinateSystem,Err)
159  CALL CMISSRegion_CreateFinish(Region,Err)
160
161  !Define basis functions - tri-linear Lagrange and tri-cubic Lagrange
162  CALL CMISSBasis_Initialise(LinearBasis,Err)
163  CALL CMISSBasis_CreateStart(LinearBasisUserNumber,LinearBasis,Err)
164  CALL CMISSBasis_QuadratureNumberOfGaussXiSet(LinearBasis, &
165    & [CMISS_BASIS_MID_QUADRATURE_SCHEME,CMISS_BASIS_MID_QUADRATURE_SCHEME,CMISS_BASIS_MID_QUADRATURE_SCHEME],Err)
166  CALL CMISSBasis_CreateFinish(LinearBasis,Err)
167
168  CALL CMISSBasis_Initialise(CubicBasis,Err)
169  CALL CMISSBasis_CreateStart(CubicBasisUserNumber,CubicBasis,Err)
170  CALL CMISSBasis_InterpolationXiSet(CubicBasis,[CMISS_BASIS_CUBIC_HERMITE_INTERPOLATION, &
171    & CMISS_BASIS_CUBIC_HERMITE_INTERPOLATION,CMISS_BASIS_CUBIC_HERMITE_INTERPOLATION],Err)
172  CALL CMISSBasis_QuadratureNumberOfGaussXiSet(CubicBasis, &
173    & [CMISS_BASIS_MID_QUADRATURE_SCHEME,CMISS_BASIS_MID_QUADRATURE_SCHEME,CMISS_BASIS_MID_QUADRATURE_SCHEME],Err)
174  CALL CMISSBasis_QuadratureLocalFaceGaussEvaluateSet(CubicBasis,.TRUE.,Err)
175  CALL CMISSBasis_CreateFinish(CubicBasis,Err)
176
177  !Create a mesh with two components, cubic hermite for geometry and linear lagrange
178  !for hydrostatic pressure, fibre angles and material properties
179  TotalNumberElements=1
180  NumberOfMeshDimensions=3
181  CALL CMISSMesh_Initialise(Mesh,Err)
182  CALL CMISSMesh_CreateStart(MeshUserNumber,Region,NumberOfMeshDimensions,Mesh,Err)
183  CALL CMISSMesh_NumberOfComponentsSet(Mesh,2,Err)
184  CALL CMISSMesh_NumberOfElementsSet(Mesh,TotalNumberElements,Err)
185  !define nodes for the mesh
186  TotalNumberNodes=8
187  CALL CMISSNodes_Initialise(Nodes,Err)
188  CALL CMISSNodes_CreateStart(Region,TotalNumberNodes,Nodes,Err)
189  CALL CMISSNodes_CreateFinish(Nodes,Err)
190  !cubic Hermite component
191  CALL CMISSMeshElements_Initialise(CubicElements,Err)
192  CALL CMISSMeshElements_CreateStart(Mesh,CubicMeshComponentNumber,CubicBasis,CubicElements,Err)
193  CALL CMISSMeshElements_NodesSet(CubicElements,1,[1,2,3,4,5,6,7,8],Err)
194  CALL CMISSMeshElements_CreateFinish(CubicElements,Err)
195  !linear Lagrange component
196  CALL CMISSMeshElements_Initialise(LinearElements,Err)
197  CALL CMISSMeshElements_CreateStart(Mesh,LinearMeshComponentNumber,LinearBasis,LinearElements,Err)
198  CALL CMISSMeshElements_NodesSet(LinearElements,1,[1,2,3,4,5,6,7,8],Err)
199  CALL CMISSMeshElements_CreateFinish(LinearElements,Err)
200  !finish mesh creation
201  CALL CMISSMesh_CreateFinish(Mesh,Err)
202
203  !Create a decomposition
204  CALL CMISSDecomposition_Initialise(Decomposition,Err)
205  CALL CMISSDecomposition_CreateStart(DecompositionUserNumber,Mesh,Decomposition,Err)
206  CALL CMISSDecomposition_TypeSet(Decomposition,CMISS_DECOMPOSITION_CALCULATED_TYPE,Err)
207  CALL CMISSDecomposition_NumberOfDomainsSet(Decomposition,NumberOfDomains,Err)
208  CALL CMISSDecomposition_CreateFinish(Decomposition,Err)
209
210  !Create a field to put the geometry (defualt is geometry)
211  CALL CMISSField_Initialise(GeometricField,Err)
212  CALL CMISSField_CreateStart(FieldGeometryUserNumber,Region,GeometricField,Err)
213  CALL CMISSField_MeshDecompositionSet(GeometricField,Decomposition,Err)
214  CALL CMISSField_VariableLabelSet(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,"Geometry",Err)
215  CALL CMISSField_ComponentMeshComponentSet(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,1,CubicMeshComponentNumber,Err)
216  CALL CMISSField_ComponentMeshComponentSet(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,2,CubicMeshComponentNumber,Err)
217  CALL CMISSField_ComponentMeshComponentSet(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,3,CubicMeshComponentNumber,Err)
218  CALL CMISSField_ScalingTypeSet(GeometricField,CMISS_FIELD_UNIT_SCALING,Err)
219  CALL CMISSField_CreateFinish(GeometricField,Err)
220
221  !Set node parameters
222  !node 1
223  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,1,1, &
224    & 0.0_CMISSDP,Err)
225  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,2,1,1, &
226    & 1.0_CMISSDP,Err)
227
228  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,1,2, &
229    & 0.0_CMISSDP,Err)
230  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,3,1,2, &
231    & 1.0_CMISSDP,Err)
232
233  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,1,3, &
234    & 0.0_CMISSDP,Err)
235  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,5,1,3, &
236    & 1.0_CMISSDP,Err)
237
238  !node 2
239  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,2,1, &
240    & 1.0_CMISSDP,Err)
241  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,2,2,1, &
242    & 1.0_CMISSDP,Err)
243
244  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,2,2, &
245    & 0.0_CMISSDP,Err)
246  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,3,2,2, &
247    & 1.0_CMISSDP,Err)
248
249  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,2,3, &
250    & 0.0_CMISSDP,Err)
251  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,5,2,3, &
252    & 1.0_CMISSDP,Err)
253
254  !node 3
255  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,3,1, &
256    & 0.0_CMISSDP,Err)
257  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,2,3,1, &
258    & 1.0_CMISSDP,Err)
259
260  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,3,2, &
261    & 1.0_CMISSDP,Err)
262  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,3,3,2, &
263    & 1.0_CMISSDP,Err)
264
265  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,3,3, &
266    & 0.0_CMISSDP,Err)
267  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,5,3,3, &
268    & 1.0_CMISSDP,Err)
269
270  !node 4
271  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,4,1, &
272    & 1.0_CMISSDP,Err)
273  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,2,4,1, &
274    & 1.0_CMISSDP,Err)
275
276  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,4,2, &
277    & 1.0_CMISSDP,Err)
278  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,3,4,2, &
279    & 1.0_CMISSDP,Err)
280
281  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,4,3, &
282    & 0.0_CMISSDP,Err)
283  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,5,4,3, &
284    & 1.0_CMISSDP,Err)
285
286  !node 5
287  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,5,1, &
288    & 0.0_CMISSDP,Err)
289  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,2,5,1, &
290    & 1.0_CMISSDP,Err)
291
292  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,5,2, &
293    & 0.0_CMISSDP,Err)
294  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,3,5,2, &
295    & 1.0_CMISSDP,Err)
296
297  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,5,3, &
298    & 1.0_CMISSDP,Err)
299  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,5,5,3, &
300    & 1.0_CMISSDP,Err)
301
302  !node 6
303  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,6,1, &
304    & 1.0_CMISSDP,Err)
305  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,2,6,1, &
306    & 1.0_CMISSDP,Err)
307
308  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,6,2, &
309    & 0.0_CMISSDP,Err)
310  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,3,6,2, &
311    & 1.0_CMISSDP,Err)
312
313  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,6,3, &
314    & 1.0_CMISSDP,Err)
315  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,5,6,3, &
316    & 1.0_CMISSDP,Err)
317
318  !node 7
319  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,7,1, &
320    & 0.0_CMISSDP,Err)
321  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,2,7,1, &
322    & 1.0_CMISSDP,Err)
323
324  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,7,2, &
325    & 1.0_CMISSDP,Err)
326  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,3,7,2, &
327    & 1.0_CMISSDP,Err)
328
329  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,7,3, &
330    & 1.0_CMISSDP,Err)
331  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,5,7,3, &
332    & 1.0_CMISSDP,Err)
333
334  !node 8
335  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,8,1, &
336    & 1.0_CMISSDP,Err)
337  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,2,8,1, &
338    & 1.0_CMISSDP,Err)
339
340  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,8,2, &
341    & 1.0_CMISSDP,Err)
342  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,3,8,2, &
343    & 1.0_CMISSDP,Err)
344
345  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,1,8,3, &
346    & 1.0_CMISSDP,Err)
347  CALL CMISSField_ParameterSetUpdateNode(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,5,8,3, &
348    & 1.0_CMISSDP,Err)
349
350  !Create a fibre field and attach it to the geometric field
351  CALL CMISSField_Initialise(FibreField,Err)
352  CALL CMISSField_CreateStart(FieldFibreUserNumber,Region,FibreField,Err)
353  CALL CMISSField_TypeSet(FibreField,CMISS_FIELD_FIBRE_TYPE,Err)
354  CALL CMISSField_MeshDecompositionSet(FibreField,Decomposition,Err)
355  CALL CMISSField_GeometricFieldSet(FibreField,GeometricField,Err)
356  CALL CMISSField_VariableLabelSet(FibreField,CMISS_FIELD_U_VARIABLE_TYPE,"Fibre",Err)
357  CALL CMISSField_ComponentMeshComponentSet(FibreField,CMISS_FIELD_U_VARIABLE_TYPE,1,LinearMeshComponentNumber,Err)
358  CALL CMISSField_ComponentMeshComponentSet(FibreField,CMISS_FIELD_U_VARIABLE_TYPE,2,LinearMeshComponentNumber,Err)
359  CALL CMISSField_ComponentMeshComponentSet(FibreField,CMISS_FIELD_U_VARIABLE_TYPE,3,LinearMeshComponentNumber,Err)
360  CALL CMISSField_ScalingTypeSet(FibreField,CMISS_FIELD_UNIT_SCALING,Err)
361  CALL CMISSField_CreateFinish(FibreField,Err)
362
363  !Create the equations_set
364  CALL CMISSField_Initialise(EquationsSetField,Err)
365  CALL CMISSEquationsSet_Initialise(EquationsSet,Err)
366  CALL CMISSEquationsSet_CreateStart(EquationSetUserNumber,Region,FibreField,CMISS_EQUATIONS_SET_ELASTICITY_CLASS, &
367    & CMISS_EQUATIONS_SET_FINITE_ELASTICITY_TYPE,CMISS_EQUATIONS_SET_MOONEY_RIVLIN_SUBTYPE,EquationsSetFieldUserNumber, &
368      & EquationsSetField,&
369    & EquationsSet,Err)
370  CALL CMISSEquationsSet_CreateFinish(EquationsSet,Err)
371
372  !Create the dependent field with 2 variables and 4 components (3 displacement, 1 pressure)
373  CALL CMISSField_Initialise(DependentField,Err)
374  CALL CMISSField_CreateStart(FieldDependentUserNumber,Region,DependentField,Err)
375  CALL CMISSField_TypeSet(DependentField,CMISS_FIELD_GENERAL_TYPE,Err)
376  CALL CMISSField_MeshDecompositionSet(DependentField,Decomposition,Err)
377  CALL CMISSField_GeometricFieldSet(DependentField,GeometricField,Err)
378  CALL CMISSField_DependentTypeSet(DependentField,CMISS_FIELD_DEPENDENT_TYPE,Err)
379  CALL CMISSField_NumberOfVariablesSet(DependentField,2,Err)
380  CALL CMISSField_VariableLabelSet(DependentField,CMISS_FIELD_U_VARIABLE_TYPE,"Dependent",Err)
381  CALL CMISSField_NumberOfComponentsSet(DependentField,CMISS_FIELD_U_VARIABLE_TYPE,4,Err)
382  CALL CMISSField_NumberOfComponentsSet(DependentField,CMISS_FIELD_DELUDELN_VARIABLE_TYPE,4,Err)
383  CALL CMISSField_ComponentMeshComponentSet(DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,CubicMeshComponentNumber,Err)
384  CALL CMISSField_ComponentMeshComponentSet(DependentField,CMISS_FIELD_U_VARIABLE_TYPE,2,CubicMeshComponentNumber,Err)
385  CALL CMISSField_ComponentMeshComponentSet(DependentField,CMISS_FIELD_U_VARIABLE_TYPE,3,CubicMeshComponentNumber,Err)
386  CALL CMISSField_ComponentMeshComponentSet(DependentField,CMISS_FIELD_U_VARIABLE_TYPE,4,LinearMeshComponentNumber,Err)
387  CALL CMISSField_ComponentMeshComponentSet(DependentField,CMISS_FIELD_DELUDELN_VARIABLE_TYPE,1,CubicMeshComponentNumber,Err)
388  CALL CMISSField_ComponentMeshComponentSet(DependentField,CMISS_FIELD_DELUDELN_VARIABLE_TYPE,2,CubicMeshComponentNumber,Err)
389  CALL CMISSField_ComponentMeshComponentSet(DependentField,CMISS_FIELD_DELUDELN_VARIABLE_TYPE,3,CubicMeshComponentNumber,Err)
390  CALL CMISSField_ComponentMeshComponentSet(DependentField,CMISS_FIELD_DELUDELN_VARIABLE_TYPE,4,LinearMeshComponentNumber,Err)
391  CALL CMISSField_ScalingTypeSet(DependentField,CMISS_FIELD_UNIT_SCALING,Err)
392  CALL CMISSField_CreateFinish(DependentField,Err)
393
394  CALL CMISSEquationsSet_DependentCreateStart(EquationsSet,FieldDependentUserNumber,DependentField,Err)
395  CALL CMISSEquationsSet_DependentCreateFinish(EquationsSet,Err)
396
397  !Create the material field
398  CALL CMISSField_Initialise(MaterialField,Err)
399  CALL CMISSEquationsSet_MaterialsCreateStart(EquationsSet,FieldMaterialUserNumber,MaterialField,Err)
400  CALL CMISSEquationsSet_MaterialsCreateFinish(EquationsSet,Err)
401
402  !Set Mooney-Rivlin constants c10 and c01 to 2.0 and 4.0 respectively.
403  CALL CMISSField_ComponentValuesInitialise(MaterialField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,2.0_CMISSDP,Err)
404  CALL CMISSField_ComponentValuesInitialise(MaterialField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,2,4.0_CMISSDP,Err)
405
406  !Create the equations set equations
407  CALL CMISSEquations_Initialise(Equations,Err)
408  CALL CMISSEquationsSet_EquationsCreateStart(EquationsSet,Equations,Err)
409  CALL CMISSEquations_SparsityTypeSet(Equations,CMISS_EQUATIONS_SPARSE_MATRICES,Err)
410  CALL CMISSEquations_OutputTypeSet(Equations,CMISS_EQUATIONS_NO_OUTPUT,Err)
411  CALL CMISSEquationsSet_EquationsCreateFinish(EquationsSet,Err)
412
413  !Initialise dependent field from undeformed geometry and displacement bcs and set hydrostatic pressure
414  CALL CMISSField_ParametersToFieldParametersComponentCopy(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE, &
415    & 1,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,1,Err)
416  CALL CMISSField_ParametersToFieldParametersComponentCopy(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE, &
417    & 2,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,2,Err)
418  CALL CMISSField_ParametersToFieldParametersComponentCopy(GeometricField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE, &
419    & 3,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,3,Err)
420  CALL CMISSField_ComponentValuesInitialise(DependentField,CMISS_FIELD_U_VARIABLE_TYPE,CMISS_FIELD_VALUES_SET_TYPE,4,-8.0_CMISSDP, &
421    & Err)
422
423  !Define the problem
424  CALL CMISSProblem_Initialise(Problem,Err)
425  CALL CMISSProblem_CreateStart(ProblemUserNumber,Problem,Err)
426  CALL CMISSProblem_SpecificationSet(Problem,CMISS_PROBLEM_ELASTICITY_CLASS,CMISS_PROBLEM_FINITE_ELASTICITY_TYPE, &
427    & CMISS_PROBLEM_NO_SUBTYPE,Err)
428  CALL CMISSProblem_CreateFinish(Problem,Err)
429
430  !Create the problem control loop
431  CALL CMISSProblem_ControlLoopCreateStart(Problem,Err)
432  CALL CMISSControlLoop_Initialise(ControlLoop,Err)
433  CALL CMISSProblem_ControlLoopGet(Problem,CMISS_CONTROL_LOOP_NODE,ControlLoop,Err)
434  CALL CMISSControlLoop_MaximumIterationsSet(ControlLoop,2,Err)
435  CALL CMISSProblem_ControlLoopCreateFinish(Problem,Err)
436
437  !Create the problem solvers
438  CALL CMISSSolver_Initialise(Solver,Err)
439  CALL CMISSSolver_Initialise(LinearSolver,Err)
440  CALL CMISSProblem_SolversCreateStart(Problem,Err)
441  CALL CMISSProblem_SolverGet(Problem,CMISS_CONTROL_LOOP_NODE,1,Solver,Err)
442  CALL CMISSSolver_OutputTypeSet(Solver,CMISS_SOLVER_PROGRESS_OUTPUT,Err)
443  CALL CMISSSolver_NewtonJacobianCalculationTypeSet(Solver,CMISS_SOLVER_NEWTON_JACOBIAN_FD_CALCULATED,Err)
444  CALL CMISSSolver_NewtonRelativeToleranceSet(Solver,1.0E-10_CMISSDP,Err)
445  CALL CMISSSolver_NewtonLinearSolverGet(Solver,LinearSolver,Err)
446  CALL CMISSSolver_LinearTypeSet(LinearSolver,CMISS_SOLVER_LINEAR_DIRECT_SOLVE_TYPE,Err)
447  CALL CMISSProblem_SolversCreateFinish(Problem,Err)
448
449  !Create the problem solver equations
450  CALL CMISSSolver_Initialise(Solver,Err)
451  CALL CMISSSolverEquations_Initialise(SolverEquations,Err)
452  CALL CMISSProblem_SolverEquationsCreateStart(Problem,Err)
453  CALL CMISSProblem_SolverGet(Problem,CMISS_CONTROL_LOOP_NODE,1,Solver,Err)
454  CALL CMISSSolver_SolverEquationsGet(Solver,SolverEquations,Err)
455  CALL CMISSSolverEquations_EquationsSetAdd(SolverEquations,EquationsSet,EquationsSetIndex,Err)
456  CALL CMISSProblem_SolverEquationsCreateFinish(Problem,Err)
457
458  !Prescribe boundary conditions (absolute nodal parameters)
459  CALL CMISSBoundaryConditions_Initialise(BoundaryConditions,Err)
460  CALL CMISSSolverEquations_BoundaryConditionsCreateStart(SolverEquations,BoundaryConditions,Err)
461
462  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,1,1,1, &
463    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
464    & 0.0_CMISSDP,Err)
465  !CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,2,1,1,CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
466  !  & 1.0_CMISSDP,Err)
467  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,3,1,1, &
468    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
469    & 0.0_CMISSDP,Err)
470  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,4,1,1, &
471    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
472    & 0.0_CMISSDP,Err)
473  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,5,1,1, &
474    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
475    & 0.0_CMISSDP,Err)
476  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,6,1,1, &
477    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
478    & 0.0_CMISSDP,Err)
479  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,7,1,1, &
480    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
481    & 0.0_CMISSDP,Err)
482  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,8,1,1, &
483    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
484    & 0.0_CMISSDP,Err)
485  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,1,1,2, &
486    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
487    & 0.0_CMISSDP,Err)
488  !CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,2,1,2,CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
489  !  & 0.0_CMISSDP,Err)
490  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,3,1,2, &
491    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
492    & 1.0_CMISSDP,Err)
493  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,4,1,2, &
494    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
495    & 0.0_CMISSDP,Err)
496  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,5,1,2, &
497    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
498    & 0.0_CMISSDP,Err)
499  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,6,1,2, &
500    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
501    & 0.0_CMISSDP,Err)
502  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,7,1,2, &
503    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
504    & 0.0_CMISSDP,Err)
505  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,8,1,2, &
506    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
507    & 0.0_CMISSDP,Err)
508  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,1,1,3, &
509    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
510    & 0.0_CMISSDP,Err)
511  !CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,2,1,3,CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
512  !  & 0.0_CMISSDP,Err)
513  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,3,1,3, &
514    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
515    & 0.0_CMISSDP,Err)
516  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,4,1,3, &
517    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
518    & 0.0_CMISSDP,Err)
519  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,5,1,3, &
520    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
521    & 1.0_CMISSDP,Err)
522  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,6,1,3, &
523    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
524    & 0.0_CMISSDP,Err)
525  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,7,1,3, &
526    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
527    & 0.0_CMISSDP,Err)
528  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,8,1,3, &
529    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
530    & 0.0_CMISSDP,Err)
531
532  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,1,2,1, &
533    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
534    & 1.1_CMISSDP,Err)
535  !CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,2,2,1,CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
536  !  & 1.0_CMISSDP,Err)
537  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,3,2,1, &
538    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
539    & 0.0_CMISSDP,Err)
540  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,4,2,1, &
541    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
542    & 0.0_CMISSDP,Err)
543  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,5,2,1, &
544    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
545    & 0.0_CMISSDP,Err)
546  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,6,2,1, &
547    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
548    & 0.0_CMISSDP,Err)
549  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,7,2,1, &
550    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
551    & 0.0_CMISSDP,Err)
552  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,8,2,1, &
553    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
554    & 0.0_CMISSDP,Err)
555  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,1,2,2, &
556    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
557    & 0.0_CMISSDP,Err)
558  !CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,2,2,2,CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
559  !  & 0.0_CMISSDP,Err)
560  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,3,2,2, &
561    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
562    & 1.0_CMISSDP,Err)
563  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,4,2,2, &
564    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
565    & 0.0_CMISSDP,Err)
566  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,5,2,2, &
567    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
568    & 0.0_CMISSDP,Err)
569  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,6,2,2, &
570    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
571    & 0.0_CMISSDP,Err)
572  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,7,2,2, &
573    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
574    & 0.0_CMISSDP,Err)
575  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,8,2,2, &
576    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
577    & 0.0_CMISSDP,Err)
578  !CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,1,2,3,CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
579  !  & 0.0_CMISSDP,Err)
580  !CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,2,2,3,CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
581  !  & 0.0_CMISSDP,Err)
582  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,3,2,3, &
583    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
584    & 0.0_CMISSDP,Err)
585  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,4,2,3, &
586    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
587    & 0.0_CMISSDP,Err)
588  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,5,2,3, &
589    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
590    & 1.0_CMISSDP,Err)
591  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,6,2,3, &
592    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
593    & 0.0_CMISSDP,Err)
594  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,7,2,3, &
595    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
596    & 0.0_CMISSDP,Err)
597  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,8,2,3, &
598    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
599    & 0.0_CMISSDP,Err)
600
601  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,1,3,1, &
602    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
603    & 0.0_CMISSDP,Err)
604  !CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,2,3,1,CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
605  !  & 1.0_CMISSDP,Err)
606  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,3,3,1, &
607    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
608    & 0.0_CMISSDP,Err)
609  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,4,3,1, &
610    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
611    & 0.0_CMISSDP,Err)
612  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,5,3,1, &
613    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
614    & 0.0_CMISSDP,Err)
615  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,6,3,1, &
616    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
617    & 0.0_CMISSDP,Err)
618  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,7,3,1, &
619    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
620    & 0.0_CMISSDP,Err)
621  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,8,3,1, &
622    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
623    & 0.0_CMISSDP,Err)
624  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,1,3,2, &
625    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
626    & 1.0_CMISSDP,Err)
627  !CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,2,3,2,CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
628  !  & 0.0_CMISSDP,Err)
629  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,3,3,2, &
630    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
631    & 1.0_CMISSDP,Err)
632  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,4,3,2, &
633    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
634    & 0.0_CMISSDP,Err)
635  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,5,3,2, &
636    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
637    & 0.0_CMISSDP,Err)
638  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,6,3,2, &
639    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
640    & 0.0_CMISSDP,Err)
641  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,7,3,2, &
642    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
643    & 0.0_CMISSDP,Err)
644  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,8,3,2, &
645    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
646    & 0.0_CMISSDP,Err)
647  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,1,3,3, &
648    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
649    & 0.0_CMISSDP,Err)
650  !CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,2,3,3,CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
651  !  & 0.0_CMISSDP,Err)
652  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,3,3,3, &
653    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
654    & 0.0_CMISSDP,Err)
655  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,4,3,3, &
656    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
657    & 0.0_CMISSDP,Err)
658  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,5,3,3, &
659    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
660    & 1.0_CMISSDP,Err)
661  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,6,3,3, &
662    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
663    & 0.0_CMISSDP,Err)
664  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,7,3,3, &
665    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
666    & 0.0_CMISSDP,Err)
667  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,8,3,3, &
668    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
669    & 0.0_CMISSDP,Err)
670
671  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,1,4,1, &
672    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
673    & 1.1_CMISSDP,Err)
674  !CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,2,4,1,CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
675  !  & 1.0_CMISSDP,Err)
676  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,3,4,1, &
677    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
678    & 0.0_CMISSDP,Err)
679  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,4,4,1, &
680    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
681    & 0.0_CMISSDP,Err)
682  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,5,4,1, &
683    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
684    & 0.0_CMISSDP,Err)
685  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,6,4,1, &
686    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
687    & 0.0_CMISSDP,Err)
688  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,7,4,1, &
689    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
690    & 0.0_CMISSDP,Err)
691  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,8,4,1, &
692    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
693    & 0.0_CMISSDP,Err)
694  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,1,4,2, &
695    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
696    & 1.0_CMISSDP,Err)
697  !CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,2,4,2,CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
698  !  & 1.0_CMISSDP,Err)
699  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,3,4,2, &
700    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
701    & 1.0_CMISSDP,Err)
702  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,4,4,2, &
703    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
704    & 0.0_CMISSDP,Err)
705  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,5,4,2, &
706    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
707    & 0.0_CMISSDP,Err)
708  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,6,4,2, &
709    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
710    & 0.0_CMISSDP,Err)
711  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,7,4,2, &
712    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
713    & 0.0_CMISSDP,Err)
714  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,8,4,2, &
715    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
716    & 0.0_CMISSDP,Err)
717  !CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,1,4,3,CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
718  !  & 0.0_CMISSDP,Err)
719  !CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,2,4,3,CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
720  !  & 0.0_CMISSDP,Err)
721  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,3,4,3, &
722    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
723    & 0.0_CMISSDP,Err)
724  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,4,4,3, &
725    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
726    & 0.0_CMISSDP,Err)
727  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,5,4,3, &
728    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
729    & 1.0_CMISSDP,Err)
730  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,6,4,3, &
731    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
732    & 0.0_CMISSDP,Err)
733  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,7,4,3, &
734    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
735    & 0.0_CMISSDP,Err)
736  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,8,4,3, &
737    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
738    & 0.0_CMISSDP,Err)
739
740  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,1,5,1, &
741    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
742    & 0.0_CMISSDP,Err)
743  !CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,2,5,1,CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
744  !  & 1.0_CMISSDP,Err)
745  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,3,5,1, &
746    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
747    & 0.0_CMISSDP,Err)
748  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,4,5,1, &
749    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
750    & 0.0_CMISSDP,Err)
751  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,5,5,1, &
752    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
753    & 0.0_CMISSDP,Err)
754  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,6,5,1, &
755    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
756    & 0.0_CMISSDP,Err)
757  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,7,5,1, &
758    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
759    & 0.0_CMISSDP,Err)
760  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,8,5,1, &
761    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
762    & 0.0_CMISSDP,Err)
763  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,1,5,2, &
764    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
765    & 0.0_CMISSDP,Err)
766  !CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,2,5,2,CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
767  !  & 0.0_CMISSDP,Err)
768  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,3,5,2, &
769    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
770    & 1.0_CMISSDP,Err)
771  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,4,5,2, &
772    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
773    & 0.0_CMISSDP,Err)
774  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,5,5,2, &
775    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
776    & 0.0_CMISSDP,Err)
777  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,6,5,2, &
778    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
779    & 0.0_CMISSDP,Err)
780  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,7,5,2, &
781    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
782    & 0.0_CMISSDP,Err)
783  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,8,5,2, &
784    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
785    & 0.0_CMISSDP,Err)
786  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,1,5,3, &
787    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
788    & 1.0_CMISSDP,Err)
789  !CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,2,5,3,CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
790  ! & 0.0_CMISSDP,Err)
791  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,3,5,3, &
792    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
793    & 0.0_CMISSDP,Err)
794  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,4,5,3, &
795    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
796    & 0.0_CMISSDP,Err)
797  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,5,5,3, &
798    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
799    & 1.0_CMISSDP,Err)
800  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,6,5,3, &
801    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
802    & 0.0_CMISSDP,Err)
803  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,7,5,3, &
804    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
805    & 0.0_CMISSDP,Err)
806  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,8,5,3, &
807    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
808    & 0.0_CMISSDP,Err)
809
810  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,1,6,1, &
811    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
812    & 1.1_CMISSDP,Err)
813  !CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,2,6,1,CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
814  !  & 1.0_CMISSDP,Err)
815  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,3,6,1, &
816    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
817    & 0.0_CMISSDP,Err)
818  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,4,6,1, &
819    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
820    & 0.0_CMISSDP,Err)
821  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,5,6,1, &
822    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
823    & 0.0_CMISSDP,Err)
824  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,6,6,1, &
825    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
826    & 0.0_CMISSDP,Err)
827  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,7,6,1, &
828    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
829    & 0.0_CMISSDP,Err)
830  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,8,6,1, &
831    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
832    & 0.0_CMISSDP,Err)
833  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,1,6,2, &
834    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
835    & 0.0_CMISSDP,Err)
836  !CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,2,6,2,CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
837  !  & 1.0_CMISSDP,Err)
838  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,3,6,2, &
839    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
840    & 1.0_CMISSDP,Err)
841  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,4,6,2, &
842    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
843    & 0.0_CMISSDP,Err)
844  CALL CMISSBoundaryConditions_SetNode(BoundaryConditions,DependentField,CMISS_FIELD_U_VARIABLE_TYPE,1,5,6,2, &
845    & CMISS_BOUNDARY_CONDITION_FIXED_INCREMENTED, &
846    & 0.0_CMISSDP,Err)
847  CALL CMISSBoundaryConditions_Set

Large files files are truncated, but you can click here to view the full file