> []Zw`bjbjss.`P+RRRf((((^)\fU2)$****K="m=y=.U0U0U0U0U0U0U$WhYTUQR=)="K===TU**?UEEE=l"*R*.UE=.UEE
RhrRFS*)(%Q(ArR.UU0UR1ZDf1Z FSFS1ZRZS==E=====TUTUE===U====fffd"(fff(fffCellFlow: An ndimensional CFD program
G. Westendorp
June 2003
Last change: may 2008
0. Introduction
CellFlow is a CFD (=Computational Fluid Dynamics) program. The idea is to calculate quantities like velocities, pressures and temperatures by computer. This is done by discretization: chopping up a geometry into cells, and then solving the finite set of equations for these cells.
The main features of CellFlow are:
1. It is free.
2. It is Ndimensional
On the one hand Cellflow is intended to be a quick engineering tool in 1 or 2 dimensions, but it can handle any number of dimensions. I was curious what would happen in 4 dimensions and higher, so I built in a flexible number of dimensions from the start.
3. Input by spreadsheet.
The preprocessing is intended to be done in a spreadsheet, and exported as a tabseparated text file with extension .GMT. (GMT stands for geometry)
4. Explicit time dependency.
Cell flow is a simulator: At each time steps, all variables are known, and the variables for the next time steps are calculated using explicit equations. No equations are solved implicitly. Unlike most CFD codes, CellFlow uses compressible flow, so the continuity equation is explicit.
5. Physical discretisation
The idea of physical discretization is that the discretization is not just a mathematical method, but the discretized system can itself be considered a physical system. So for example when there is a flow between two cells, we consider a bucket of size [mass flow]*[time step] of the contents of the upstream cell to be emptied into the downstream cell. The result of implementing this philosophy is that we will get a transparent program, where each calculation can be interpreted in terms of a physical event.
1. Getting started
To start the program, run CellFlow.exe. First you need to import a geometry, by using the corresponding button. The geometries are specified in *.gmt files. You can use an existing example, or generate a new one by using a spreadsheet program like Excel (see section 3). If you press Recalc, the program will start simulating.
1.1 Interrupting the program.
When simulating, the buttons tend not to respond very smoothly. To interrupt the program, for example to change the display options, it works best to click the close box in the corner of the window. Instead of closing the window, CellFlow interrupts. If you chose Cancel/Pause the program will allow you to more do change options. When you are ready, press Cont.
1.2. Save/Recall.
After having imported a geometry, you can save and recall states, so that you can continue from where you left off earlier. Also, you can use the _State file, which is tabseparated ASCII, to analyze the data. The _out file is a smaller data file which corresponds to the viewed data only.
2. Principles
2.1 Time iteration
CellFlow works using explicit time dependent dynamic equations. In many algorithms for incompressible flow, you have to check if the incompressibility criterion is met for each cell; i.e. if the net flow into the cell is zero. This is a noncausal process; all cells may depend on all other cells at each moment. CellFlow uses compressible flow, so the net flow into the cell need not be zero. At any time, there can be an arbitrary field of velocities and pressures, which completely determine the velocities and pressures of the next time step. This means that once you have an initial flow, there is always a solution for flows at later time. The reason this works is because it is the way nature works. Nature does not check criteria; it just evolves according to causal laws. Another advantage of this method is that you do not need a turbulence model to account for timedependent fluctuations in the flow, since all timedependency is modeled explicitly.
An apparent disadvantage that this approach has is that you are forced to use time steps smaller than the fastest process in the problem. If there is at the same time also a slow process in the problem, then you will need a lot of time steps. This situation can for example occur if you have a metal heat exchanger with a gas flow. The gas flow will stabilize in a few milliseconds, but it may take hours to heat up the metal of the heat exchanger. The solution is to change parameters that you are not interested in anyway. In this case, you would change the heat capacity of the metal by a few orders of magnitude, so that the heat exchanger will heat up very quickly. This may seem artificial, but other solvers really do much worse things, like all together ignoring time dependent effects. Cellflow does things explicitly in terms of physical concepts that other codes do implicitly, thereby letting you realize better what assumptions your model is using.
Note that in reality, there may be flow structures smaller than the smallest cell. The size of smallest flow structures can be found using the HYPERLINK "http://en.wikipedia.org/wiki/Kolmogorov_microscales" Kolmogorov length scale. However, this length is often very small. So you need to find tricks to incorporate them without simulating them explicitly. CellFlow doe not do this. So if your problem has a high Reynolds number and depends on details of turbulent properties, CellFlow is not a good program. (Maybe I will improve it some day)
2.1 Cell structure
Space is divided into cells. Each cell has an index number, or ordinal, n.
The cells are indexed in an Ndimensional hypercube (i, j, k, ). A 1 or 2 dimensional hypercube is naturally represented in a spreadsheet. Each cell of a spreadsheet corresponds to a cell in the geometry. All parameters can be specified per cell. Default parameters are specified in a line preceding the geometry. If no Default is specified, the program uses a DefaultDefault. A nice thing about spreadsheets is that we can conveniently use copy/paste methods to paint our geometry, using colors as visual aid, and we can use the calculation facilities and macros to aid the preprocessing.
To build higher dimensions, we use layers. The layers are appended underneath each other.
Cells are not necessarily of equal size.
The idea of Cellfow is based on HYPERLINK "http://www.xs4all.nl/~westy31/Electric.html"electric circuit equivalents.
All extensive quantities (mass, heat, etc) are thought to be integrated over the cell, and then positioned at the vertex of the cell. The edges interconnect the vertices, so all transfer coefficients are at edges. Flow quantities are special, because as the agent of convection, mass flow is located on the edges, but is also proportional to momentum, which can itself be convected. In fact, the factor that converts from momentum to mass flow, can be thought of as mapping at the same time from vertex to edge: Momentum is an extensity variable, which scales with volume, while mass flux is a D1 chunk(See HYPERLINK "http://www.xs4all.nl/~westy31/Electric.html"electric circuit equivalents)
2.2 Dynamic variables
Each cell has a number of extensive variables, that are usually conserved:
Mass (Mols of species j)
Momentum in dimension i
Energy
The extensive variables completely determine the state of the system.
2.3 Intensity variables
From the extensive variables and geometric variables, a set of intensive variables are computed. Typically these include
Temperature
Pressure
Velocity
Density
These variables are in a sense just auxiliary variables; they could in principle be left out. But they represent variables that the user generally likes to see as output, and they are useful in facilitating calculations.
2.4 Dynamical equations:
Each cell is connected to other cells. The default connectivity is that in each dimension, a cell has 2 neighbours, unless it is at the boundary of the model. For example, in 2 dimensions, most cells have 4 neighbors: left, right, upper, lower.
To facilitate notation, we call the 2 neighbors in each dimension (n) the inc_n and the dcr_n, the incremented and decremented neighbors respectively.
Figure 1: Cell structure in relation to neighbor. The cells are in a rectangular grid, but a neighboring cell need not be the same size. An imaginary wedge shape interface can then be though of as being between 2 unequally sized cells.
So we have in effect a rectangular grid. The distance to the next neighbor in dimension (i) is dd(n,i).
The hypervolume (V) of the cell
EMBED Equation.3
Note that this implies that the coordinate of the cell is in the decrementing corner of the hyper rectangle, not in the center.
There are normally 2*D sets transfer coefficients to neighboring cells connecting to each cell, but only half of them belong to a cell. The other half belong to the respective neighbors. The ones that belong to the cell can be calculated from the cell properties, those belonging to a neighbor must be calculated using the neighbors properties. For example the transfer coefficient for thermal conduction is:.
EMBED Equation.3
This will be used to generate a contribution to the change in energy:
EMBED Equation.3
To calculate the heat flux from the decrementing neighbor, we have to use the transfer coefficient from the decrementing neighbor. The convention is that the flux belonging to a cell goes on the incrementing side.
So for the decrementing neighbor, we have to use the transfer coefficient belonging to the decrementing neighbor, instead of the to the cell itself:
EMBED Equation.3
Viscosity and diffusion work identically to thermal conduction, with momentum and species being the respective transported quantities. Note that momentum is a vector quantity: All N components are diffused independently.
EMBED Equation.3
EMBED Equation.3
A slightly different equation is momentum change due to pressure gradients. The difference is that we have a driving force located on vertices and a changing quantity located on edges. So the indexing is different.
EMBED Equation.3
Next, we have advection. Advection is more or less the same as convection. It is the transport of quantities that are carried with the fluid as it moves.
If we imagine the cell that our mass to is stored in as a containers, we can imagine convection as a bucket containing an amount of mass equal to [mass flow]*dt. This mass is transferred to the neighbor.
But we have to be careful with the direction here. If the mass flow is negative, then the mass is taken from the neighbor. This is not the same as taking a negative amount of mass from the present cell, because the quantities
This is a subtle difference, but as I found out long time ago, doing it wrong leads to numerical instability, that will ruin the program.
3. Geometry files
3.0 basic structure
A geometry is specified in a tab separated file.
The xdirection corresponds to columns, the y direction corresponds to rows. Other dimensions are defined by making layeres of xyplanes.
Even if you have a 1 or 2 dimensional problem, you must still define a layer, by using an Lin the first column of a row. This row is not part of the geometry. So the
Cells are sandwiched between L markers. If you have more than 3 dimensions, you put a number behind the L to define which dimension is terminated at that layer.
In each cell of the input, an instruction can be specified for that cell. If the cell is before the first layer, then it is interpreted as a default for the entire geometry.
Each cell contains codes, separated by colons. A code contains a 2 letter code, followed by 1 or 2 numbers separated by semicolons. For example
DT0.001:NT1000
Specifies that thwe timestedp (DT) is 0.001, and that the number of step (NT) is 1000.
3.1. List of Codes
This list may be incomplete, it is constantly expanded.
NTxx Set Number of time steps to xx
DTxx Set dt (time interval) to xx
UTxx Set screen output update time interval to xx steps
STxx Set auto save interval to xx steps (default 10000)
FTxx Set bitmap generation interval to xx steps (default 10000000)
LTxx Set log time to xx
TRxx Set Set Rampup time for Ramped boundary conditions. Xx is the number of time steps that the boundary value is ramped up from zero. This facility is made to prevent shockwavelike instabilities that can occur if a very steep change in conditions is applied. It is used in combination with the WV specifier (WVvalue is set to 2)
DDi;xx: Set the space interval of the cell in dimension abs(i) to xx. If i < 0 then the instruction applies to the entire hyperplane that has the same xxordinal as the cell.
If i = 0 then all dimensions are implied.
HHi;xx: The height is an extra dimension that is always one cell big, but allows a variable volume. Typically, you need this to emulate cylindrical coordinates, where height = 2Rd.
xx is the height (default is 1.) If i < 0 then it indicates that specification applies to the entire hyperplane hyperplane that has the same xxordinal as the cell.. This would be used in defining cylindrical coordinates, you want all cells for the same radius to have the same height, so you would specify:
HH1[2Rd]
SAxx set MaxScale to xx
SIxx set Minscale to xx
SWxx set WhatDisp to xx
SDxx set DispDim to xx
GGi;xx set acceleration of gravity in direction I to xx
NSxx set nspecies to xx(must be place in header section)
CPxx set heat capacity Cp to xx
ETxx set dynamic viscosity eta to xx
RHxx set density rho to xx
LAxx set heat conductivity Lambda to xx
RRxx set porous media resistance R to xx
WV[i;x] (Wall in direction i) Keeps standard velocity in direction i constant by supplementing the momentum accordingly. (Standard means a correction for nondefault density. So v_std = v * rho/rho_std ) If x = 0, then there is no wall (=default). If x < 0, then velocity is held constant, but convection along the iedge of de cell is allowed. If x > 0 , then velocity is held constant, but convection along the iedge of de cell is disabled.
A wall with x>0 would typically correspond to a physical wall, or a cell with nonfluid material.
A wall with x< 0 can be used in combination with the VVspecifier, to apply a constant standard velocity.
If the index (i) is set to zero, then all directions are simultaneously implied.
If a wallvalue of 2 is specified, then the cell on the decrementing side of dimension I is made 1, and after that the wallvalue of the cell itself is overruled as 1. (This is because often you want a cell to have walls on all sides, and it is often irritating that the wallspec on the decrementing side must be specified in a neighbouring cell.
If a Wall value of 2 is specified, the applied velocity is ramped up over time. The number of timesteps is specified with the RTspecifier. (At the moment, only a single global RT is possible for all ramped boundary values)
WT1: (Temperature Constant) Keeps the temperature constant by supplementing the amount of energy in the cell accordingly. The amount of mass and momentum is scaled in proportion, so that pressure and velocity are not influenced.
WP1 (Pressure Constant) Keeps the pressure constant by supplementing the amount of mass in the cell accordingly. The amount of energy and momentum is scaled in proportion, so that temperature and velocity is not influenced. The optional parameter x is the pressure. If left out, the default value is taken. Note that this cell does not conserve mass. For this reason it is often place on the geometrical boundary, where mass is thought to flow in and out of the system under consideration.
CCi;xx set Concentration of species i to xx. Gives a constant concentration in conjunction with WP1.
VVi;xx set initial velocity in direction I to xx. Gives a constant velocity in conjunction with WT1.
TTxx set initial temperature T to xx. Gives a constant temperature in conjunction with WT1.
PPxx set initial pressure p to xx. Gives a constant pressure in conjunction with WP1.
FFi;xx set external force F in direction i to xx
GPi;xx set GlobalPar(i) to xx. Used to pas numbers to user implemented special routines.
4. Boundary conditions
At the edges of the grid, there is no neighbor, so no transport.
If you want transport across an edge of the grid, create an extra layer off cells, and make the cell nearest to the edge a constant intensity cell. This effectively makes it a sink or source, since cell flow will adapt the extensity variables to keep the intensity variables constant.
Because CellFlow assumes edges on the incrementing side of vertices, the nearedge of the grid will automatically have no edges protruding out of the grid. On the far edge of the grid, is similar situation is imposed automatically by CellFlow by setting the Wallvariable of those cells to 1.
SHAPE \* MERGEFORMAT
Because edges of a cell are on the incrementing side of vertices, there is an asymmetry in making a velocity source on the incremented or the decremented end of a grid. You need a WP1 on the upstream vertex of a velocity source, to make up for the mass that is pulled out of the upstream cell. On the decremented side, this is in the same cell as the velocity source, but on the decrementing side this is one cell incremented. (see picures below)
5. Display/output
5.0
The display is mostly self explanatory. See section 1.1 for interrupting the program if the buttons are not reacting well to mouse clicks.
5.1. Vector plots
The Minscale is a factor that converts velocity to coordinates. The bigger Minscale, the smaller the arrows get.
The Maxscale is the maximum length in pixel of an arrow ( longer ones are truncated)
5.2 _State file
The program first prints the number of cells (To check if it is the same, when using Recall)
Then it prints 3 rows with the number of timesteps.
It then prints all layers, with quantities:
Extensity (used for recall)
Momentum in each direction
Heat
Mass per specie
Intensity
Standard velocity
Temperature  273.15
Concentration per specie
5.3 interrupting a very large problem.
If you build a very big problem, using up most memory of the computer, the program is difficult to interrupt. To help stop the program in due course, you can edit the file checkstop, and put a 1in it. Cellflow reads this file every timestep, and halts if there is a 1. I made a small application StopCellFlow for this.
6. Convergence speed and time step
Problems that take a lot of iterations to solve generally have 2 times scales that are far apart. The slow time scale forces you to simulate for at least several times the slow time constant, but you cannot use time steps greater than in the order of the small time scale.
When you are interested in the static solution, or the dynamics at a relatively large time scale, you may want to artificially suppress the fast dynamics, so that you can increase the time step.
6.1 Increasing the flow relaxation time scale
If you need the flow just for an approximate convection carrier, you may not care about pressure drop, and perhaps not in details of vortices. In other words, a potential flow would be OK for your problem. In that case, damping can be introduced by a friction factor, using RR.
6.2 Increasing the acoustic time scale.
Often you are not interested in the acoustic time scale, so you want to use larger time steps than required by the acoustics.
Roughly, the stability criterion for acoustic time scale is:
EMBED Equation.3
The time step should not be larger than the time it takes for sound to travel the distance of a cell. To reduce the speed of sound, without influencing the static temperatures, relative pressures and density, we can alter the gas constant (R):
EMBED Equation.3
To alter R, we can alter p0, (Using PP in the header) since usually we are only interested in relative pressure, not in absolute pressure. (To alter , we would change dynamic pressures in the flow, which is often undesired).
But p0 should not be lowered below the typical dynamic pressure drops. So,
EMBED Equation.3
And take into account pressure drops due to friction:
EMBED Equation.3 '?UVftxz
* +
R
4ABac}}u}hmH sH hwcmH sH hPsmH sH hLdmH sH hX[mH sH hUmH sH hrBhrBmH sH hrBmH sH hCmH sH h`mH sH hUhmH sH h2_mH sH hmH sH h mH sH hGmH sH h\mH sH h\hg.'5?UVf
~6gdw1gd
0agdUgdLdΕ}YZq
56
!)6MZb.ͷͯͷͷzrjhmH sH hzmH sH h\>*mH sH h\mH sH hgmH sH h
0ahup5\mH sH h
0ah
0a5\mH sH hw1mH sH hUmH sH huphup5\mH sH h
0amH sH h
0ah
0amH sH hmH sH hR#mH sH hupmH sH hrBmH sH &67U
!* ~ 9#:#<#gda gduXgdzgdupgdUgd
0a56<56wxy'(FG $ % \ ] ^ غ̭إthtVh#jh}h$UmH sH jh}UmH sH h}mH sH h mH sH huXhuX6]mH sH hU6]mH sH hUmH sH h\mH sH hzhz0JmH sH #jhzhXzEUmH sH jhzUmH sH hzmH sH hQ}{mH sH hZ+mH sH hBmH sH h~0mH sH ^ z { ""###6#7#8#9#:#;#<#=#S#w###$6$^%_%%%f&k&&&'''
''ñˤÜߐ߀xpxxh\hh#h#6mH sH h#mH sH hMmH sH hgmH sH h mH sH h\mH sH huXmH sH huXjkh}Uh}h$0JmH sH #jh}h$UmH sH h$mH sH jh$UmH sH ha mH sH h}mH sH jh}UmH sH h}h}0JmH sH #<#=#S######$$6$$$$$$$$%%%&&['\'^'_'K(L(gduX'''!'M'Y'\']'K((((((((((((((.):);)A)))))
++++ +!+j+k+~++폁rj겉B
h\CJUVaJjh\EHUmH sH j_B
h\CJUVaJhQ}{mH sH jh\EHUmH sH jMB
h\CJUVaJjh\UmH sH h\jh\Uh{fO]mH sH hUh]mH sH h\mH sH h\6]mH sH 'L((((m)n) +
+"+#+i+j+++Y,Z,\,,,
...^gduX`+++,<,>,Y,Z,[,\,,, .......ݽݣݍugXj82D
hgCJUVaJj0h\EHUmH sH j=ّB
h\CJUVaJhuX6mH sH hwcmH sH jh\EHUmH sH jB
h\CJUVaJh{fOh\mH sH jh{fOUhLdhbi>*mH sH hLdh\>*mH sH h\mH sH jh\UmH sH jh\EHUmH sH ....'.1.9.=.f.h...../ /
///$/111112,2.26272822ڲژ}qh_h_V_huX\mH sH hw1\mH sH hM\mH sH hBhB\mH sH h\5mH sH huX5mH sH hLd5mH sH h^5mH sH !jc6hwchwcEHUmH sH j:H
hwcCJUVaJhwcmH sH h\>*mH sH h^mH sH h\mH sH jh\UmH sH !jm3hghgEHUmH sH .../
///t0V111128222l3444O5P5b5c5555
6gdBgdw1gduX`2223c3e3g3l33444 4$4)4e4h4444N5O5b5c56
66666#6)66365666R6U6W6X6\6c6666ƾƖ{{h>>gd7gd~gd^gd>">$>%>&>8>:>@>C>E>I>J>\>_>f>h>j>n>o>w>z>>>>>>>>>>>>ְֻhTh (mH sH hThGmH sH h7mH sH hTmH sH hTh+mH sH hTh~mH sH h&9*mH sH hHhHmH sH hGmH sH hHh~mH sH h~5mH sH h!k4hGmH sH h!k4h~mH sH 2> >A>f>>>>>@@`AACCCDDFF+G,GGGGHHyHzHgd (gd4Agd7gd}gd~>>>>>>>>??@@r@s@AACCCCDDEEFFFFFFFFFGG*G+G.GǻǲǦǦǛǓuj__hTh4AmH sH h4Ah4AmH sH hThGmH sH h76]mH sH h7mH sH h4AmH sH h<h}mH sH hQh}6mH sH h}6mH sH hZ+h}6mH sH h}mH sH hTh}mH sH h~mH sH hTh (mH sH hTh~mH sH hTmH sH %.G0G6G7GWG\G]G^GGGGGGGGGGGGGGGGGHHCHEHFHGHHHJHKHNHRHSHbHcHdHtHxHyHzHHHHHHϼϱϼϱϼߩߝh (h~mH sH h (h (mH sH h (hmH sH h~h~5mH sH h&9*mH sH hTh7mH sH h4AmH sH h7h7mH sH h7mH sH hTmH sH hTh~mH sH hThGmH sH hTh (mH sH /zHHHHIJJKJpKKPMQMSMTMVMhMlMMM
NNNNNCOwOOOgdgd7gd$HHHHIIIJJpKqKKKKKKKPLXLYL_LOMPMQMRMSMTMUMVM`M¶{{plaVHhh5\mH sH h7h^mH sH jxh7h7Uhjvh^h^Uh7h76]mH sH h7mH sH juh{fOh{fOUmH sH jh{fOUmHnHuh{fOmH sH jh{fOUmH sH h\mH sH hbimH sH h$mH sH h^mH sH h\mH sH hZ+h\5mH sH hLd5mH sH `MgMhMlMMMMMM N
N=NzNNNAOBOCOOOOOOPPP)P7P>PfPQQQQQQQQbRjRRǼǩנzrjrh`mH sH h`mH sH h"mH sH h`5mH sH h`h,5mH sH hLd5mH sH h5mH sH hmH sH hhmH sH hhmH sH hmH sH h$mH sH hmH sH hOmH sH hhUh5\mH sH h5\mH sH (OOOOOOP%P>P?PfPQQQQRRSSSTTUUUUUgduXgd,gd^gdORbSnSSSSSSTTTUUUUoUpUUUUUUUUUVVVVVVǿ{o`j+wG
hCJUVaJh^CDh^CD6mH sH !j\{h^CDhTy0EHUmH sH jG
hTy0CJUVaJjh^CDUmH sH h^CDmH sH hLdmH sH hmH sH h`mH sH huXh`\mH sH huXmH sH huXhuX\mH sH h\mH sH h&9*mH sH h,mH sH UUVVVVX2YbYdYYY)*\tΕԕՕەܕgd{fOgdX24gduXgdTy0`gdTy0gd^CD`gd^CDgd,VVVWWW5WWXX$XXX$Y0Y2Y4YZY\Y^Y`YYYYYYZھھڪƪƏ~ƞo^\ThmH sH U!jhTy0hTy0EHUmH sH j_G
hTy0CJUVaJ!j_hTy0hEHUmH sH jG
hCJUVaJjhTy0UmH sH hamH sH hh6mH sH hmH sH hTy0mH sH hhH*mH sH h^CDmH sH jh^CDUmH sH !j}h^CDhEHUmH sH
6.3 Increasing the Thermal time scale.
The stability criterion is approximately given by
EMBED Equation.3
If we consider static thermal distribution in solids, then rho and Cp are not relevant, so for example Cp can be lowered.
If we look at fluids, then Cp can not be changed, because it would change the ratio of convection versus conduction. But the Cp of walls may be altered without effecting the static solution for the temperature distribution.
WV1;1
WV0;1
WV1;1
WV2;1
WV2;1
)\]pqrstb͕ΕԕՕەܕͼ𨤨h\h{fOhmH sH hX24mH sH !jhTy0hX24EHUmH sH jG
hX24CJUVaJjhTy0UmH sH hTy0mH sH h`mH sH huXmH sH ܕgdX24gd{fO,1h. A!"#$%DyKyKhhttp://en.wikipedia.org/wiki/Kolmogorov_microscalesDyKyKXhttp://www.xs4all.nl/~westy31/Electric.htmlDyKyKXhttp://www.xs4all.nl/~westy31/Electric.htmlDd
D
#A
#"`"b_t= >
#
*@=
b_t= >
#O.8kG
U,
x\}pTwf?Ȇd7Z!%Rvh% A X44nZZVLδL֎fIIt$U.S똩9e}y۲q3g}sϹ}/1 h.P
ƶs~Y؇.ؗgk\gw1q 1&CϽdH:`kP! Gס) ºˁd'+e^
}hF!ReK̔9r1*gYVE
J*PL #p!5cm+ykիs9wX6 lǅ_*>DD/Y7W5ɌfAD($>+C?ZO/C
]MT'Kk놶srs0j(ꨟ:jb7ameAz8KmdUUƂy1vKNJ5qfଁ}lR+Q,w?%^kcPv!wwɇW
6C׀.'* G#Zcf6uTha {$^t:::^uVGz0__ԮM!7rm[4_X!L].o9p5i>9˷.;bڒWCR9eX,d~eck,FrX洈e982ԕ XV,4XQrU/NOXupfƋfWl?JzS!OP I*ݦ`,HݺJK:~t ?M1r9OΩupN;kf"an)xM0NI9^?<%ss^s>Q.&9 .yp+[^!3D8ᜓt0A (!:9h9zFlDˎsp*Ip2wVwƐqN?P?)oA>(T#CV**8KPa3ߪ*c9(Us+f;s~8G})D2'Fral,*0כaPW}Ye3t?*\FpD%:}/9u\d=HXnk~V^'_~u 'O3mv<{9}n
s~N'sRXOuj&S6h8'6~(P'u RlSgO&z.sjs:uCcYb_݊Z[QkxX9hP\;[kU0t9:`xX\`,9pa}tq6Z݇(7>9(眥~XE.#ayfSW`w9#@`,H#ˮs^Oz.j^59(h~Ng8Cr8@ۿj[A5sms\_
t[ݝkm7q
i43q=GglS҃3S剣t3Tmj{K<Q=f\mҕ=~uvO')<}`Urr;T>x!$583%
HgKuCYCeU_9⌻YYmrOዻi9WڿǵԢ^4<uN3R?%uRͤU?ͤWy=iC۠y3/Scs2<dP@P[Gme*n>1pGsDD~FX!ָ ^7"y0k2ǣ^ek"/XIcߋANmkزe!NꞀbewb@c9S9;2䩠.FrcyWLr61
Xa^iX23twq?H9;fI{ZMmV鵬V.X;.Z'ѱCӎeeM(>cD;)/H!
rmV Y]yhdԫ41SmZZfxlz`Y1\oOy!,3?i r^^]/9WH(=%T*Â\mS_(ޮhr~~Q.Mϛ5.YfBрu91`RPhЪVYt{Bzbڹrغ&/Ƞ^$kqcg>U
(鹂̞>^ca۾IDdIn=p٣AcHȱ8.zE
^Wm~o<28yk8VT8V}eK?LIGI˾IORz՚w>4)ZS{#>W[{TLg5{ro=96zS"qsiqnz9Vqb#.&ˉqqyzʈbPq49nf;&w8wy/ӯX7gi>}&%fNZ6sc\iװg#4)ay,:oDd
{>
#A ""ə~DY=Sq*@=ə~DY=S/O+xX]lTE>غ
1ESISZ_
RE*4
hFJH1!є%$FƠ1ⓉJeνɽRw:3s cD&UqU"FjqHH]@f[ϡ[/JrӀuCsF/ĞfLel
/BS˟7dniB?W}u(mVʇk;ؿ1ս}klc{۳f_aC;dZt={`geZ~\oEFD;{B\>>No+,74ظʱ6N\㺬MM:we}
~IMAMr:W^cIoRZҤpf^B\h5s>2 mfu&z~'gW0V*1
_vZh@*'>K\CYn`:ʭs7pm'SXZszhn_쒅r,Z`;^gK֏xdʽ.i=LVKn`._mRםAU8#T*lXE$_?*YsNJU*=M:wkwmrjKrRRN3uh99L2:$:Ujz/65{OMt~O9OzO6ѧ%y1OڧjVb!?hTp
\vl6G.#NnWI7&ܫu?j'+'!on ecZ>y1_"l+¶"*1>yg)Az
kv/Ͼ4&&*$ϐ}yٖmyu{a9~%A777r%f07:he=80!w"#s2E?vļrX}/9_ܲO9u\ǽho҃Dd
J
CA
?"2{*ȢͨC}>"*`!{*ȢͨC}>":`
Pxcdd``eb``baV d,FYzP1n:n! KA?H1ZXzjxK2B*R1
@201W&0;V
!"#$%&'()*+,./0123456789:;<=>?@ABCDEFGHIJKLMOPQRSTUVWXYx\_`acbdefghjiklmnoqprtsuvyz{}~Root EntryA F0Q^Data
NWordDocument@.ObjectPoolC(%Qf%Q_1116336717 F(%Q(%QOle
CompObjjObjInfo #$'*+.12369<?BEHKNQSTUVWXY[\]^_`abcdefgi
FMicrosoft Vergelijking 3.0DS EquationEquation.39q\(h
Vn()=ddi,n()i
"
FMicrosoft Vergelijking 3.0DEquation Native x_1116336735F(%Q(%QOle
CompObj
jS EquationEquation.39qtl
atn()=n()Vn()ddi,n()2
FMicrosoft Vergelijking 3.0DS EquationEquation.39qObjInfo
Equation Native
_1116320490F(%Q(%QOle
CompObjjObjInfoEquation Native _1116320535F(%Q(%Qh,Q
dQn()dt=dQn()dt+atn()Tinc_n()"Tn()()
FMicrosoft Vergelijking 3.0DS EquationEquation.39qOle
CompObjjObjInfoEquation Native hw
dQn()dt=dQn()dt+atdcr_n()Tdcr_n()"Tn()()
FMicrosoft Vergelijking 3.0D_1116854589'F(%Q(%QOle
CompObjjObjInfo!S EquationEquation.39qg
amn()=DVn()ddi,n()2
FMicrosoft Equation 3.0DS EquationEquation.39qEquation Native "_1144141840F(%Q(%QOle
%CompObj &fObjInfo!(Equation Native )_1219658298$F(%Q(%QOle
,}
avn()=n()Vn()ddi,n()2
FMicrosoft Vergelijking 3.0DS EquationEquation.39qCompObj#%jObjInfo&/Equation Native 0_1203411899,1)F(%Q(%Q
dmvn()dt=dmvn()dt+apn()pn()"pinc_n()()
FMicrosoft Vergelijking 3.0DS EquationEquation.39qOle
4CompObj(*5jObjInfo+7Equation Native 8prTM
dt<dxc=dx
RT
FMicrosoft Vergelijking 3.0DS EquationEquation.39qr8(
R=p0
RT_12034025396.F(%Q(%QOle
:CompObj/;jObjInfo0=Equation Native >T_1203416480;"3F(%Q(%QOle
@CompObj24Aj
FMicrosoft Vergelijking 3.0DS EquationEquation.39qr4x+
p0
>v2
FMicrosoft Vergelijking 3.0DObjInfo5CEquation Native DP_12034118078F(%Q(%QOle
FCompObj79GjObjInfo:IEquation Native J{_1203412192=F(%Q(%QS EquationEquation.39qr_pnM
p0
>vRstreamline
"
FMicrosoft Vergelijking 3.0DS EquationEquation.39qOle
LCompObj<>MjObjInfo?OEquation Native PjrN&<
dt<dx2
Cp
Oh+'0 0<
\h
t'CellFlow: An ndimensional CFD programWestendorpNormal.dotGerard Westendorp21Microsoft Ofqs>Z.
300
dF\ը$.'1H2Ь$ҝqb.#\mL{{/~!νJY@F\{]s&OfPs
MVKWMc ν, 21K 2!Ɵobe3<8_Kw']:)\\Ή`cyLλLLJ% "CX1YAh9z0߫Dd
4J
CA?"29ZS)gbLOMv*`!
ZS)gbLOM
@Xxڥ+Q=?,kI2(yxʣve]Ry?CMȾa%tin,_i~]ß,nGoV_cyɢQ~8 kU,ou&xL0u5mW~FKAF܉Rc0]`b^,WɼmNs%gobAͷVjC{u{oɩ3q6Uv2?xU}TCzF,vF>U,:~Cmxu
Ͼ}IF#.;.8ND]ؑqV%zޱs{
xDd
dlJ
CA?"2v)xI5S7:RM*`!J)xI5S7:,,&xcdd``$d@9`,&FF(`T ! KA?H1 @M3pC0&dTՀ1
@201W&0;"lĜ,@q]j mĕhҪQIy\cmfY b`@2'[n`y$Mߘ
懥0?Dq;$CCS/DמX^ib;I$:^_1+C{^Gb{$^v d6cZZ@{7wCByN(?cKNȃsDT&@=̏@(?Q[`@:FTPG1@ԣW .D@F[8Am8?ķf/E1CdD ^=`c;\[121)Wx\]` g!M~dyk6Dd
D
#A
#"`"b_t= >
#
a*@=
b_t= >
#O.8kG
U,
x\}pTwf?Ȇd7Z!%Rvh% A X44nZZVLδL֎fIIt$U.S똩9e}y۲q3g}sϹ}/1 h.P
ƶs~Y؇.ؗgk\gw1q 1&CϽdH:`kP! Gס) ºˁd'+e^
}hF!ReK̔9r1*gYVE
J*PL #p!5cm+ykիs9wX6 lǅ_*>DD/Y7W5ɌfAD($>+C?ZO/C
]MT'Kk놶srs0j(ꨟ:jb7ameAz8KmdUUƂy1vKNJ5qfଁ}lR+Q,w?%^kcPv!wwɇW
6C׀.'* G#Zcf6uTha {$^t:::^uVGz0__ԮM!7rm[4_X!L].o9p5i>9˷.;bڒWCR9eX,d~eck,FrX洈e982ԕ XV,4XQrU/NOXupfƋfWl?JzS!OP I*ݦ`,HݺJK:~t ?M1r9OΩupN;kf"an)xM0NI9^?<%ss^s>Q.&9 .yp+[^!3D8ᜓt0A (!:9h9zFlDˎsp*Ip2wVwƐqN?P?)oA>(T#CV**8KPa3ߪ*c9(Us+f;s~8G})D2'Fral,*0כaPW}Ye3t?*\FpD%:}/9u\d=HXnk~V^'_~u 'O3mv<{9}n
s~N'sRXOuj&S6h8'6~(P'u RlSgO&z.sjs:uCcYb_݊Z[QkxX9hP\;[kU0t9:`xX\`,9pa}tq6Z݇(7>9(眥~XE.#ayfSW`w9#@`,H#ˮs^Oz.j^59(h~Ng8Cr8@ۿj[A5sms\_
t[ݝkm7q
i43q=GglS҃3S剣t3Tmj{K<Q=f\mҕ=~uvO')<}`Urr;T>x!$583%
HgKuCYCeU_9⌻YYmrOዻi9WڿǵԢ^4<uN3R?%uRͤU?ͤWy=iC۠y3/Scs2<dP@P[Gme*n>1pGsDD~FX!ָ ^7"y0k2ǣ^ek"/XIcߋANmkزe!NꞀbewb@c9S9;2䩠.FrcyWLr61
Xa^iX23twq?H9;fI{ZMmV鵬V.X;.Z'ѱCӎeeM(>cD;)/H!
rmV Y]yhdԫ41SmZZfxlz`Y1\oOy!,3?i r^^]/9WH(=%T*Â\mS_(ޮhr~~Q.Mϛ5.YfBрu91`RPhЪVYt{Bzbڹrغ&/Ƞ^$kqcg>U
(鹂̞>^ca۾IDdIn=p٣AcHȱ8.zE
^Wm~o<28yk8VT8V}eK?LIGI˾IORz՚w>4)ZS{#>W[{TLg5{ro=96zS"qsiqnz9Vqb#.&ˉqqyzʈbPq49nf;&w8wy/ӯX7gi>}&%fNZ6sc\iװg#4)ay,:oDd
lJ
CA?"2\UCʋ[,*`!S\UCʋN@+!xcdd``^$d@9`,&FF(`T A?d
UXRY
T7`7LY \P˵Th<+8^`F\9L Ęy` #4+A_L~P0109Y@Wf"n`a;I~7&/8 ~a)+QDa9q~c!!Dw"ɽĺWO$$ֽ/%Iro 5&ɽu I
"ֽQj.HdnHfnj_jBP~nbqM`JW ?C1<'$,RRa*>Iu$tLAqT&@=̏@(?Q`@:FTPG1@ԣ8&.nӸn ׆Y@[lRG! #<5v[w=I)$5bPd+>1h:G33X?/HhDd
J
CA?"2!/`X
P%0*`!/`X
P%@@hxڥ+QǟmBq!
i.P$
oQ{Gm,G[r#?@u͚wuat=~YBX11tGE#S+yLVZJԗ2:%x㲏Ή:lj1
>h672`%dý3SWV,k`}Xfe؆uSs:'A#o/Ӿ5ċx3lQ4;
ro'B~GS3֎gdvb31,F.`X=3X3E\7P_EvY?٭ۮβ_ѷMWN'=]GX1 Yg}~V>)ń) ]QhR\7/iIJ@/d
WVqZ#?Dd
4b
c$A??3"`?2@#3ˊK~2*`!#3ˊK~
@Xxڥ=H#A纇AD,;D,!kb)d@6"Y,6X$V ((Λٻ}1Hho
tEHb#Bd<
N9301[dHq]Wߑ9LdfENїkBb!58i>qݓc·Y?u!sX]?CWxdU,eMh(5UD<oInxxl%oUnVmK /':p+NQ;.
LS%;[`P
d1$koPh:YeŻ]ߢlM]S;]dg ҳRgp8{=
䗭tj݈XAjYm2xXER]T)U}!L%&WXt{occ
xN.:Dd
lb
c$A??3"`? 2ݘX>Vwx`5*`!XݘX>Vwx0`(&xcdd``$d@9`,&FF(`Ts A?db)=P5<%!@5`3{vL@(\pJk!Kbs9X
u9WC&VJB*m#d6J"@,a k.~ڇ
LP70h\.`~ea~h?1m%%C?>p{Eh^9!{>!ڽe]h"%=$rRv6ceZZG{J%@&UrB"!3/9B
y0 X)*Ç**T ~J ǘ V_ 姳\[
qUG$3(a )tC=)WdD.sSɑSܢpp>?+o[E+KRs@2u(2t5={D]<Dd
10
#A
b;.hb0;9*n;.hb0PNG
IHDR1("sRGB;VIDATx^
nE/Ys`,!:%e u,s/Y abb&ʩԤ¤s0%(+̤[Oq[ϝ̚ٳ_g̞̚5k͚qq9?>wxݖYYC&{_~CC͛oV Uu]h!`eL*J!`G`<_Ve[PC_DdR% K2~RdɲI
'JjL9=[k.^.]l(g9=e5)ئMGwSkG
&f)_:i=B~$Bi
J&"R<~З$}_΄@zW%_OdehkcڲV9YP$X.sw'vV֦GIΥf((ˤz̄1
I˟A8z=#5g76+fIVߌ1:ї^˲=5![3iYPD(g2ɍ^x&U週)Fv:?*Y_VJ?!m)͊1kK1M]OEuХ`1ϝ`cȤ\ϵ4QV$`L3"Yf Y#,Î*hMJ&dk`41DlK_$YM+qskF8l5gfFgh}Y#"~
+]l$ϧZTiwpTzYaMUǹRBW/JˆrB47=
J3&;/8{fϱaeRAGTĞAroҬHJ&83aLlwU4\3.~+N}{TJJP6)e1^IuEIhjVc2x㮔5[)(RMb"ۗd Ɣp4`g>),M3.V4pEӬʜIM.Akm5r*༬HV&u\P˟+T;\Jn_.SDWB*B?:~]5n=}Ph@G ڡ%]W"BiEȵiȳښ3f2I8Ж?=?a/?:,%/K_t
RU
Ȓ5 jY]LZm@`Xu2듟_'Ly/zыn݊z Q;
Y~q_b\^j²H$
;CO0sC`VheRGк5v=yކ86K.ç?O۷o?H4kI"A/O#Z^$Qmy.jȸ:[H[U!02ib;!^Wm'jK_`!P*$?'7'x"B&C9_:Up,b[ZqCXs۸1EU7'tWn6GWbp,Ys!`%,)SO}sÿwy7MNa{ߏѯy8ybiͲ3Ĳ hX.WuWv%{9dzիp#0=we"saD[C0,J& 2DOBmzGrڴiӏ~or!!ئU*3C@Z&e55?x
qg*!CB8!P.B'k&Fl!A !$y+N7u;9Oz_z! kkpÛi
C TpUc,6=,xoT ;}8XYC0V2@+(ir zW,pAFyIxIki! Iu3g?qpBd3aCq⏇9<ðX]^*C0j!I $D
n":Q?FqڄM+.5UZ1C`B`ϵY?_?Vy &,ϴ"2
nEX:g< L &ִ!`"I,lxI!'{Vv.L.`#%!uMఇ792Jړh!`@v7!2ILUEYwe! }>$ "ZD'
B's¿N8iCX!fG{xPGvmoQ b҅!Gd{`ap劮]X5oh}6lc=O=MGy Wv>$Fh(O}
A<[놀!lVkL:;vlzrںo*nr~leSs,lCѬ_
8
Nrs9_{cܲe(I$OE*&^s_uVƖT$9&P@rр
U'`~rAG&Iv+{IuX¿BS(1mHFc]3J'=I0ZW!FJ r043[%gV&Sib&ڬCs[np;C@뉋Ʋq00!oS( =y"=+ZuFpv&wfH P@WK/5;_m&Lg{UCNSĦ'6nk{Ѵ,_r)SOeSڸ0J(}Ŕi]quQM/FI"21
$1>p;g!ǅ]sօ!oN¿ҋ_.kw$b%$B7hǓ' eo+/^`Z%ܑRVl5[dȹ1$'8u#' C&Ce?k/h:#2Z`S&$h][l\Vzb>~R2Fxp?Y9;$[*45s=e֑RjhN\,1 bYM+",0= z
nhUa,$hqKhF '
vm%s+zq`bNKғr+ͥ8'Y+e "?Tw(7sv)CMCޅs ¿:ܖ++F`2,dRk}q%rIux IE!2%I"osaȱa%`kw_sO&W& bhނOsi_p}]MJҧe%Ȁ咊B.6SR6
![VM+?+
䒯ݥ%Xܳlm\p*9iI!9>xwW:ˈuxuY7 lu
Ή:R99qA
֯"XLr+\
$B Nt
%^k&ViۗZ$cz
{AǅSu?94S1f*9,+#H;m4G>jQIw>sIE!%@r#I n"B){k>X)ݔ:#0736.#zIE7Xٯ[ou=@DAYt]v#{W5O4L!`h\惘I}ǂxnt'"}I~

)>ǿ@S?^8zshaoOּHO
d%P3!!כ$/ lEC0sn{8z?V櫓!ЁɤjSu3]W:IT!N՚HØL!B1])DpClUԳ{Y !`@L/*%9k^zɚdp z7!JwMU3'hN>'B1]+ +XL&ϓ$(*Kh2*AfLvMheR@jvCL]p@HHOMGN3N.lNݤAzuD(:}IrWTkmEO{^wV
c2`
߄V&@n)E_Wrk]W\8s}N2 MGCww/hr)'@)We1RDF+,Tɤdukyŕs.4C#s99C"Db!TjkP⤖$$In_:I# >Mǒ́l6l /N8ihofr49$vHB)_](T&3I>YS٣01\=zCIJpn h>czH57wa
DNP p+jvaȱ(mZMcN3EJ[Kܗ]v)f+3'O.ex"*ɀ+ejD~JV;z) pIs4'B6}4rikaumZCvS$cBHes
ɄleRr8'*]OﻬDY0r<T61\`}źNmhNĚ>HDeVGo#WuAf]G'9:~Nc>RiN_6#ƈ7y$S95$]E8&,bf;ʀ^EIY1ED"V
2qIIEH,jU$>R)ZJ[V#Ÿ%\#s'lYؠȄI5a5vWoŪtOw8 ަ& pQVBf{jŧVנ3
l >v=b9kd#m b+;g=Y
h$C&%̶\ܛG>zQIw>M. 6bc2ŦN8Is,(V
KK+&=
y^$5J1bL> VV9.(F<{ӦMO.uO*xh]OCI&m@ d4Con7ot&αpArmn̜.TCjLbm7'֤5;3f8NXňB8qOul㒋M&Zlo>/X֓)'y*w/0"{MlsSv;9CDы[ody9ʆi!ٖ8dfA&qDlE7ygDe9f4e3pB`w}㏗,{(g;+HrWG㸒'2`{я~4ְgw'dvWp˃`uAQmۮizOˊd!ЊX*.
OB
q&Ԥ5.8a,5RkZCL 0RLv,ܹ3hˎ!}}
g8"J8q~]:Er
#ͅ!ܻ*ƀ^KBEN $+'z)f
# gX('evJWɜt܊AXӟ',ܭH1k̪`M 19
EKf\ޕ1r.lIG8x`+a/"$ +&r4*GwʬbïL`FDo1E:qZO OρL/b~ tA^or͉DҜI'4$*fI#/ύg 0B
$Ϫ=r;sQD%.~}0ʢcXG+DC[7qIM"ɊXU#H^*d=ià%
I鸢5'fNטqìxC'$c7&0}}PּTvdF<$ڷ,'tzQ`Ov8dm
};90oԎFHb 6b#ŵ9tDcIGqͨV\Ci&sUA"P/~H전dF;!F .ݍypz衇j1R#3Ph`տ HX ¾OQ$^s,.@j]ĒMB֓N/XXP횲ϡJ1n[b'*TKEÐ{Jcc\E\jPdE:_8CCj6'P^"zn5MFgbFfya8[Yd^2eM/8_L&9K\^_p[mI\*[Rqc=]F`ʼu־Vzyf$AHA٠6i@6.BYZmuâgSݵS1w #\ Avɿ,R. \
L%lzY`ӓ{rX
Re"
J$P4ppP*#CmZƁq4)&㪔9R3I/In/2<rK+`E>:723&$uEظq#ޞ*:@ /.6z\I:ap;Sk*vNSݴL*Z_e4&
Zq_9G^e׆Y}ƅ!<ԣٻJy 'puCWDq"A[~UFXcJٵmjZٓ}xWp*p($z\uBe Yn&Y0ٳ!%řYqUYϾ/ЗCh~Iד '$8=\$#';0ȓN$80'oa:p_CʛF`G`Meɿug'#'e>lzGE "թ.S4'K[(檘
+h]Ni/v<,\uꦛnڱc+_J<&>i: i$X̫\.H2&PbZ)}i枸勓IpcWNQFFpӯy?:<@0%'N"x9h8o/x GB_]~Ҥ*eh$ zXr1DGuU#l8Rq%ŏu
/>̏
J5uDZlY)+0뫏V+4fUoL&f$u
8=I2ŷu+!m'vZPyWqUzr8I3w7L.ܺ`E~8WtJIc~
uo~<ؤl}o<xB\E+~Rq:MUάD{gVH%֭+B2ɭ[?rJ#Gyq."H{Kl
w4]Pyk6.{bH"In+nR4yo~O ݴL2%`9xcCmꪫT˭Vy=s)&!ď5/`7ĴçvNDT*jn?)'Au&mk<:./A
}?}YaYww9p%رuYX˲@q0 KEr7O</`1xrlz0ؘ5L#H˖ۤ85<`˚^,"֓o˭[Cmj)~DCz[a)cΝP4d@x
Z%\2XPK)Fo{p}O.v1 ϑ
ЖčhEU^T/'cCZMYEܭ[6۠6Eb=H#.=q42
qR!Vna}yf"9'c3u!6%X;yq5(oPx3*n68}ܱM:*Ќeo}9㸱Kٌ&믿Rv)=sF/W=R,WrM9lcmI'T8aBX46n9(#RvQЅ.us{ׯMϙp5GĭupyReS'.(
Ŋ@b:0Ɔ?:pz'(
m> (Kgfk%&Y8$d;uRf;D'Bs=Zy93,L(Kjvk5$e12啅X9
#̐2,1bf~
FLj=[b
Y͵#{<\C<
n#˃# 7LIBin&gjyeqrS_W
'yI@@_WX(~傌>,$qT!TMXzY1vݲEwʆ
x5TcO4s9YuFxgPR!=ܵ^
NRJO<.d+Dޑ /}= 1s#`"MOh3}M+/vnuJC?LGk==zvj~lݺ䪵ή2Vrv
ϐ8'XpW7=3wP_b3X%dY9CeT42ܜ#9jAIInCi%Oy붵U { t)n/Le66j/v2'WDEP`mkSU@4jJNHES{_μHё"Ӵ+^0YxubUtQ6o*Hy$~ո*t9;4ۍP.j$3Eu=Y(aL&@[7
CX2iӦ
tXwhYCX 4λ]B jmU ֓ !`Lz}C0A C&Φ!`$d'Ib!`9i=989R}C0Hˤ9
C0A p0C;OaO<Ċ1mH`>0_xڝJAƿĻ5J P#[ (ژ"`W
Ej
ۻK {vfw >\2E]g=G9>WG~4Gwi(3AqkҷczQJ7BnnJ,IW
U`>0_xڝJ@ƿ٤m[(A⩅
VA(gR^W
\}zBf4MR7Bc,<%?\"=5BL%qpبC]V;x3Jr6k2蠅:+xlEV%*8r`_>aJ% y~SQ̷@ ߄MGfb1#b[xLEk(홽?PXnM٬ZilS?{Y^6Cvhvd<̝&,s<.`K
]b&eTa9e~S槴GSnJDd
b
c$A??3"`?2rAIae%z*`!rAIae%
wdxuRKBAvnFf,"H05!AMè/[t#$!cѭ Z.3;ͷC9,B%E}dލMiĸaV),/@maqs:ty16x[y=B'B+>yԼt/Fxy]Im{jrq[нCPWQ+U avcDd
b
c$A??3"`?2oT_`hrA{5g}*`!oT_`hrA{5Ǝ @~ Oxcdd``vg2
ĜL0##0KQ*
W&d3H1)fYKPSfĒʂT@_@ u!f0)0bK wfjQ9B&br<Kb婼i f22Zq3Ȥ(
욠,1@penR~y>
ᰏ H2)f.5!c;2`wm`a.hqcS=Ĥ\Y\d.P"CXY`mNDd
b
c$A??3"`?2UuXkof?FtL`!lUuXkof?Fb`0:xcdd``6dd``baV d,FYzP1n:B@?b ā깡jxK2B*RvfRv,L!
~
Ay;<+?
/=gF\_YAZ*!&S
*!7H ܞn, *a,=L@(\ 5IN@aS2\4s߰s56L #*1pCBcF&&\ s: 2zhDd
b
c$A??3"`?2R~
^R~L`!R~
^R~
TxڝNA@@HFNؑ.먭
jkXjsfP]v?ܮBH9
lB,%)G(2сZr_\E!Gwi6{CS%9?x+ku>OA w*$J̵+i6ٵ9*^ϿҎjtBHt7%z/!;ט:2+>mϺEF)zڅ.8c7&A>{L_WVlDd
db
c$A??3"`?26KPFUYL`!6KPFU ^
dkxcdd``f2
ĜL0##0KQ*
WäCRcgbR 6qefĒʂT$/iĺEYA,a +L
*'\I9\>
1X +(/Mkˈs9ȶJq!+_T 1_?,@C2sSRspv=L(neso1P/`gEGJo无"a2¨?_*B*phFV@F$GevolgdeHyperlink>*B*ph '()*P('& '()* P'5?UVf~67U
!*~9:<=S6[\^_K L m!n! #
#"###i#j###Y$Z$\$$$
%%%%%%&&&&&'
'''t(V))))*8***l+,,,OPbc
..1.S...///p0q0!1K1L1293E3F3_3x333334444?4d4444466^77
999::<<)=*====F>w>x>>>>+?H@I@nAANCOCQCRCTCfCjCCCDzDDDDAEuEEEEEEEEF#F.GH`MRV023578:<=>@ACDFHK6<#L(.
6>zHOUܕ.1469;?BEGL/5x$]z6
## #j#~##$%%%%&&&&&'
'nAAAKKKLLL+N?NAN{NNNNOOPXXX:::::::_:::::QR?2$S3@E쨏CI[D"$>)ʙH%`"$b_t= >
#
@j)Q(
tA
8# s"*?`
7
c$X99?tA
x
01i
T
C̙1Q
x
01Q
x
0̙1
]
x
0̙1]
b
Cf1"`
t=T
C1]T2
C1!tT
C1}
tT
C1!T
Cf1q
tT
Cf1 T
C1}
h
t
s*@1"`!b
C1"`
t=T2
Cf1Qb
!
Cf1"`
h
=
T2
"
C1!h
T2
#
C19 T2
$
Cf1tQ T2
%
Cf1
! x
&
015
x
'
0̙1
A
x
(
0̙1A
t
)
s*f@1"`t!ZB
*
SD>
t
+
s*@1"`t!ZB
,
SDԔh
t
t

s*f@1"`h
!
T2
.
C1T2
/
Cf1t5T2
0
Cf1
b
1
Cf1"`b
2
C1"` t
3
s*f@1"`b
4
Cf1"`E b
5
C1"` t
6
s*f@1"`E B
S ?AP8M
t
_Hlt198697536xP@xPBM
y`a6@! F(H(****+#+rvw..1.5.:.<.S.W...../
//#/(/+/N0W0q0w00000$1%1L1R1)2*2u22F3J3P3X3_3c3i3q3x333333333333334"4?4C4Z4]4d4h4u4x44444444455555566p6q6)757l7m789l9u999<<<<*=0=====F>L>o>p>x>~>>>>>?CFCDDSD[D~DDjEsEGG2G:GQGYGGGAODO`PP*4.8 e
k
T`w ""##$$F(H()***W*_*#.,.:.<./X///t0w00 1O1R1222222:3>3F3O3_3h3x333333334'44455
66366677J:T:::<<<(==0=\====>D>I>L>{>~>>>AB;C>CDD=FcFdF_PP33333333333333333333333333333333333333333333333333333?V7
!6&&
'&')*COPb33:COCTCfCCDEEEEF"F#F;FvGGKK&N+N`PePgPlPnPsPwPPPPP`PPg
DA7<W(^"d11m"j^`o(.
^`hH.
pLp^p`LhH.
@@^@`hH.
^`hH.
L^`LhH.
^`hH.
^`hH.
PLP^P`LhH.))^)`o(.
^`hH.
L ^ `LhH.
^`hH.
ii^i`hH.
9L9^9`LhH.
^ `hH.
^`hH.
L^`LhH.^`o(.
^`hH.
pLp^p`LhH.
@@^@`hH.
^`hH.
L^`LhH.
^`hH.
^`hH.
PLP^P`LhH.))^)`o(.^`. L ^ `L.^`.ii^i`.9L9^9`L. ^ `.^`.L^`L.))^)`OJPJQJ^Jo(^`OJQJo(o ^ `OJQJo(^`OJQJo(ii^i`OJQJo(o99^9`OJQJo( ^ `OJQJo(^`OJQJo(o^`OJQJo(1mW(^"g
7lQze on,PsOByR#:VQ#};^.12+ (&9*Y*Z+Gs0Ty0~0ro2X24!k4jS61,94AGABrB^CDU$_% <
0X"ae.MC\~g(Uha p`7p72_dvWt}'z4:$TH5OoZsAvH\upLdGw1Tbi@iL123MNP@@@:@<@@@X@(@UnknownGz Times New Roman5Symbol3&z Arial?5 z Courier New;Wingdings"qFeW]D)]D)!24d7P7P 2QHP(?2_2&CellFlow: An ndimensional CFD program
WestendorpGerard Westendorp
FMicrosoft Office Worddocument
MSWordDocWord.Document.89q