Actual source code: plate2f.h
petsc-3.8.3 2017-12-09
1: ! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2: ! Include file for program plate.f
3: ! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
4: !
5: #include "petsc/finclude/petscdmda.h"
6: #include "petsc/finclude/petsctao.h"
7: use petscdmda
8: use petsctao
9: implicit none
11: ! Common blocks:
12: ! In this example we use common blocks to store data needed by the
13: ! application-provided call-back routines, FormFunction(), FormGradient(),
14: ! and FormHessian(). Note that we can store (pointers to) TAO objects
15: ! within these common blocks.
16: !
17: ! common /params/ - contains parameters for the global application
18: ! mx, my - global discretization in x- and y-directions
19: ! hx, hy - mesh spacing in x- and y-directions
20: ! N - dimension of global vectorn
21: ! bheight - height of plate
22: ! bmx,bmy - grid dimensions under plate
23: !
24: ! common /pdata/ - contains some parallel data
25: ! localX - local work vector (including ghost points)
26: ! localV - local work vector (including ghost points)
27: ! Top, Bottom, Left, Right - boundary vectors
28: ! Nx, Ny - number of processes in x- and y- directions
29: ! dm - distributed array
31: Vec localX, localV
32: Vec Top, Left
33: Vec Right, Bottom
34: DM dm
35: PetscReal bheight
36: PetscInt bmx, bmy
37: PetscInt mx, my, Nx, Ny, N
40: common /params/ mx,my,bmx,bmy,bheight,N
41: common /pdata/ dm,localX,localV,Nx,Ny
42: common /pdata/ Left, Top, Right, Bottom
44: ! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -