 So, what we will do is in the last class we saw a demo of the one-dimensional Euler equation right and we are looking at various behavior. There are certain things about the demo that I just want to recollect here, one we already know that there are three different propagation speed right. So, in the demo I took a constant time step everywhere, it did not look like right I took the delta x by delta t by delta x I kept it a constant which basically means that I was taking delta t to be a constant in the demo I took delta t equals constant. So, in a sense when I say delta t equals constant I mean delta t equals constant I should say delta t is in a sense homogenous that is delta t is a constant this may not make sense to you delta t is a constant across grids right or over grids. The other thing that we saw was that these waves were propagating we saw that the compression waves not necessarily corresponding to not necessarily corresponding to u plus a or propagating at u plus a but compression waves possibly corresponding to u plus a propagating at higher speeds one way and very fraction waves coming in the opposite direction right which were taking more time because they are propagating something like u minus a. So, because the characteristics are u u plus a and u minus a those are characteristics are u u plus a u minus a it is very clear that as we get close to convergence one of these may become very small right. So, just to recollect what we did in the demo we had a simple pipe and we had a pressure here p0 and initially because the flow in the pipe which is of some length l and you have k ambient on this side I will indicate t0 here because we have the boundary condition but I am really interested in the pressure coming to equilibrium in this case in the demo. So, if you recollect the demo you had a compression wave that propagated left to right of course if you have a discontinuity you know that you have to take the left conditions and right conditions and right to figure out the speed there is a specific way by which we can do it but we will just say that it corresponds to u plus a right and there was a contact surface that was essentially traveling at the speed of u and when this p0 was communicated from this end to this end because it is a compression wave bordering on a shock it was traveling quite fast it propagated through this and then the p ambient condition which we are enforcing here caused a expansion fan to travel upstream you understand what I am saying. So, there is an expansion fan traveling upstream which is propagating at u minus a and as u gets larger and larger u minus a is going to get smaller and smaller so it is going to take more and more time to propagate upstream. Now it is clear that when you get convergence if you are looking for a steady state solution these static pressure here and the static pressure there have to come to term in the sense they have to come to some kind of an equilibrium in this the reason why I took a constant area duct is that they have to be the same the p0, p in fact will be a constant throughout that is the solution. So, you are going to see this reflection back and forth constantly right and if the back part is going to take more and more time as time progresses convergence will take more time. So, one of the observations that I have taken delta t constant and convergence can be slow convergence can be slow. So, if u minus a is small this happens when near transonic flows right so near transonic flows u minus a is small the other is very low subsonic flows low subsonic flows so that transonic flows low subsonic flows u is approximately 0, u is very small. So, anytime these propagation speeds are small we are going to have difficulty right and I entered the conversation in the last class by just mentioning the idea of stiff differential equation right I mean you have to use the word stiff which is a structures kind of a term so you apply you imagine that if you have a stiff beam you have apply an extremely large force and you get a small deflection very stiff right. So, there are the equilibrium involving very large entities and very small entities that is the idea right. So, it is very stiff and those problems like that can sometimes be very difficult very often can be very difficult to solve and in this case I am pointing out only a very simple scenario sometimes what happens is as in the case of u approximately 0 you could even get spurious answers you could even converge to answers that are not the right answer right based on what is the algorithm that you choose. Okay, so there is an issue of slow convergence there are two things that I want to take from this demo take forward from this demo one is how to speed up convergence right the last time we talked about speeding up convergence was when we are talking about SOR okay that was the last time we talked about speeding up convergence the other we will look at now we will look at some mechanism we have actually looked at what do you call it okay this fast and slow we will talk about it we have actually looked at other schemes where we try to speed up convergence the other thing that I want to look at is getting actually a time accurate solution so far we have been talking about steady state solutions is it possible that I can actually calculate the transient okay right given that we kept this delta t constant so we were sort of evolving and I did Runge-Kutta method which is a higher order scheme in time right. So we will see we will say we will try to say something about getting time accurate schemes something about what I mean by slow convergence so it is not enough see you can do you can do the math you can look at algorithms you can say oh this is a order n squared algorithm meaning that if you have something like a matrix which is of size n right that the time that it is going to take to compute is going to be n squared possibility right you have all of these order of magnitude calculations you have you can be given any number of guarantees by the algorithm by the programming language by the machine that you have people can make all sorts of claims but finally what counts to use what I would call the wall clock time I sit down it is 9 o'clock I start running my program when do I get my answer back you understand we can stand here waving hands caught off me about floating point number of floating point operation operations gigaflops megaflops all of this kind so it does not help those numbers do not help what really matters is there is a clock you have a question you start your program running when will you get your answer back okay and if it is going to take a long time if it is going to take a day that may be considered slow if it is going to be taken a minute that would be considered very fast right it depends on what your application is depends on the size of your problem for a given problem right obviously something that takes few days is slower than something that takes a day wall clock time am I making sense okay so in that context when we did approximate factorization we are looking at an acceleration scheme if you are looking at something that takes less effort and you get the answer back quickly we are actually looking at when we did approximate factorization for implicit scheme you are trying to look at ways by which we could make our program run faster from the point of view of wall clock time when I say faster I only mean from the point of view of wall clock time so you have looked at two SOR and some approximate factorization schemes and so on. So we will look at another we will look at another class of schemes we will look at one now and little later I will introduce other ideas to talk about how to accelerate convergence and so on okay so we will try to do this first I will set this up and then I will just say something about unsteady flows fine. Since I have talked about approximate factorization we will recollect that basically we had some term if you recollect we had some term going to 0 we said what is the big deal what happens to the coefficient we are going to use the same idea here what did we say we have very disparate wave numbers we have very disparate the wave speeds I am sorry we have very disparate wave speeds so if you have dou q dou t plus dou e dou x equals 0 one dimensional flow you have propagation speeds that correspond to u u plus a u minus a where a is the acoustic speed okay if we are looking only for the steady state right only for the steady state solution seeking steady state solution you are seeking only steady state solution what is going to happen dou q dou t will go to 0 okay when I say I am seeking steady state solution that is I am proposing to use a time marching scheme I am proposing to use a time marching scheme to march these equations in time to steady state that is the objective. And if I were to march these equations to steady state dou q dou t would go to 0 okay and that is the opportunity for us minute we see dou q dou t will go to 0 that gives us the opportunity so I say using literature the notation used in literature out there why not multiply by a pre-multiply that term by a matrix gamma okay pre-multiply that I say pre-multiply this term right by matrix gamma because I know that this quantity is going to go to 0 right so how does it matter I just pre-multiply it by gamma fine. So as a consequence this equation having done this so I propose now to solve this instead the original Euler equation if I pre-multiply this by gamma inverse what do I get I get dou q dou t plus gamma inverse dou E dou x equals 0 this tells me that you have dou q dou t plus gamma inverse A dou q dou x equals 0 fine and what we want to do is we want to choose the gamma so that these Eigen values are nice we want to choose the gamma so that the Eigen values of that matrix are nice is that fine okay I want to choose a gamma so that the Eigen values of this matrix are nice and keep life easy but the Eigen vectors are the same Eigen vectors are the same as that way fine is that okay so what I am saying is so what would be nice Eigen values they are all say the same order 1 okay so the nice Eigen values would be the Eigen values that we have right now are u 0 0 0 u plus A 0 this is the matrix this is the diagonal matrix that we get what I propose is that we build something that is I will put a 1 there which is they are all the same magnitude am I making sense I propose that we take something like this fine and having the same Eigen vectors so what I am saying is that x inverse A x equals lambda what we normally write is A x equals x lambda right that is what you normally write or what is the other possibility that I have suggested now x inverse gamma inverse A x equals lambda 1 okay or gamma inverse A x equals x lambda is that fine okay what do I get now maybe I can substitute from the A x here so I get gamma inverse A x x x lambda equals x lambda 1 yeah maybe I can multiply through by lambda 1 inverse gamma inverse x lambda lambda 1 inverse what is this product equals x so in our case right now this looks like mod lambda this looks like that you can just check this out which is mod u 0 0 0 mod u plus A 0 0 0 mod u minus A is it possible for us to find gamma from here how do we find gamma from here excuse me so this may not be the this may not be the greatest this may not be the greatest way to find gamma there are different ways by which you can do it I just wanted to give you a clue so you can work this through it is actually possible for us to solve for gamma now and once you have solved for gamma you come back you can solve that equation am I making sense and the propagation speeds will be propagation speeds will be almost equal okay so this is something that you can try out so it is very easy that you the this is as I said this is a very naive method this has been tried now for almost 25 years people have been fiddling around trying to figure out various values of gammas that will give you right extremely good convergence this process by which in any stiff equation whether it is a linear system as in algebraic equations right or differential equations any stiff equations where you have very disparate Eigen values and you do something typically you pre-multiply by some matrix or pre-multiply by some operator right this process where you do that so that the Eigen values become nice it is called pre-conditioning this it is a it is a it is a big idea and so numerical analysis we use it quite a bit it is called pre-conditioning right it comes from in matrix algebra I do not know if you are aware of this the ratio of the largest Eigen value to the smallest Eigen value is called condition number just to give you an idea as to where it comes from in matrix algebra condition number is let us say rho A divided by rho A inverse given that A is invertible okay so it gives you the ratio of rho A times rho A inverse anyway I do not rho A times rho A inverse A inverse will have rho A times rho A inverse right I am going to make it a real time I have to be careful okay fine given that A is given that A is invertible okay largest Eigen value to largest Eigen value divided by smallest Eigen value okay is that fine and if the Eigen values are very disparate this ratio will be very large it is called the condition number fine and we will see we will keep on coming back to this this is a big headache we will keep on coming back to this a lot of the acceleration schemes that the other set that I am going to look at will deal with the same idea okay will deal with the same idea in this case because we are multiplying the unsteady term it is called preconditioning the unsteady term okay so in this case we are preconditioning the unsteady okay is that fine right now what I will do is as I said there is there is another class of acceleration schemes that we are going to talk about I will get to that later since I am right now talking about fiddling around with the unsteady term and simultaneously I said look I am going to tell you how to do time accurate calculation we went through the effort of taking a constant delta t everywhere I want to say something about the consequences of this okay is that fine okay so how do we calculate how do we get time accurate computations what are the issues involved I am not going to spend a lot of time like as I mentioned a lot of these topics that I am just going to give you enough that you have a flavor for what the topic is about right I am not going to spend a lot you can there can be a whole course on unsteady aerodynamics and then consequently a computation of unsteady flows okay so but what we do here is if you have this equation we have already seen there are two issues that are involved so it is not enough that I use rangekuta method right to integrate in time it is not enough that I just use rangekuta method to integrate in time sure that gives me a higher order accuracy right the truncation error is much smaller the order of the truncation error is smaller convergence is better all of that is nice but if you still have dissipation and dispersion you still have dissipation and dispersion what you may be what the accuracy with which you may be calculating something that thing may not may itself not be that accurate the other sources of errors that you had to be careful right so when you say unsteady computing unsteady flows I want you to realize first that what I am giving you this is a disclaimer basically I am saying I am only giving you a tiny introduction meaning that there are a lot of serious issues involved that with which you have to struggle if you want to get into doing actual unsteady flow it is not just that oh I have a high resolution scheme I am going to take I am going to resolve time scales I am going to resolve length scales I am going to take right rangekuta in time and I am going to take a 4 point centered or 4 point upwinded or whatever in space and I am going to get great answers right so you have to there is an issue here right that you have to worry about dispersion and dissipation there are other issues that you have to worry about that you have to pay attention to okay given that let me just go ahead in this naive fashion saying that yes I use rangekuta in time that is one possibility one way to do it in use rangekuta in time right but then we have all this machinery that we have just developed right now right whether I look at approximate factorization whether I look at you know the whole host of other schemes that I will talk about or preconditioning the unsteady term there is other machinery that we have done that time that we have put into developing time marching schemes to get steady state solutions am I making sense we have spent effort so far developing schemes so that we can get steady state solutions to time marching schemes fine you see I am going to I am obviously you can see the by the way and sort of going around here I am going to do something the little fishy right so I am trying to set you up for doing something fishy the other observation that we made when we solved heat equation or if you want to solve the plus equation is if you have nabla squared phi equals 0 right you could either solve this using sweeping in space or you could actually add a term and look for a steady state solution marching in time okay so you could either sweep in space or march in time so since we did this and you could add any term unsteady term here the question is why do not I add an unsteady term to this why do not I just add an unsteady term to this you say why would you want to do it well if I want to choose if I what was the time step that I took in the demo yesterday what was the largest time step that I took in the demo yesterday do you remember 5 microseconds 5 microseconds you know what I am saying that is it I want to take larger time steps I want to take something in milliseconds here right I want the spatial resolution but I want to take time steps in milliseconds not in microseconds so then I would have to go to an implicit scheme so if I went to an implicit scheme I would have to struggle and solve a system of equations if I solve this using an implicit scheme right right have if I did approximate factorization then I have lost the accuracy so if I want to say if I want to use so if I want to use for example backward space right so if I wanted to use backward time so I could use let me see how does it go 3 3 Q P Q plus 1 minus 4 Q P Q P is in space Q is in time plus Q P Q minus 1 divided by 2 delta T right I could go to a higher order accuracy this way am I making sense and do an implicit scheme plus dou e by dou x at Q plus 1 equals 0 right I have discreet I have shown only this being discretized am I making sense and I can do the same thing chain rule I can have a flux Jacobian here I can write a delta form and so on the only difference is that now I have higher order accuracy and in order to retain this higher order accuracy but still take that large time step I will actually have to solve the system of equations okay actually I have to solve the system of equation am I making sense in this case because it is one dimensional flow fortunately I still get a tridiagonal system it is not that bad but the minute you go to 2 dimensions or 3 dimensions it becomes expensive one thing in the demo I took 1001 grid points right so if you look at it as a block matrix that is a 1000 by 1000 999 by 999 by 1000 by 1000 into block it is a 1000 by 1000 matrix or if you want to look at it component wise that is a 3000 by 3000 matrix and I am only solving one dimensional flow am I making sense it is an expensive process it is an expensive process so we have already said oh marching and marching is the same as sweeping so we say why do not why do not I add an extra time why do not I add an unsteady term right so the confusion comes the sort of physical look on everybody's face comes saying wait a minute there is already a time so I add one more time I create a pseudo time okay so I add a dou q dou tau plus that so all I have to do is I have to discretize this dou q dou tau in fact as I said this need not even be q it just has to be something that depends on q so I will just say q bar is that fine okay now if you are willing to squint a little and ignore the fact that this is time and treat this tau this pseudo time okay so terms that you will see is pseudo time or you sort of admit that there are two times or they are called dual times right you are this is called either dual time stepping or pseudo time stepping if you are going to go out and look to see what are if you are going to go out and search right these are two possible search terms that you would use either pseudo time stepping or dual time step now what I propose is I have this equation as I said we keep squinting at this and treat that as though it is not time I am going to march I am going to use a time marching scheme and tau and I am going to converge and go to convergence and tau and when I go to reach convergence in tau dou q dou tau will be 0 and I will solve the resulting system of equation that is the plan okay is that fine so I would have I am going to march I am going to do time marching in tau I will use a higher order accuracy representation for dou q dou t for the real real time derivative this will evolve I will evolve in the pseudo time and when it reaches a steady state in pseudo time this will go away and I do effectively ended up solving the equation that I want that I set out to solve is that okay and because I have a new coordinate so what is the price that I paid I have a new coordinate originally one spatial dimension so we call it 1d but actually it is two dimensional because I have x and t now it has become three dimensional that is the price that I paid what is the advantage that I get I am thinking time marching oh I have done this before I can do this I can handle this okay so as a consequence when I when I discretize this I get a q bar p q plus 1 and then I get an r plus 1 am I making sense maybe I will write this out separately why do not I write it out here separately so that you will get shall I first do it with the wave equation will you be more comfortable if I do it with the wave equation first I think okay maybe why do not I do it with the wave equation first then you can maybe I should have started that off okay dou u dou t plus a dou u dou x equals 0 right we will do it with the wave equation first and then apply it there if you want so I am going to add a dou u dou tau I am going to add a dou u dou tau so if I were to discretize this remember now I will have three right subscripts and so total of three subscripts and superscripts so this becomes up q plus 1 r plus 1 minus up q plus 1 r divided by delta tau it is a time derivative in tau plus we have choices I will make a particular choice in later on I will point out to you that I made the choice up q plus 1 so we have to decide this is that q plus 1 this is the time that we are going to do so that is r the choices I will make a choice r there are three of them minus 4 upq plus upq minus 1 divided by 2 delta t plus a how come they do not have a third subscript they do not have a third subscript they do not have a third subscript right I mean I asked how come they do not have that because they do not have a third subscript there is no pseudo time these are already these are in real time okay let me write it out and maybe I will explain that so a up plus 1q we will do central differences minus up minus 1q divided by 2 delta x so what we are doing is what we are doing is I will write it here q minus 1q q plus 1 we are here and we want to go to q plus 1 you understand the tau is a coordinate tau is a coordinate that occurs between this and this everything is known below that q is known q plus 1 is q minus 1 is known q minus 2 is known they are all known when you converge when r q r becomes q r plus 1 when this converges when this goes to 0 you would have the q or the u will become u q plus 1 you understand this is something that is happening in this gap okay this is something that is happening in this gap is that fine these are known these quantities are known okay so we are set we can now this is this is sort of like this looks like very suspiciously like a explicit method right it looks like you everything at r is known so you just take all of this this equals 0 you take all of this to the right hand side upq plus 1 r plus 1 equals upq plus 1 r plus delta tau times the equation that you are actually trying to solve am I making sense plus minus minus delta times delta tau times the residue right delta tau times the residue or these are all known these are all constants for all practice for this iteration in R these are all these are all constants the only one that changes is this is that fine you keep on you keep on so what would be a good first guess for you what would be a first guess for what would be a first guess for this 0 what would be a first guess for that use some explicit scheme use some standard explicit scheme you understand or upq would be a good guess this is a cheaper guess right you could choose I will be honest this is what we did right with the suggestion that everybody made is what we did the very first time that we did this upq would be a good guess then we got a little bolder and said hey I can actually take whatever explicit thing that I was doing earlier and use that as the first time step right it is an improvement so you could use you can use even with all this satisfying the stability condition and all of that stuff it is it is still a little better you could use that as the initial guess calculate the R update the U you keep repeating this process till it converges okay I am not going to do it here but you can actually do the stability analysis for this just like we did for FTCS okay there is a stability condition we are using an explicit scheme here in R we are doing forward time in R you get R plus 1 explicitly it comes of all the terms in R it is an explicit scheme it turns out there is an associated stability condition fine okay are there any questions so how do you decide on delta tau and delta t that will actually come out of the stability condition there is a stability condition on delta tau and delta t see there are 2 there are 2 issues when you say how do you calculate it is like saying how do I decide on delta t in my computation the delta t in your computation will depend on other parameters what is the accuracy you are looking for how much you know there are it depends on other parameters but there is a stability condition there are constraints right so question you should ask is what is the constraints are there any constraints on delta tau there are constraints on delta tau if you ask the question are there optimal values for delta tau so that you get to a steady state yes there are optimal values for delta tau right so you have to figure out how to pick that every time you introduce a parameter it is not obvious that just like SOR we introduce an omega so you can ask the question what how do I pick omega well yeah that is an issue if you get a good omega it will converge fast right it is just a parameter that we introduce it is not part of the problem so one way to look at it as look at it as a problem it is a difficulty saying that why should I do this why do I do this it is just a headache I have one more parameter determine the other way to look at it is an opportunity you look around figure out if you can get a delta tau or a delta tau by delta t that ratio if you get it right you will get very rapid converges okay so our experience with this just as the initial transients the initial first few time steps the number of delta tau time steps that you take is large is it the order of 1000 500,000 of that order but after that it is like down to 4 of 5 okay convergence is very rapid after that only the initial we have always found that initially it takes some time for the and after that subsequent time steps it is of the order of 4 of 5 okay to convergence so but you take some you have to implement it try it out see what happens fine what is the other possibility I said I made a decision what is the other possibility maybe this I do using maybe this I do using the full equation okay what is the other possibility so I have q pq plus 1 r r plus 1 minus q let us q bar is it not delta tau plus 3 q pq plus 1 so you could instead of choosing r you could choose r plus 1 then it sort of looks implicit like there is some so it is implicit okay minus 4 q pq r oops no r plus q pq minus 1 divided by 2 delta t what do we do for what do we do for e now e which happens to be a function of q is also a function of q bar and if I represent e at r plus 1 e at r plus 1 is e at r plus dou e dou q bar delta q bar right anyway I have used forward time here I am not using such an accurate scheme there so I am doing the same thing there okay we have done this the only difference is that I am doing it with respect to q bar so this is dou e dou q bar so I should most probably call this a bar right I am trying to write it in the delta form now that is basically what I am trying to do okay so this gives me delta q plus dot dot dot delta q bar by delta tau plus here I want a delta q bar what am I going to do I will add and subtract a 3 q pq plus 1 r I will add and subtract that so I will get a 3 by 2 3 delta q bar you have to be a bit careful with that maybe I will do that a little let me let me just leave that I will get that this is q remember this is not q bar 3 q well I can add and subtract it does not matter 3 delta q plus 3 q pq plus 1 r minus 4 q pq plus q p minus 1 divided by 2 delta t divided by 2 delta t a bar dou q dou by dou x a bar delta q bar equals what is on the right hand side I take this e r to the right hand side dou e r dou x minus is that fine everyone okay and as we did before we will use we can relate we can relate delta q to delta q bar right so delta q we can write this we can substitute delta q you can write that delta q as some p bar times delta q bar right where p bar would be dou q dou q bar is that fine all I have done is I am just using I am just using chain rule I just want to say I have some q bar for instance this could be rho u t right these variables could be rho u t this could be rho this is this is our standard conservative variable rho u rho u rho e t right we may figure we may find and actually it is a fact we may find that using rho u t or rho u p or something may be better for the pseudo time okay so for various reasons I will point out one possible reason for various reasons so we may we choose to have this pick this variable that is going to go to 0 the dependent variable we choose to pick it right and if we pick it then of course I have a delta q I have a delta q which I have to convert to a delta q bar I have no choice so I do it through chain rule I just basically perform a change of variables only for that single term so my delta form my delta form then turns out to be I plus delta tau by delta t there is that I specifically write it right because we had a question about that multiplying p bar 3 by 2 delta tau by delta t multiplying p bar plus dou by dou x a bar acting on delta q bar equals minus delta x into r of q bar and what is r of q bar residue dou e dou x plus however you discretize this plus that term 3 q p q plus 1 r minus 4 q p q plus q p q minus 1 you are making sense in fact r as far as I am concerned I do not write it this way I write it as dou e dou x plus dou q dou t that is the residue so I look at this equation it looks like a familiar equation I have it in delta form the residue decides when my when my when I am done when my solver is done and when the residue is 0 I am solving this equation with dou q dou t represented second order accurate or if you want to do something fancy now maybe you can step in and do it you understand what I am saying is that fine okay. So now the little twist that we throw in little twist that we throw in is we say wait a minute we just looked at a acceleration scheme pre-conditioning the unsteady term so you can pre-condition the pseudo of unsteady term so you see basically take this and you can multiply that by a gamma or a gamma bar if you want since we are saying q bar fine right this is as I said this is a sampling but this gets you very quickly to where we are so the kinds of things that the kinds of things that one can do kinds of things that one can do you can add a pseudo term the pseudo terms going to go to 0 when you have when you are you can pre-multiply it by some gamma if you pre-multiply it by some gamma there will be a gamma that shows up there that is basically what happens if you pre-multiply this by gamma what will happen is this will become gamma that is the only thing that will change the change is a small change this is a change is seemingly a small change the idea is that you have if you have a code that you develop can I make a small change to the code to make it run faster right to make my convergence better so we can pre-multiply this pseudo dual time stepping unsteady term by the gamma pre-conditioned that term so that this converges faster to what looks like a steady state in tau but is in fact a transient and when you have done that what you would have done is you would have gone from q to q plus 1 taken one step am I making sense then you shift whole machinery shift restart again fine right as I said here please remember so I am only talking in terms of oh I addressed only one issue how can I take a very large time step I wish I could do implicit schemes without all that effort well it is implicit scheme there is a certain amount of effort but the effort is what we have been doing so far so hopefully it is not that difficult we are just using the ideas that we had in our time arching scheme so far so which means that you can now try doing approximate factorization here you can do whatever you want in tau here because when this ?q ? goes to 0 r will be 0 and you would have solved your unsteady equation exactly have more accurate right does that make sense so you can pre-condition you can do approximate factorization all the games that we are playing earlier you can do the same things here everything that we have done so far you can do the same things here knowing that you are going to solve the full unsteady equations ultimately right but you do all of that stuff you would have taken one time step that is the point to remember you do not lose sight of that you do all of that stuff you would have taken one time step then you have to repeat the process only question is this less expensive or more expensive than solving the full system of equations okay fine and of course if you are going to solve the full system of equations there is whole bunch of machinery to allow you to help you solve systems of equations very efficiently so the competition is there the comparison right the competition of ideas is there because there are there are it is not as though people have not tried to solve large systems of linear equations right when there are algorithms there do not get do not let me you do not allow me to give you the impression that oh this is it and the other one is difficult to know there are other there are other possibilities I am just basically saying we have developed certain schemes certain skills using to get steady state solutions using time marching schemes they can also be used to solve for the unsteady problem fine okay in the next class what we will do is we will look at some other acceleration schemes right we will look at another class of schemes to increase the improve the performance of your solvers fine thank you.