Input file: nodelines.i

Code reference: subroutine nodelines, subroutine Nnodeline_xy in file moz.grids.lib.f

Function: nodelines.i is a plain text file which defines nodelines; i.e. a set of interfaces in the Eulerian grid. [need better definition of "nodeline"; need a definition of "interface".]

Variable(s)

Description

itempr

Template number - a number which identifies this template

idoc

Number of lines of documentation which follow.

Mozart will read and discard the next idoc lines. This allows a user to provide some comments in the input file which will be ignored by Mozart.

[idoc lines of documentation]


idoc

Number of lines documentation which follow. (This gives the user another comment section.)

[idoc lines of documentation]


ipmode

Processor mode number

If ipmode > 0, then ipmode = number of the processor which should execute this template.

If ipmode = 0, then all processors will execute this template. This is known as "peer mode".

idoc

Number of lines of documentation which follow. (This gives the user another comment section.)

[idoc lines of documentation]


nodeline_i

mesh_i

nodeline_i = nodeline number for which this template applies

mesh_i = mesh number for which this template applies

ilines

number of lines to skip over if this processor is not using this template

nodeline_type

type of nodeline; 1 = tensor product

nodeline_nx

nodeline_nheight

number of nodes on each interface [ IMPORTANT: this must match with the nx of your Eulerian grid! ]

number of interfaces

[line of integers, nodeline_nheight of them]

each of these integers defines the row in the Eulerian grid which corresponds to each interface; i.e. the first integer is the row number for the first interface; the second integer is the row number of the second interface; and so on.

idoc

Number of lines of documentation which follow. (This gives the user another comment section.)

[idoc lines of documentation]


node_i

nodeline_xor

nodeline_yor

nodeline_glength

nodeline_gheight

number of the node (as defined in Synode.01.i) that you are going to transform

x origin of nodeline

y origin of nodeline

global length of nodeline

global height of nodeline

idoc

Number of lines of documentation which follow. (This gives the user another comment section.)

[idoc lines of documentation]


The following input lines are repeated nodeline_nheight times; i.e. you need one set of these input lines for each nodeline.

ifct

nvs

function type used to shape this nodeline [need list of function types here...]

number of parameters that define the function type

idoc

Number of lines of documentation which follow. (This gives the user another comment section.)

[idoc lines of documentation]


xtemp(i), i=1,nvs

parameters for the function specified in ifct above

NOTE: The functions for the nodelines will define a delta y, not an absolute y, to be applied to the corresponding row in the Eulerian grid when used for doing a geometric transform of the E grid.



Example file:

1 ! nodeline template
0 !nodoc
0 !nodoc
0 !peer mode -->
31 ! nskip
0 !nodoc
1 0 ! nodeline mesh
0 !nodoc
1 ! type (1=tp)
53 3 !nx nh
1 15 51 ! ih note: nodeline_node  makes nodes/interface 1 earlier than 2 etc
1 !doc
 node_i ... deformation of mesh xo yo  gl gh
1 0. 0. 8. 1.
1 ! doc
for each interface in order :
10 12 ! fct type  ----------> interface # 1 (iy=1)  # parms needed
4 ! doc
2 half gaussians :
C1:   if(X.ge.p1)Y=p5+p4*dexp(-((X-p2)**p6)/p3)
C2:   if(X.le.p7)Y=p11+p10*dexp(-((p8-X)**p12)/p9) notice the reversal of sign
enter p(i),i=1,12
2. 2. .2 .0 0. 1.   2. 2. .4 .0 0. 1.
2 5 ! fct type  ----------> interface # 2 (iy=15)  # parms needed
3 ! doc
1 cos :
C1:   if(X.ge.p(1))Y=p(5)+p(4)*dcos(2.d0*piv*(X-p(2))/p(3))
enter p(i),i=1,5
-1 0. .2 .0 0.0 
0 15 ! fct type  ----------> interface # 3 (iy=51)  # parms needed=3+4*nsegments
4 ! doc
0 piecewise linear :
C1:   for X in [p(1),p(2)] linear interpolations in p(3) segments
each segment entered (consecutively in p as ) ...xleft,yleft,xright,yright... 
enter 3+4*npoints values . repeat values for left right matching
-10 10. 3   -1. 0. 1. 0.   1. 0. 2. 0.    2. 0.  9. 0.      
0 !end template