 So, we started the simplest case which is algebraic method. Now, we are going to the next method what is that method partial differential equation. Algebraic we use for where the lines were straight this we will used when we have curvilinear coordinates. This can also be used for straight lines also let us suppose instead of square plate I have a plate which is like a parallel pipe shaped plate. To give you a feel I will show you something let us suppose this is a plate and let us suppose this is simplest form of the grid generation. But the problem with this grid lines are that especially the horizontal line are not perpendicular to this inclined line. So, grid orthogonality is not maintained here. So, these are yellow circle are interior point blue circle are the boundary points this I had already mentioned. Let us suppose you have a complex geometry formulation as this is a complex geometry because instead of vertical boundary you have inclined boundary. So, let us suppose you solve del square psi where psi is let us say temperature where you solve in this domain and what is the boundary condition? Let us suppose left wall is non dimensional temperature is 0, bottom wall is insulated right wall non dimensional temperature is 1 top wall is insulated. Let us suppose using complex geometry finite volume formulation you solve this steady state conduction equation you get isotherms like this. So, this is t is equals to 0 is equals to 0.1, 0.2, 0.3, 0.4 and so on. This is a diffusion equation. So, this is now let us take a second equation second physical problem. Now, the walls which were insulated now they will have constant temperature the one which we are having constant temperature. Now, they will be insulated and we will solve same equation. Now, instead of psi I had written it is zeta, but if this is temperature steady state conduction. Now, here what you see is that left and right wall are insulated if you solve this in complex geometry formulation you get this type of temperature distribution and if you intersect this two lines this is the grid we want and you will see that the grid lines are now hitting the boundary at the boundary they are normal. So, what I am trying to show you is that we want x and y coordinate, but we do not want to solve in the physical domain we want to solve in the computational domain. Actually when I showed you there was one big thing which I said that to get this solution you need to use a complex geometry formulation. So, this smooth curves which you are getting actually this are our variables in the computational domain. This psi and zeta we want them to be in the computational domain their variation are smooth in the physical domain this is our physical domain. So, we need to do an inverse transformation of this. So, that psi and zeta are dependent variable independent variables. So, we solve this type of equations this is our psi and zeta in the computational domain they are just vertical and horizontal line and we want to map it into this. So, the equation still should be solved is del square psi is equals to 0 del square zeta is equals to 0, but we do not want to solve it here we want to solve it here. Now, to solve it here I want that x and y should be independent variable sorry x and y should be dependent and zeta should be independent. So, I need to do inverse transformation this is the original equation this satisfies both maxima and the minimum principles mathematically it has excellent smoothness criteria as far as the Laplace equation and grid orthogonality can be also achieved. So, we do an inverse transformation this is our equation this is the equation which we will we did inverse transformation of that del square psi is equals to 0 we got this del square zeta is equals to 0 we got this. Now, here we get x as the dependent variable here y is the dependent variable here and psi and zeta is independent variable. So, this set of equation we want to solve in computational domain one by one let me go back. So, what I am saying is that that inverse transformed equation where psi and zeta are independent variable x and y are dependent. So, that so we will take this domain I know psi and zeta at all the intersection points you can calculate very easily. Now, I will solve the differential equation here, but when you want to solve a differential equation you need boundary condition and how many derivatives you have in that equation double derivative. So, you will need boundary at all the left wall right wall top wall bottom wall you need x as well as y. Now, go back to that square plate with a circular hole there I had shown you how you can map the boundary one to one similar mapping is then although I will show you detail I will show you how we do mapping, but this is just to point out. For orthogonality this cross derivative when it becomes 0. So, if this has to be 0 this b has to be 0. So, when the orthogonality condition is that this b has to be 0 later on you can go back and see that on the top and bottom wall what happens is bottom wall is mapped to what bottom wall of the physical boundary is mapped to the bottom wall of the computational boundary. What varies in the bottom wall of the computational domain let us say in this problem let represent a plate to take one to one correspondence. So, let us look into this bottom wall what is varying here psi what is varying here x correct how it is varying we divide points equisphased. So, the change in x with respect to psi is a constant because there is a linear variation let us suppose if I have five points here I have five points here. So, del x by del psi let us say you put let us say 1 2 x 2 minus x 1 divided by 2 1 psi 2 minus psi 1 it will come up to be a constant quantity right now psi 2 minus psi 1 is in this case 0.2 depending upon the length. So, you will get this as a constant quantity what will be del y by del psi. So, in this fall how y varies with the change in psi y is constant here. So, this is 0 if you go to the inclined line if this inclined line what happens into this inclined line zeta varies in this inclined line del x by del zeta is constant del y by del zeta is also a constant because it is an inclined linear variation. So, the same thing is shown here. So, if del x by del psi is constant and del y by del psi are 0 on horizontal lines. So, this is 0 this is 0 means this will become 0 the second term will eliminate this is constant you get del x by del zeta is equals to 0. Now what does del x by del zeta mean in the bottom wall on the bottom wall we got a boundary condition del x by del zeta is equals to 0 which means the grid point sorry this boundary condition we actually apply here del x by del zeta is equals to 0. So, the value here by if it is a finite difference method the value here should be equal to this value because del zeta it is like a insulated boundary condition. So, the grid points which are just above. So, the boundary condition is the value here should be equal to this should be equal to this normal gradient is equals to 0 this is slightly more involved depending upon the angle you can calculate this in the code it has been shown we can discuss more during the lab session if you have question. As I said that in the inclined walls this is constant this is also a constant so summation of 2 will be 0. So, in pd if we solve a system of pd basically we solve 2 pd is 1 for x 1 for y to obtain the location of basically want to obtain x and y and the computational domain is square note that computational domain is also is not only square its size is 1 by 1. And another thing to note is that the grid which you generate in computational domain are equi spaced horizontal and vertical. So, you have an uniform spacing there are 3 types of grids which you can generate right now I am discussing only elliptic but you can also generate parabolic and hyperbolic grids. So, this is your computational domain equi spaced horizontal and vertical lines here we will use a finite difference method these are the boundary points these are running indices in x and y direction. Note that later on I will show you that the stencil which is generated because you have a cross derivative you have del square x by del z del zeta. So, there is a cross derivative which is there along with del square x by del zeta. So, when there is a cross derivative the corner not only north south east west but the corner points also come the stencil is much bigger here in this case. So, here in this case as you had asked the question that earlier corner point does not come but in this case it will come because when you are generating a domain you need corner point these are the type of grid points I will quickly revise finite difference method although it was introduced in the previous lecture. So, in finite difference method we generate grid by intersection of lines and we use Taylor series expansion. So, the idea is if you know the value let us suppose this is a function you can calculate this function at any location any x location. So, this function you can use to obtain the exact value now the same fx value if you use using this expression which is a Taylor series expansion. What is Taylor series expansion to calculate the value of a function at some elemental distance away from the original location. So, f at x plus delta x. So, let us suppose x is 0.2 delta x is 0.02. So, you can obtain exact value of f at 0.2 exact value of f at 0.02 using this expression. So, these are exact value which you can compare numerically what you do is that you if you take the first guess. So, you only take the first term and neglect all other terms. So, this is your numerically a approximated value you know the exact value and this is the error. If you take the first two terms you know the exact value and this is the error. If you take the first three terms this is the error. In Taylor series expansion more is the number of terms error reduces moreover as delta x reduces the error reduces. So, this idea is basically used in Taylor series expansion and then let us suppose you this is the east neighbor this is the west neighbor Taylor series expansion this is the way it is done and then there are I am not going to detail because if you want to I can you can refer to book of J. D. Anderson, but I would just like to point out we use Taylor series expansion. So, let us suppose I want to expect del f by del phi by del x in terms of phi i plus 1 and phi i minus 1 then I will have a Taylor series expansion phi i minus 1. So, the first equation if I used here I can write del phi by del x as phi i plus 1 minus phi i I can also write del phi by del x from this equation as phi i minus 1 minus. So, this is one sided difference which is used near to the boundary for discretizing boundary conditions. So, this is we approximate this as this and this term we truncate. So, we approximate that this is equal to this and this terms we call as truncated term and the lowest power of x here is 1. So, this we call as the first order. This is called as forward difference because the stencil is that it uses one point ahead. If you use the second equation actually this equation is used this is called as one sided difference if you want to apply the boundary condition on the left wall. So, if you have a slab and this is the left wall then you have solid on the this side only because this let us suppose the slab is like this this is the left wall of the slab. So, you have points only on the one side. So, one sided differencing we do forward differencing on the right wall of the slab we do backward differencing. This is the first order forward and backward, but you can have higher order one sided differencing also. This is also first order accurate. The point to note is that here in this case only two points are involved. If you want higher order accurate you will see that more neighbors will come into the expression. So, if you want more accuracy you are computational stencil increases because computational cost increases because the nature is sense if you want better things you have to pay for it. So, the computational cost increases. So, using the first and second equation if you subtract you can get an expression which is called a central difference scheme. This is commonly used in diffusion equations because as I discussed diffusion the information is propagated in both the direction equally. If you want second derivative earlier case it is a second order accurate one for first derivative. You can also obtain for second derivative is the central order central difference second order accurate. You can have cross differentiation also when you do cross differentiation del square phi by del x del y then the corner points comes into the expression. So, here we need finite difference discretization of the second derivatives cross derivatives also. So, using those expressions which you substitute it you can finally get a expression for x where this a is the discretized form of this. You can use central difference for this c is the discretized form of this b is the discretized form of this. So, if you discretize a, b, c maybe I had shown in the next slide this is the discretization of a, b, c and that a, b, c if you substitute here and you can calculate x. We will give you a code for this but this is the discretization and this is the stencil. Now, this is an interesting animation I would like to draw your attention to give you a feel that how number evolves. What is the stencil in this case? What is this if you look into this equation the value at a particular x and y it depends on i plus 1, i minus 1, j plus 1, j minus 1 but you have a cross derivative also. So, you can see the corner points are coming corner points where it comes here it comes the corner point i plus 1, j plus 1 this is which neighbor sorry i plus for this this is north east neighbor this is north west neighbor. So, this are the corner points coming from the cross derivative this I denoted as d. So, that is why you are not seeing it here. So, the in this case to calculate a value it is not only function of its north south east place but it is function of corner name. So, this is the computational stencil. So, if you use an algorithm I will here show you how the number evolves. So, the problem is let us suppose this is your computational domain you applied the boundary condition in terms of x and y for this blue points. So, you will calculate at this yellow points only this is your particular computational stencil. So, you know all x and y on this blue points you have an initial guess for x and y at the yellow points and your objective is to solve iteratively this set of equation. So, that you want to obtain you start with an initial get get a new value use this new value do next iteration you keep doing on iteration. But the way the number evolves in computer basically you do a looping it has to stencil is such that it is function of its north south east west and corner neighbor. So, you repeat this equation how many times 9 yellow circle 9 times. Second point third point fourth point this happens inside the computer when you have a loop. So, this gives us a feel note that this animation gives an imagination and understanding what happens behind the computer how the number evolves in iteration. So, those 9 values are picked up to up and put up in this equation and the new value. So, you can get an idea that in computer basically what happens is that we get set certain set of algebraic equation and it has a particular stencil. So, certain numbers are picked up from particular matrix and a new matrix is evolved and we need to do there is this repetitive calculation the good thing about this iterations is that only certain neighbors comes into for a particular yellow circle note that we get algebraic equation where only like if I say there are 9 points. So, if I talk of matrix 9 by 9 matrix, but if you look look into the coefficient matrix of your algebraic equation not on all 9 by 9 element of the coefficient matrix are non-zero. Why because the value at a particular point yellow circle is not function of all yellow circle this value is not function of remaining 8 yellow circle value. It is a function of in this case it is a function of 2 yellow and 2 blue this is a function of 3 yellow and 1 blue that is why the matrix is sparse that way this we solve in an iterative manner. This is a solution algorithm with which the code has been generated you need to create as you are solving an iterative method you need to have 2 matrices new value of x which we call x and the old value x old because to check for convergence you need to compare and as I said that the domain computational domain is size 1 by 1. So, you have 1 divided by i max minus 1 for delta psi and delta zeta is 1 divided by j minus 1. As you are doing iteration you have to start with an initial guess use the boundary condition for x and y before you this new x and y change you take it as an old value and then using the old value you obtain a b c d which are shown earlier as expression then finally calculate x and y. Once you have got new x and y you compare with the old value. So, you have 2 matrix old value having the old value of x new value of x you compare the 2 matrix take the difference of the 2 matrix and pick the maximum difference and check whether that maximum difference has reached to practically 0 which we call as convergence criteria which could be 10 to power minus 3 which is a user input which is a control parameter. So, if that maximum difference is practically 0 other difference will obviously be less than that. So, this is the way we check for convergence. If it is not converge you go back to step number 5 and continue. This had already discussed square plate with a circular hole there can be different type of branch cut. This is called as this generates a grid which we call as o type grid. You can also have a branch cut like this where this what is this a b a b is the bottom boundary of the computational domain. So, in the in this case the circle and the outer square we are forming the bottom and top boundary of the computational domain. In this case not only the circle, but this also forms the bottom boundary. This generate a curvilinear grid which is like c. So, that is why this is called as c type grid. This in this case the branch cut is like this. The grids are like this note that in all this case the computational domain is same one by one. The computational domain is same we draw certain equi-spaced horizontal and vertical line and we map it. That mapping is done by solving a partial differential equation. There is one to one correspondence between the boundary you see that. This anyway I had shown I will just and not say anything I will just show you in animation. This is a branch cut one to one correspondence. There is a mapping of x and y coordinate from here to here which acts as a boundary condition. You do not have to solve any equation for this mapping of the blue point. From the boundary you know the geometry size, whole size you know, you know the plate size. You just divide it into circle into equal parts, the square into equal parts and do one to one mapping. So, for this you do not need any differential equation. When you need differential equation is note that we know x and y on all this blue points. Where and we know xi and zeta not only at all the vertices of this and our objective is the vertex which are at the interior we want to know what is the x and y value. So, in the computational domain we know xi and zeta at all the vertices, all the intersection point. We know x and y at the boundary. Our objective is to use a differential equation to obtain x and y at the interior and there is one to one mapping as shown here. This is for O, this is for C. Now you see that the bottom boundary of the computational domain is A starting from A to A prime, A prime to B prime. So, this is the whole. The part of the bottom boundary is the whole now. Earlier it was complete. So, we draw certain equispaced and horizontal and vertical line, now just see. Here again I can know the x and y coordinates of the blue points, one to one correspondence. This animation helps a lot in understanding. Otherwise if you do in blackboard it is really difficult for student to understand. This is basically a power point animation. It is nothing difficult. So, you know x and y coordinates in all this blue circle and you substitute it here. Go from B prime to B. So, this part is your left boundary of the computational domain, only this part. Top is this complete, left top bottom, this complete is your top wall. By the way, what is the shape of this? If you take this as complete boundary, left top and bottom makes what? C and you will see that this is C type of grid. In earlier case we had taken whole circular, that is why it was O. Here we are taking one of the boundary like a C, that is why it is C type grid. So, this we give boundary condition this way. Any difficulty, any question on this boundary condition. You know the size of the plate, we are doing equal divisions. You know the size of the whole. So, you can obtain x and y coordinates and map it. We know zions it at all the vertices. The problem here is that we want to obtain x and y coordinate at the vertices by solving a differential equation. Once you solve a differential equation, when you get a converse solution there is a one to one correspondence. So, this makes one C, let us say this is second C which is its making. Now, you will get third C. Basically, there are five C which you will get. Then you join in a particular fashion. This is what is C type grid. Earlier you were one of the line in O type was concentric like a concentric circle. Although it was initially concentric circle, but gradually went into square because that one of the line from circle it has to go to square in O type grid. But here, what you are seeing is that this C type of branch cut is wide ends up and finally takes the top bottom and left one. Right now, I am showing you different grids, but you may be having questions that why this many type of grids. I will come back to that little later. There is a third type of grid where the bottom boundary here I will do grid generation only on the top half. Let us suppose the flow across a circular cylinder. I will do only on the top half and use the symmetry at the bottom half. Now, this top part of the hole let us say is this bottom boundary. So, a to a prime is this, a prime to b prime is this, b prime to b is this. Now, this is your bottom wall of the computational domain. You know the hole diameter, you know the plate, you know that you are doing an equal division, you can calculate x and y. Similarly, you can do at the other walls and then solve a differential equation and there will be one to one correspondence. So, after solving differential equation, you get x and y. So, note that this circle although it looks how it has been drawn. First I generated the grid and then I created an animation where I put the circle. Each of the circle is put at the exactly at the vertices and then power point animations was used. This is the grid which you get, where the yellow circle are lying at the vertices approximately. I will not put the circle accurately. It is very difficult to teach grid generation in the blackboard to create a field which you get through this animation. Yeah, please use my… If we want to have a more clustered grid set the circle near the circle. Correct. How do we do this? You know in fact actually the previous one automatically has come as Yeah, yeah, yeah. It is good that you asked it. Yeah. Any other question? You have anything. Yeah. So, this question is there is a good question that if you want more grid points near to the let us say it is a flow across the cylinder, I want more points. So, the answer to this question is instead of having this uniform distribution, I will have fine grid points near to this horizontal line. So, I do a stretching. We have one stretching where we have let us say stretching at the middle of the domain. So, let us suppose this horizontal line is middle of the domain. So, I have a very fine grid here. So, at the boundary I do a stretching. So, if I do that this curved lines as the points here are very close what I am saying instead of uniform distribution of in this bottom wall I let me have this point closer, this point further closer. If you have a non uniform with clustered near to this point A, you can get family of lines which are clustered. But the problem is you get clustering not only in this region, but also in this region. This is the problem of typical problem of a structured grid that it does not have quality of local grid refinement. Any other question? For converting physical domain into computation domain, the conversion the transformation function is doing the trick. So, how exactly to develop this transformation function? Yeah. So, this question is that how that mathematical equation have been obtained. Honestly speaking I had not looked into that that was proposed by mathematician. As an engineer our job was to use the equation and get the results. So, but it has been found by mathematician that this equation works well. That is what I can say. Any other question? It is also there. Do we use for such kind of problem the other times also? Non-body fitted. Yes. Nowadays we are trying to use it because this let us suppose this cylinder is moving. So, if this is moving I have to generate this grid after each time state. This is cylinder then I generate it only initially. Then I do unsteady simulation. I do not have to generate grid every time. Every time step. But let us suppose this cylinder is moving. Let us suppose instead of the cylinder there is an aircraft. It is moving. It is having some acceleration. If it is moving constant velocity then also we can solve it as a stationary boundary problem. But if it is accelerating then I need to generate grid after each time step. Generating body fitted grid at each time step takes time. That too for complex shapes. So, nowadays we use a body fitted multi level Cartesian grid which I will end the lecture with this. But this is a body fitted structure. As I said, as he has asked a question that if I want a fine grid near to the cylinder. Let us suppose this is a not a circular cylinder. This is a square shaped cylinder. Let me call. Flow across a square shaped cylinder. Cylinder of square cross section. So, local fine grid refinement if you want you generate in this boundary a non-uniform grid distribution. And then you can generate this type of clustering. But the problem with this is that I wanted fine grid near to the cylinder. But unnecessarily I get in this region also. Because most of the fluid dynamic action occurs here. So, where most of the action is occurring. I have a fine grid but I have unnecessarily a derivative. So, does not allow local grid refinement. There is a method which is called as multi block structure grid. Where what we do is that we divide the total domain into certain blocks. Like this is the first block, second block, third block, fourth block and fifth block. And we generate in grids differently in the different blocks. But we make sure that at the boundary there is continuity of the grid lines. Like you can this is the boundary between these two subdomains. But the line is continuous across. So, if you do this type of grid generation you avoid that clustering problem. So, you get fine grid near to the cylinder but not in this region. So, it does not create a band of fine grid. Because in the earlier slide there was a band of fine grid horizontal and vertical. So, this is a better option of grid grid clustering. This is called as multi block structure grid. In fact, you have to develop this way. First there was structure then there was multi block structure then there were unstructured. But finally, we are coming back to our old thing. Old is gold that way. We are going back to the Cartian grid. After starting from Cartian going on to multi block structure to unstructured especially with the complex industrial problems where industry wants results in less time where we want they want to reduce the grid generation time. There is a new grid as I said multi level adaptive grid technique which is nowadays becoming popular. Here the idea is that let us suppose as I said that we use one of the idea from computer science where they have an octree or quatery type of data structure. So, in that data structure the idea is something like this. Let us this domain is something like a grandfather. It has four children. You know in CFD you need to have a neighboring information. This neighboring information is like let us suppose you have a neighbor. But that neighbor may be related with you in some way, correct? You have to ask his forefather and your forefather and their forefather and so on. So, there is some tree structure. So, similar type of tree structure is commonly used in computer science. So, that octree type of data structure in 3D and quatery type of data structure in 2D is used in this multi level adaptive grid generation. So, the idea here is let us suppose the fluid dynamic action is occurring more in this region. So, what I do is that I refine this region. So, after sometime I refine this region. Now, then I find that this region is getting more action. So, what I may do is that I refine this, but I may delete this also. So, some childrens are created, some are some die down. So, there are some grids which are created. There are some grids which are dissolved like this four control volume I can dissolve into one control volume because maybe in the next time step the action which is occurring here has moved here. I will show you in the next slide an animation moving source moving heat source moving volumetric heat generation. What happens? The heat generation is moving in let us say in a circle. Then my find my grid should become fine in those regions only, but if it has moved I need to refine also. So, this is having a right now you can have an octree because this I am showing in 2D case. This is an animation of moving source which was created by one of the amtech students Rakesh who is also TA. So, we are developing a new stroke solver for multi phase per simulation using this multi level adaptive grid. So, here what he is having is that he has a moving heat source and this is the conduction problem. So, let us suppose as the heat source move you can see that this fine grids move. So, this is there is some unrefinement occurring with respect to time and some refinement occurring. So, wherever source is there you see that there is a fine grid. So, in this case the good thing is that in fact the animation of the grid can give you an idea about the action and the fluid mechanics or heat transfer. Wherever you have fine grid it means there is more heat transfer in this region more heat transfer action. So, the good thing is that the animation of the grid indirectly gives you an idea because it is an adaptive grid. More refined grid means the region in which most of the fluid dynamics action is occurring. Just to show you there are different levels of grid. This is called as the first level. When this grid is divided into four part this is called as second level. It is further divided into four part this is called as third level. When it is further divided into four part this is called as fourth level. So, right now in this code I think he has used fourth level of refinement. Adaptive Cartesian grid refinement. Probably this is the last slide. So, we have structured grid unstructured grid. Structured grid is numerically efficient but it has less geometrical flexibilities and it has less freedom of local grid refinement. Unstructured has greater flexibility as far as grid refinement and geometry is concerned but it is less numerically efficient because when you apply finite volume method not only nevering information needs to be stored. Secondly, the approximation which are involved in calculation of normal gradients they are little unique and inaccurate. Then you have a multi block structured grid which is structured within a block and unstructured in between the blocks and then we have a multi level adaptive Cartesian mesh which is becoming nowadays popular specially for industrial application. So, CFD started with Cartesian grid and now we are approaching back to Cartesian grid after going through the structured and unstructured grid. So, with this I come to the end of this session and I welcome all of you for any questions, comments or suggestions. Any questions please. So, when you map x, y to zeta and the other way. We do not map x, y to zi and zeta. We map zi and zeta to x and y. Yeah, so the same thing. Yes, simplifying the domain but then the conservation law equation would become more complicated. Here, we do not have any conservation law. That is why I said this is not a fluid mechanism or heat transfer. There is no fluid mechanics, no conservation law here. It is just a geometrical problem. We are using some mathematical equation to map. Yeah, but ultimately that would come into picture. When you solve the equation. When we solve the equation, the equations, the grid, the way we are generating, we are using a differential equation like elliptic equation. The characteristics of this equation is that it generates grid lines which has very good grid properties. So, when we go to finite volume method in applying the conservation laws, we are able to apply. This gives good accurate results. That is why in software, if your grid is of bad quality, your conservation, you struggle to obey the conservation law iteratively and it diverges. For mass conservation law, if getting complicated, why not to switch over to psi lines, x psi formulation? What you are saying is that why I should solve in complex physical domain. Let me solve the neostrug equation in computational domain. Correct? Let me do it again just to clarify. This question is why to solve my differential equation in physical domain? I can convert my neostrug equation which is in function, which is in terms of x and y into xi and zeta. So, I have neostrug equation in xi and zeta and then I solve in square computational domain. This is what exactly was done in the three days of CFD using finite differential method. But with this method, there are certain issues that it causes a lot of stability problems. That is why people came up with finite volume method where they solve in physical domain, not in computation. But if you see some books like JD Anderson, they talk about that. Any other question? This multi-level adaptive Cartesian grid can be treated as a subject of AMG or multi-grid? Adaptive multi-grid. You can consider it as an adaptive multi-grid. AMG, whatever it is, coming to the coarser grid and then finite grid. Yeah, it is same thing. Actually, let me tell you in CFD, there has been one of the big struggle as far as grid adapting is concerned, especially with the vodified, structured and unstructured grid. You will see a lot of research in adaptive, structured and unstructured grid with adaption. But it has not been that successful. This Cartesian grid has very good capability for adaption. So there is a lot of promise as far as grid adaption is concerned, which is one of the important issues here. Any other question? Mathematics involved in mapping. You said that is a mathematician's job. And as end users, do you think we do not have any control over them? And how exactly we are, I mean, we have relationship with that particular equations, because I was not able to make anything out of it. This question is that, again the same question, I think it was asked earlier also, that how to decide which equation I have to use. And are they always the same or do they change or can we change what it is? As far as developing equation is concerned, this was as I said earlier also, this was mainly developed by a mathematician. And we know as far as we at least know that at least this differential equation, especially if you talk of elliptic equation, they have very smoothness criteria. If you look into the conduction problems and the grid lines, isotherms, they are quite smooth. So by looking into those characteristics of differential equation, that has been borrowed and used here. So what is it is that we need to look into the nature of the different types of equation to propose such thing for grid quality. So if you want to propose something, you nearly need to understand how the different functions vary, what is the nature. But as far as CFD is concerned, we need certain characteristics of this, that there should be a certain smoothness, there should be certain orthogonality. So whatever you propose mathematically, it has to obey certain criteria, which we called as grid quality, because this grid quality later on helps in obeying the conservation law. So you showed some equations does it change for differential O type, C type, H type. In all those O type, C type, H types, we have used elliptic equation. So the equation remains same. The equation is same. The type of grid which is used, maybe I forgot to mention, O type grid is good if you have flow across a, let us say if you want to solve flow, let us say heat transfer in a square plate with a circular hole, then this O type grid is good. This H type is good when you have flow across a circular cylinder, why? Because this is almost like a streamline. So one of the curve, let us say in this case zeta is equals to constant is like a streamline over a circular cylinder. So this gives accurate result if you use for flow across a circular cylinder. This type of grid, C type is good if let us suppose you have bend. Flow is coming from here and then it is coming out here. Inlet here, outlet here. There is a U turn of the flow. Then this type of grid is better. We use same partial differential equation but the way we are having a branch cut, we get different type of grid. This branch cut I would say is like a C type. You have O type of branch cut, C type of branch cut.