Encyclopaedia Index
TALK=F;RUN( 1, 1);VDU=VGAMOUSE
TEXT(Library case Y611: Five examples initialization box
>>>>>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>>>>>>>
PLANT information :
* Data input groups used: 8, 11, 19
* Ground groups planted : 1, 8, 11, 19-3
* Headings used : SCUF??, INIT??, SC03??
* Functions used : XYELLP,ELLPSD,SPHERE
* Commands used : REGION
<<<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<<<<<<
GROUP 3. X-direction grid specification
GRDPWR(X,40,20.,1.0)
GROUP 4. Y-direction grid specification
GRDPWR(Y,40,20.,1.0)
GROUP 5. Z-direction grid specification
GRDPWR(Z,44,22.,1.0)
GROUP 7. Variables stored, solved & named
STORE(U1,V1)
STORE(PRPS,MARK)
GROUP 11. Initialization of variable or porosity fields
INIADD=F
NAMSAT=MOSG
Example 1: Initialization of stagnation point flow
=======================================
PATCH(INI1,INIVAL,1,NX,1,NY,1,1,1,1)
VAL=XU2D-10.
COVAL(INI1,U1,zero,GRND)
VAL=-(YV2D-10.)
COVAL(INI1,V1,zero,GRND)
>>>>>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>>>>>>>
The 1st slab of the box is initialized by stagnation point flow with
the cartesian components as follows:
U1 = X - 10 and
V1 = 10- Y.
In above settings:
XU2D stands for the distances of the east faces of continuity
cells from the x=0.0 plane and
YV2D means the distances of the north faces of continuity cells
from the y=0.0 plane.
<<<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<<<<<<
Example 2: Solid-body rotation flow
========================
PATCH(INI2,INIVAL,1,NX,1,NY,2,2,1,1)
VAL=YG2D-10.
COVAL(INI2,U1,zero,GRND)
VAL=-(XG2D-10.)
COVAL(INI2,V1,zero,GRND)
>>>>>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>>>>>>>
The 2nd slab is initialized by solid body rotation flow about domain
centre with cartesian components as follows:
U1 = Y - 10 and
V1 = 10- X.
In above settings:
XG2D stands for the distances of the centres of continuity cells
from the x=0.0 plane and
YG2D means the distances of centres of continuity cells from the
y=0.0 plane.
<<<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<<<<<<
Example 3: Flow superposition
==================
PATCH(INI3,INIVAL,1,NX,1,NY,3,3,1,1)
VAL=-U1[,,-1]+U1[,,1]
COVAL(INI3,U1,zero,GRND)
VAL=-V1[,,2]+V1[,,-2]
COVAL(INI3,V1,zero,GRND)
>>>>>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>>>>>>>
The flow in the 3rd slab is initialized by adding the velocity
distributions of 1st and 2nd slabs.
In above settings:
a) Indeces [,,-1] and [,,2] refer to the cell velocities at 2nd
slab and
b) [,,1] and [,,-2] refer to the 1st slab.
<<<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<<<<<<
Example 4: : 2D geometry and velocities initializations
==========================================
>>>>>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>>>>>>>
The flow in the 4th slab is initialized by making use the different
distributions over specifically MARKed regions so as to have better
accord with imposed geometry. The latter is the circle chamber with
two tangentiall passages.
<<<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<<<<<<
** 2D geometry, X-Y plane
* Half-circle marked by 2.
FIINIT(MARK)=1.0
PATCH(INIT70,INIVAL,1,NX/2,1,NY,4,4,1,1)
VAL=XYELLP(2.,10.,10.,8.,8.,0.,0.)
INIT (INIT70,MARK,0.,GRND)
>>>>>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>>>>>>>
In above statement, XYELLP function is used to make the half-circle
of 16 m diameter as follows:
a) In the west half of 4th slab,
b) place the ellipse marked by 2 (1st argument), with the centre at
XC=10 m (2nd argument) and YC=10 m (3rd argument) and both
half-axes equal to 8 m ( 4th and 5th arguments).
c) The 6th and 7th function arguments are insignificant for the
circle shape and CARTES=T.
<<<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<<<<<<
* Half-circle marked by 3.
PATCH(INIT71,INIVAL,NX/2+1,NX,1,NY,4,4,1,1)
VAL=XYELLP(3.,10.,10.,8.,8.,0.,0.)
INIT (INIT71,MARK,0.,GRND)
>>>>>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>>>>>>>
In above statement, XYELLP function is used to make the half-circle
of 16 m diameter in the east half of the domain. The cells inside
ellipse are marked by 3.
<<<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<<<<<<
* Rectangular marked by 4.
PATCH(INIT08,INIVAL,1,NX/2,1,NY,4,4,1,1)
VAL=XYELLP(4.,10.,17.,100.,1.,0.,0.)
INIT (INIT08,MARK,0.,GRND)
>>>>>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>>>>>>>
In above statement, XYELLP function is used to make the rectangular
of 2 m width and 10 m length, tangential to the circle, as follows:
a) In the west half of 4th slab,
b) place the ellipse marked by 4 (1st argument), with the centre at
XC=10 m (2nd argument) and YC=17 m (3rd argument), large (100.m)
X-direction half-axis (4th argument) and Y-direction half axis
equals to 1.m (5th argument).
c) The 6th and 7th function arguments are insignificant for the
circle shape and CARTES=T.
<<<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<<<<<<
* Rectangular marked by 5.
PATCH(INIT09,INIVAL,NX/2+1,NX,1,NY,4,4,1,1)
VAL=XYELLP(5.,10.,3.,100.,1.,0.,0.)
INIT (INIT09,MARK,0.,GRND)
>>>>>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>>>>>>>
In above statement, XYELLP function is used to make the rectangular
of 2 m width and 10 m length, tangential to the circle, in the east
half of the domain. The cells inside ellipse are marked by 5.
<<<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<<<<<<
** Velocities
>>>>>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>>>>>>>
The MARKed region can not be used be used to initialize the
velocities in Group 11. Two altenatives are usefull:
1) Make the initializations at the start of IZ slab for the first
sweep as shown below:
<<<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<<<<<<
* Uniform negative velocity of 10 m/s
in sub-domain MARked by 4
U1=-10.
REGION() 4 /ISWEEP.EQ.1
V1=0.
REGION() 4 /ISWEEP.EQ.1
* Uniform negative velocity of 10 m/s
in sub-domain MARked by 5
U1=-10.
REGION() 5 /ISWEEP.EQ.1
V1=0.
REGION() 5 /ISWEEP.EQ.1
* Upward velocity field of second slab
in sub-domain MARked by 2
U1=U1[,,2]
REGION() 2 /ISWEEP.EQ.1
V1=V1[,,2]
REGION() 2 /ISWEEP.EQ.1
* Downward velocity field of second slab
in sub-domain MARked by 3
U1=-U1[,,2]
REGION() 3 /ISWEEP.EQ.1
V1=-V1[,,2]
REGION() 3 /ISWEEP.EQ.1
>>>>>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>>>>>>>
The crucial features of the above settings are:
1 Using dummy REGION command with MARK as parameter which ensures
that the velocities are initialized in accord with the statement
relationship for all cells marked by parameter value;
2 The setting of the switch to first sweep and
3 Using indicial expressions to refer to the values required.
<<<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<<<<<<
U1AD=GRND
VELAD=-10.
REGION() 4 /ISWEEP.EQ.1
>>>>>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>>>>>>>
2) Add initial velocities to the default ( zeros) values by means of
VELAD option in Group 8 for the first sweep as exemplified
for region marked 4 above.
<<<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<<<<<<
Example 5: 3D geometry and PRPS initializations
====================================
>>>>>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>>>>>>>
Unlike for previous examples, the section of 40 IZ-slabs is used
here to represent the generation of 3D geometry. The geometry in
question is a spherical chamber of 16 m diameter with two
cylindrical passages tangentially joined the sphere.
The generation procedure is to set the MARK values equal to 6.0
inside the surface of two-cylinders-sphere assembly.
Then the PRPS are initialized to follow the distribution of MARK
values.
<<<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<<<<<<
** 3D geometry, X-Y-Z space
* Provide the 90 degree angle as a parameter
REAL(ANG)
ANG=3.14159/2. ; RG(2)=ANG
* Sphere marked by 6.
PATCH(INIT10,INIVAL,1,NX,1,NY,5,NZ,1,1)
VAL=SPHERE(6.,10.,10.,12.,8.)
INIT (INIT10,MARK,0.,GRND)
>>>>>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>>>>>>>
In above statement, SPHERE function is used to make the sphere
of 16 m diameter as follows:
a) In the section of 40 IZ-slabs,
b) place the sphere marked by 6 (1st argument), with the centre at
XC=10 m (2nd argument), YC=10 m (3rd argument) and ZC=12 m (4th
argument). The 5th argument is the sphere radius, 8 m.
<<<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<<<<<<
* Cylinder marked by 6.
PATCH(INIT11,INIVAL,1,NX/2,1,NY,5,NZ,1,1)
VAL=ELLPSD(6.,10.,16.,12.,100.,2.,2.,$
0.,RG(2),RG(2),RG(2),0.,RG(2),RG(2),RG(2),0.,0.)
INIT (INIT11,MARK,0.,GRND)
>>>>>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>>>>>>>
In above statement, ELLPSD function is used to make the cylinder
of 2 m radius, tangentially joining the sphere, as follows:
a) In the east half of the section,
b) place the ellipsoid marked by 6 (1st argument), with the centre at
XC=10 m (2nd argument), YC=16 m (3rd argument) and ZC=12 m (4th
argument).
c) X-direction ellipsoid half-axis (5th argument) is set to large
(100.m) value to ensure that the shape of ellipsoid is virtually
cylindrical.
d) The Y- (6th argument) and Z- (7th argument) directions half-axis
are set to be cylinder radia, 2 m.
e) The arguments 8.9 and 10 set zero angle between ellipsoid X-axis
and corresponding cartesian frame direction, while the angles between
the former and other frame directions are kept 90 degrees.
f) The arguments 11.12 and 13 set 90 degree angle between ellipsoid
Y-axis and X-cartesian frame direction, the angle between the
former and the Y-cartesian frame direction is nulified and angle
between ellipsoid Y-axis and Z-frame direction is kept 90 degree.
g) The arguments 14.15 and 16 set 90 degree angles between ellipsoid
Z-axis and X-, Y-cartesian frame directions, while the angle
between the former and the Z-cartesian frame direction is
nulified.
h) The 17th argument, set to zero, is insignificant for CARTES=T.
<<<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<<<<<<
* Cylinder marked by 6.
PATCH(INIT12,INIVAL,NX/2+1,NX,1,NY,5,NZ,1,1)
VAL=ELLPSD(6.,10.,4.,12.,100.,2.,2.,$
0.,RG(2),RG(2),RG(2),0.,RG(2),RG(2),RG(2),0.,0.)
INIT (INIT12,MARK,0.,GRND)
>>>>>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>>>>>>>
In above statement, ELLPSD function is used to make the cylinder of 2
m radius, tangentially joining the sphere for the west half of the
section as explained earlier.
<<<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<<<<<<
** Properties
PATCH(SS001EXT,INIVAL,1,NX,1,NY,5,NZ,1,1)
VAL=40.
INIT(SS001EXT,PRPS,0.,GRND)
>>>>>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>>>>>>>
Initialization of PRPS field by 40 over all cells having MARK value
equal unity. The crucial feature of above settings is that special
PATCH name, SS001???, is to be used, in which first two characters
specify the particular action, Set Space source, and number 001 is
the MARK value required.
<<<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<<<<<<
PATCH(SS006INT,INIVAL,1,NX,1,NY,5,NZ,1,1)
VAL=1.
INIT(SS006INT,PRPS,0.,GRND)
>>>>>>>>>>>>>>>>>>>>>>>>> Comment begins >>>>>>>>>>>>>>>>>>>>>>>>>
Initialization of PRPS field by unity over all cells having MARK
value equal six.
<<<<<<<<<<<<<<<<<<<<<<<<< Comment ends <<<<<<<<<<<<<<<<<<<<<<<<<<
SPEDAT(SET,MATERIAL, 40,L,T)
SPEDAT(SET,MATERIAL, 1,L,T)
GROUP 15. Termination of sweeps
LSWEEP=1
GROUP 23. Print-out & plot control
PHOTON USE
p
msg
msg
msg All examples which follow are assembled as different slabs
msg and number of slabs of one 3D domain called
msg
msg INITBOX.
msg
msg The series of PHOTON plots will follow.
msg
msg They illustrate some of the existing initialisation
msg techniques available in PLANT.
msg
msg The presentation covers:
msg
msg * Flow field initialistions by parametric analytics
msg * Manipulating with initial fields
msg * MARKing sub-domains to create arbitrary initial fields
msg * Geometry initialisations
msg
msg Hit enter to proceed to 1st slab.
msg
pause
clear
vi z
set vec ref 25
vec z 1 sh
msg
msg
msg The 1st slab of the box is initialised by stagnation point flow
msg
msg Hit enter to proceed to 2nd slab.
pause
vec off;red
vec z 2 sh
msg
msg
msg The 2nd slab is initialised by solid body rotation flow
msg
msg Hit enter to proceed to 3rd slab.
pause
vec off;red
vec z 3 sh
msg
msg The flow in the 3rd slab is constructed by adding the
msg velocity distributions of 1st and 2nd slabs.
msg
msg Hit enter to proceed to 4th slab.
pause
vec off;red
con mark z 4 fil;.001
set vec aver off
vec z 4
msg
msg
msg
msg
msg
msg
msg
msg
msg
msg
msg
msg
msg
msg
msg
msg
msg
msg
msg The flow in the 4th slab is constructed by making use
msg the different distributions across specifically MARKed
msg regions so as to have better accord with imposed geometry.
msg
msg The latter is generated by PLANTed geometry functions.
msg
msg Hit enter to proceed to 5th section of the box.
pause
* gr z 4
gr off;vec off;con off;red
vi 1 1 1
con prps z 24 x 21 40 y 1 m fil;.01
con prps x 20 y 1 m z 25 44 fil;.01
msg
msg The 5th section of the box occupies 40 slabs.
msg
msg It illustrates the construction of 3d geometry visualised
msg by PRPS surface.
msg
msg The PRPS values are initialised to follow the distribution
msg of MARK values.
msg
msg PRPS surface is being generated.
msg Please, wait ....
surf mark x 5.99
msg
msg Hit E to finish.
ENDUSE
STOP