<< Click to Display Table of Contents >> The Coordinates Section |
The optional COORDINATES section defines the coordinate geometry of the problem.
Each geometry selection has an implied three-dimensional coordinate structure. In 2D and 1D geometries, the solution if the PDE system is assumed to have no variation in one or two of the coordinate directions. The finite element mesh is therefore constructed in the remaining space, and derivatives in the absent coordinates are assumed to be zero.
In 3D geometry the X & Y coordinates are the projection plane in which a figure is constructed, and the Z coordinate is the direction of extrusion.
The first coordinate in the order of listing is used as the horizontal axis in graphical output, while the second is used as the vertical axis.
The basic form of the COORDINATES section is:
COORDINATES geometry
where geometry may be any of the following:
Name |
Coordinate system |
Modeled Coordinates |
CARTESIAN1 |
Cartesian (X,Y,Z) |
X |
CYLINDER1 |
Cylindrical (R,Phi,Z) |
R |
SPHERE1 |
Spherical (R,Theta,Phi) |
R |
CARTESIAN2 |
Cartesian (X,Y,Z) |
X,Y |
XCYLINDER |
Cylindrical (Z,R,Phi) |
Z,R |
YCYLINDER |
Cylindrical (R,Z,Phi) |
R,Z |
CARTESIAN3 |
Cartesian (X,Y,Z) |
X,Y,Z |
If no COORDINATES section is specified, a CARTESIAN2 coordinate system is assumed.
Renaming Coordinates
A second form of the COORDINATES section allows renaming (aliasing) of the coordinates:
COORDINATES geometry ( 'Xname' [,'Yname' [,'Zname'] ])
In this case, the 'Xname' argument renames the coordinate lying along the horizontal plot axis, and 'Yname' renames the coordinate lying along the vertical plot axis. 'Zname' renames the extrusion coordinate. Names may be quoted strings or unquoted names, and should not contain spaces or special characters like brackets or parentheses. Renaming coordinates does not change the fundamental nature of the coordinate system. In cylindrical geometries, for example, the radial coordinate will continue to be the radial coordinate, even if you name it "Z".
In time-dependent problems, the time coordinate may be renamed using TIME ('Tname') in the COORDINATES section :
COORDINATES geometry TIME ('Tname')
This may be used in conjunction with the renaming of spatial coordinates.
The DIV, GRAD, and CURL operators are expanded correctly for the designated geometry. Use of these operators in the EQUATIONS section can considerably simplify problem specification.
Since FlexPDE accepts arbitrary mathematical forms for equations, it is always possible to construct equations appropriate to an arbitrary geometry.
For example, using the CARTESIAN2 coordinate system and renaming coordinates, one can write the heat equation for cylindrical geometry as
COORDINATES cartesian2("R","Z")
VARIABLES u
...
EQUATIONS
u: dr(k*r*dr(u)) + r*dz(k*dz(u)) + r*source = 0
This equation derives from expanding the DIV and GRAD operators in cylindrical coordinates and multiplying by the volume weighting factor "r", and is the same as the equation that FlexPDE itself will construct in XCYLINDER geometry.
The function definition facility of FlexPDE can be used to simplify the transformation of arbitrary coordinates to Cartesian (X,Y,Z) coordinates.
The example problem "Samples | Usage | polar_coordinates.pde" uses this facility to pose equations in polar coordinates:
DEFINITIONS
dr(f) = (x/r)*dx(f) + (y/r)*dy(f) { functional definition of polar derivatives... }
dphi(f) = (-y)*dx(f) + x*dy(f) {... in cartesian coordinates }
EQUATIONS { equation expressed in polar coordinates }
{ (and Multiplied by r^2 to clear the r=0 singularity) }
U: r*dr(r*dr(u)) + dphi(dphi(u)) + r*r*s = 0
Graphic output using this procedure is always mapped to the fundamental Cartesian coordinate system.