 our next session will be a hands-on session on flow simulation. Our team member Mr. Abhushan is there. He will take the session. Good morning everyone. That was a nice session from Professor Manasudha. So not only we learn the theory, we also learn how to implement it in open form. Now let's do a hands-on session where we simulate a laminar flow through a pipe. So I'm going to provide the link of our spoken tutorial for that and I'm testing it in the chat box. So we are using the same case that we did yesterday, the pipe. If you remember at the very end, we created a 3D pipe geometry. So you have to go to the same directory and then follow this tutorial. And you can download the files, code files that is required for this tutorial by clicking on the code files in the same website. So you can start your tutorial. Sir, in my cavity file, the folder pipe is not the same. The folder pipe was created yesterday when you were doing the last hands-on tutorial. So if you have not done that, no problem. I will just provide the files in my drive. You can download it from there and then copy it to your WSL directory. So I have provided a new link that contains a pipe folder in case you don't have that. Sir, after entering the command, this CD form, that thing is a directory. That, sorry. Sir, I will share this thing. Okay, you can share it. Sir, after entering this command, you are showing me these things. Okay, why are you putting $ in front of CD? I think you don't need to do that. That $ is part of the CMD. Now it goes straight. Yes, sir. Hello, sir. Excuse me. Yes. Sir, I have an empty transfer properties file. You have empty transfer properties file. There is nothing in the file. That means either you have typed the spelling mistake. So you just created a new transfer properties for your file. Just take, you can close that file and open a new one. This makes you that the spelling are right. Okay. Yes. Yeah. There's no such file directory. You can hold it. Yeah. You are in pipe. And can you do LS? Yes. So, you have to go inside cavity. What you can do is, you can call MB and change the name of cavity to pipe and then use that. Can you do that? Yes, sir. MB cavity space pipe. Hi, Bush and I am Joseph here. Actually, what is in control? What is that? What is that? Sorry. In control file one, after right interval, is there? Yeah. That is, in case you want to save space. So what happens is when you do control date and it will generate files for these time steps. So let's say your DT is one second. Then it will generate zero, one, two, three until your final time step. There's a hundred. So say you want to save space and you have make pause, right? One or two. So what it does is first it will create a file one then two. Now when creating the file three, it will create the file three, but it will remain erase the file one. So there will be always only two time step file. Oh, okay. It always it will keep only two. Yeah, it keeps on deleting the previous time step file. But if you want to disable it, you have to keep it zero. So if it is zero, zero, it is switched off. Okay. Suppose if you keep 10, it will keep only 10 time steps. Yeah. Yeah. Yes. Okay. Okay. Thank you. Welcome. Hello, sir. Yes, Kelvin. Yeah. Yeah. Again, I'm getting there. Okay. You can save the screen. Okay. One minute. Is it visible? Yeah. It is visible. You can close this thing. Yeah. So you are in the pipe directory and can you do LS constant? Yes, space constant. So I think you are using a different version of open form. Open form 10. Yeah. Open form 10. The transport properties has been renamed to physical properties. Okay. So you have to do get it constant space physical properties. Okay. Yeah. Okay. Yes. What is this? I'm mother of a, in the transportation properties file, number, values are not there in the node file. Is there any problem? Yes. Wait. You can put in the screen after this. This is the file. Yes. Yes. Calvin. This is the file. Yeah. Welcome. Okay. Mother. You can present your screen. Yeah. I'm able to. Yeah. There is the, it is there. One E minus zero six. It's just that the dimension is not given. It's okay. Okay. Yeah. Welcome. Hello, sir. Yes. Yeah. Yes. If I want to run the simulation study state model, which all will solve what tools open. If you want to solve the steady state, you can use simple form. Simple form. And we have to change the FB scheme or. Yeah. You have to change every scheme and every solution for that. Okay. So instead of like manually changing it can copy one of the case from simple form tutorial. And then just replace the block myth and your U file and P file. And then you can carry out the simulation. Okay. We have to see if you want to see the mesh file. See that anyway. Sorry. I didn't get your question. If I run the common block mass, it's where this mass is saved. It is saved. Okay. So if you run the constant after the missing, you will find another folder inside the constant called polymeth. Okay. Where the information of all those miss is said. So you can look at it. You can go. Yeah. You can use for another case if you want to. Yeah. Okay. You can use that miss for another case, but instead of copying the constant file, but we do is we just copy the block miss file and then do a new miss that way you don't have to copy all those files. Okay. Thank you. Okay. So people who have completed the tutorial, can they raise their hand? Mission this block mesh we need to copy from yesterday's pipe. Yes. Yes. Okay. Hi. Yes. Yes. I'm getting an input output error. Like I just copied the U file, but it's saying there's an input output error. Can you show the error? Present your screen. Once again. So in your U file, I think you missed something. Yeah. I just checked, but there is nothing missed here. See you. Yeah. This is my internal field that is missing in your U file. So what you can do is type internal. I just copied it from. Yeah. Yeah. You copy it while copying. I think you copy it. I overwrote those that in internal field line. Okay. That would be just before the boundary field. Okay. Here you can type internal field like space interval and then one with capital F. Then tap this. Tap. Yeah. Tap. Yes. Tap. One more tap. Okay. Uniform and then space bracket. Then three zeros. Like how it is done in value there. And then close the bracket. And a semicolon. Now save it. Now see if it works and what. Yeah. Yeah. Welcome. The people who have completed the tutorial can raise their hand. I'm only seeing few hand raises. I think you do not want to see your screen and. Okay. So see the binoc. I see that you have finished the tutorial, but you are not able to view the result. So you can follow the procedure that I mentioned yesterday. That is first you have to do dots. Space. Result. And you're getting it. Oh, your mic. Is it working? Never mind. I'll show you. So you do. So do you how to do it? Yeah. I see the binoc. You're able to use para from as well. I think the binoc. You need to copy the block miss. Oh, the block miss file into your block miss. So I think you missed that step. So that's why you are getting the square cavity. So what you can do is you can. Copy the files that was provided to you in the drive to go to chat. Scroll up. You will find a drive link from here. You can copy the block miss file and do the block miss again. Okay. Yes. Hello. Who is this? Yes, mother. Yes, mother. It is showing. Cannot find file points in directly. Can I share my screen? Yes. Hi, I'm just actually we need to rent block mission eco from right. Yes, you're right. Can you see my screen? Yes, mother. Here it is saying cannot find the file points in there. So I think you have not done block miss. So you need to do block miss. So we are a bit late actually. So I'm going to just show you guys how to do it. Just follow me. I'm going to present my screen. So. So this is a pipe that case that was done yesterday. So if you do a system, it has the block miss. Dict file that was used to make 3d pipe geometry. In case you don't have this file. I have shared a link of drive. I will say it again in the chat box. You can just use that. I already downloaded the required files. Which are these files. So what I'm going to do is. So all I have to do is just copy the pressure and velocity and then control it. So I'm going to LS and I'm going to rename my 0.4 folder to 0. And as you can see the folder is remain renamed. And I'm going to go to go inside my zero. Here you can find you and P you for velocity P for pressure. So I'll open my U. And here I'm going to copy paste this line. Okay. Copy. I'm going to save it again. I'm going to copy the pressure. I've pasted the P file as well. Now now I'm going to move back to my case. I'm zero. I move back to pipe using CD space dot dot command. So I'm going to copy paste that here. I'm going to save it. So I'm going to block base. Then I go home. I've got an either that says ring file you and it cannot find password in it. So let me see what it is. Let. Outlet. Sir to boundary field. Yeah. Two times boundary. Okay. Two times boundary field. Yeah. Okay. It ran current number is maximum. I think I made mistake while copying the file. It's okay. I'm just going to download it again. Yeah. So my simulation is stopping at 0.08 time. Yeah. So let me just. This file only we have used actually. Yeah. But there is no program number. Things. It's okay. It's a pipe symmetry. Now go home. This means that somewhere I may have given a very high velocity. Did you guys get the same year? Yeah, I also got the same. Okay. So it just means that you have given a very high velocity. So what I will do is. I'll just lower the value of velocity. Or do we need to change the value of. In. Yeah. Yeah. So. Can we refine the miss in this case? Yeah, you can refine the miss. Just a minute. I think I forgot one step. So here you have to change this to one E minus six. Okay. Yeah. I forgot. Now I'm going to save it and I'm going to go home again. Okay. This time it worked. So let it run for a while. Sir, in open form in every time step, we are getting some error, like continuity error. Is it warning or some kind of error? Does it say warning? So you do get a continuity here, but the value must be very low. Right. So in this simulation also, we are able to see time step continuity error. So it read of this kind of error. So since this is an approximate solution, you'll get some continuity here. I'm going to be talking about that in the next session. So it's just that that value needs to be very low. As you can see, it's in the order of 10 to the power minus 10. Right. Minus six 10 to the power minus 10. Minus six and five. Yeah. So it's just that it is there, but it is very low. So if it is very low, then it is fine. It's okay. We can view the mess even while this thing is running. So I'm going to do that. I'm going to go to run and CD pipe. And I'm going to click on apply. So this is my pipe geometry. And if I do surface with edges, you can see the geometry. Right. And I don't want to see the geometry. I want to see my results. So let the simulation complete. Okay. It has completed. I'm going to close it. And I'm going to touch the result. Home. And I'm going to click on apply. And then we view the zero velocity. So in order to view the velocity. So what we have to do is we have to slice it. So I'll clip it. I'm going to clip it. So you can see the velocity profile when I clip it. And I'm going to go to the final time step. This is the pressure profile. And this is the velocity profile. So it is a parabolic profile. So to see whether the profile is parabolic or not, you can use plot over line. Someone was asking this question in the chat how to actually view it. So when I click on why and if I click on apply, it will slow me the profile. So this is the view profile. And as you can see, it is parabolic. So if you have any questions, just type on the chat. Pinaik will answer those questions since we are running out of time. So let's get on with the next session. Sir, I could not complete this simulation. You have sent the drive file and I'm using that drive file. But I could not complete the country. It is showing some error in terminal. So it's okay. You can say that even in the chat box, Pinaik will try to remove your issues. But meanwhile, we have to go with another tutorial since we are running out of time. So you focus for the next session. And if you have doubt, you can also send that error as a mail to us. We'll try to clear it. Okay. So the next, this hands-on session is going to be on residual and convergence and how we can control the residuals in open form. So whenever you run that any solver like simple form, ICO form that you will do, you'll get some bunch of log. So in that log, you'll see some residuals, initial and final residuals. Let's see what are they and how, what does it tell us? So residual is actually the measure of imbalance of conserved variables. So whenever you are doing the simulation, you are solving some conservation equation that could be momentum conservation or mass conservation or the temperature energy conservation that could be anything. So during the first lecture, you got general idea of what is CFD. So in CFD, you divide your domain into a bunch of control volume and this is one of that control volume. So in control volume, you get some flux in and you get some flux out. So these are those in and out. And on top of that, if something is being generated, let's say if there is a heat source, if there is a momentum source, then something is also being generated and the gen is that generation. In reality, the whatever is going out must be equal to the whatever is coming in and whatever is being generated. And if you subtract out minus in minus then, you should get a zero. But numerically, when you do a numerical solution or when you do simulation, those are approximate solutions. So you will never get a value that is equal to zero. You will always have something that is remaining and that remaining thing is called residual. Now the measure of residual is important to draw how numerically accurate is our solution, which is why we need to monitor the residual. And this residual will never be zero. It will be lower value and lower the better. So what value is the, what lower value is the better value? Generally 10 to the power minus six is the value that we go with it. So if the residual is in the order of 10 to the power minus six, we considered it good enough. So yeah, so how if you were to plot that residual, initial and final residual, it will behave in this manner. This is the initial residual and this is the final residual. So what is happening here? On the right side, you are seeing a general algorithm to solve a general transient problem. So initially you initialize U, B, P or Phi. Phi means any other parameter. It could be temperature, it could be a scalar parameter or anything. So now, so initially you initialize U, B, P. So in the boundary condition file inside U and P, there was internal field in one of the line, if you remember. And that is our initial condition. So initially all the variables in our domain will be initialized to that value. I think you remember it was internal field space uniform zero, zero, zero. If it was velocity and if it was pressure, there would be only one zero because pressure is a scalar. Here what we are doing is before starting the simulation, we are initializing all the variables to zero. So that's what we are doing. So when they put this equation, this value in its internal field value in our equation, you'll get some thing that is remaining. Like some value that is remaining. That value will come as an initial residual. And now you will enter to another loop that actually solves your solution in that time step. And while doing that, it will go through a series of iteration. This yellow thing that you are seeing is that series of iteration. And it will finally end that may end depending on the maximum number of iteration or some residual value that you have provided in your every solution file in upon form. And when it ends, we will come to a final residual. Now it will move to the next time step. So we are here right now. So it will move to the next time step. And here it will start again. So it will come from here, here, here, and it will move to the next time step. Then it will start. So final residual is the residual that is obtained at the final iteration of your internal loop. And we have another loop outside of the internal loop. It is called time loop which marches you through the time. And here at the beginning of that time step, you will get another residual and that is called initial residual. So this is how this thing behaves. And now, so this is how the initial residual behaves. And sometimes it will go to a lower value 10 to the power minus six or 10 to the power minus four. But it always doesn't happen. Whenever it reaches some value or converges criteria, we say that the convergence is achieved. So we also need to monitor some quantity of our simulation. It could be coefficient of drag, coefficient of leaf or some force. And when you monitor it, in case the residual wind goes down like this to some lower value, our monitor value will stabilize with the time and then we say that the convergence is achieved. However, in some cases, in few cases, one example would be an example of flow past a circular cylinder. So whenever air is flowing past a circular cylinder behind the wake, we have series of vortices because of which we never have a steady state solution. So in such case, our residual will never reach a lower value. So when we monitor our quantity, that is coefficient of drag or coefficient of leaf, we'll get a periodic solution. So it would be something like this. Initially, it will move up or down. And then after some time, you will get this periodic solution that behaves periodic. And when we get this periodic solution, we say that since this problem doesn't have a steady state solution, we'll end our solution here and this is our solution. So what we learn from here, low residuals do not indicate a correct solution. And similarly, higher residuals do not mean a wrong solution. Even though your residuals are high, you need to monitor your quantity. So that quantity is coefficient of leaf or drag or any other quantity that you would like to monitor or your point of interest. Okay, now how is this parameter controlling openfoam? So inside openfoam in system file, you will see FB solution. And inside FB solution, you'll see something like this. So this is for pressure. Similarly for pressure, you will have one for velocity. And if you are solving turbulence, then you will have one for k, epsilon, and so on. So here, the first one is the solver. The solver that is being utilized to solve the discretized equation. And if that solver uses a smoother, then you provide a smoother here. Now, these three are the parameters that controls the residual. For example, if the solver in 1e minus 7, it is the value for the final residual. So whenever that inner loop iteration reaches a final residual value, that is less than this, we'll move, we'll close the iteration and we'll move on to the next time step. And similarly, really relative tolerance, it is the ratio of current to the initial residual. That is the maximum number of iteration that can be done inside the internal loop. So if any of these three values are satisfied, we'll move on to the next time step. That is what this is saying. And if you want to control the final residual, that is when your actual simulation, whole simulation will end, you'll use something called residual control. And you will give a value. Here, I'm giving 1e minus 6. So whenever the initial residual is below this value, our simulation will end and it will say that your solution has converged. And here the dot star, it is just a regular expression. It means any value, you can either provide velocity, pressure, or other parameters that you have. But here, I'm just giving it dot star, meaning all the parameters. Now let's see how to implement this in open form. So I'm going to use virtual box. You can use WSL as well. So I'm going to copy one of the tutorials from open form directory. So whenever I'm copying, I actually never type the whole command. See, I'm doing dollar form underscore to you. Now if I press tab, it will automatically complete my command for me. So now I'm going to do space and I'm going to type IN. Now when I press tab, so it is already going to complete it for me. If it doesn't complete it for you, that means somewhere you have made a mistake, you will type a mistake while writing the command. Now I'm going to go to pimple form. And inside pimple form in the RAS, in the RAS, I'm going to type pitch delete. And I'm going to copy this to my current directory or to my run directory, which is home run. So when I press enter, that file has been copied to my dollar form run. But now I'm not at dollar form run. I'm at my home. So I'm going to go to my run directory by doing this command. And when I do LS, you can see that the pitch deli is there. So it has been copied successfully. I hope everyone is with me at this point. Now I'm going to go inside the pitch deli. So this is my pitch deli case. It has zero constrain and system. I'm going to do block mess here and it has ran. Let's see what's the pitch deli case is about. I'm going to do paraform. You can view the mess similarly, just like how we did yesterday. It does result form and it will create a... You can view the result form using paraform. So yeah, this is the pitch deli domain. So here we have inlet over here and our outlet is here. And we have a backward facing step. So this is the backward facing step. This is our geometry. Now that it's clear, I'm going to get a file called residuals that will help me to monitor my residuals. To do that, I'm going to use form gate command. You can get any files that you require in your case using this form gate command. Let me show you how it is done. First I'll clear my screen. So F O A M and G E T. Now space. Now I'm going to type any files that I require. Right now I require residual file. Okay, residuals. Now if I press enter, it is saying that it has found two files that has named residuals. One is residuals and other is residuals.cfg. But I only need the first one. I don't need the second one. And it is even suggesting me that choose option one. So I'm going to press one here and I'm going to press enter. So it is saying that it is copying that file from certain directory that is inside the open form seven to my system. So if I do a last system, you can see that that file is already there. Okay, now let's see what is inside that file. So I'm going to use get it. You can use notepad.exe if you are using, if you are following me in a double lesson. System residuals. I'm going to press enter. So this is my residuals file. As you can see here, I have as include DC. It is just including some file from post processing. And in this field, I am providing the parameters whose residual I want to monitor. In case you are using open form nine eight. Here there will be a text saying provide those internal field files here. You just have to remove it and put it like this field space bracket P space U and bracket. You just have to write it like that. Now I don't need to save it. It is already separate, but I'm going to save it anyway. So I'm going to close it. So now that I have a residual file, I also need to include it in my controlled it. So I'm going to type get it system controlled it. And I'm going to enlarge this. So in my control date, I'll go to the very bottom. And I'm going to write functions. And here I'm going to give a bracket. And here I'm going to include this line has include funk. And then the file that I have in my system that is digital. I'm going to save it. Now I can finally run my solver. But before that, I'm going to check the happy solution again. So I'm going to type get it system and happy capital S solution. So it has opened the solution file for me. So this is the file that I was talking about the line P final. This is for the final iteration. In final iteration, we don't provide relative tolerances to some value. We have to give it to zero. We have set it to zero here. And dollar P means it will just copy whatever we have given here to this place. Okay. Now I'm going to give it one more line here, max. What is the difference in P and P final? So P final is the, so in the final iteration, what we do is we don't want to give any relative tolerances. So P final is just this value, but it is for the final iteration. And what we are doing here is the dollar P means whatever is here, it will just copy it over here. It is a placeholder. So whatever parameters that we have given here, it will just copy here. And we are again setting the relative tolerances to zero. Okay. So I'm going to give it some value, let's say 10. Let me just take max, eta, 10. Okay. Now at the very bottom inside my pimple dictionary, I'm going to add this line. So let me make this clear. Here in residual control, you provide the value of initial residual on which you want your simulation to end. Okay. So I can do it like this. For U, I can give a value of, let's say, 10, 1 into 10 to the power minus 6. And for P, I can give some value. And then I would have to write for epsilon and for K and for all those. But I don't want to do that. I want to give only value, one value for all the parameters that I'm solving. So what I'm going to do is I'm going to use this thing called regular expression. So dot star means any variable. All the variable. So you may happen all of the above options when choosing the MCQ, right? So it is similar to that. So it is saying all the parameters that I have. Okay. And I'm going to give a value minus 6 for now. Okay. We'll later change this and see what changes that we get. So I'm going to save this thing. Let me just take if everything is correct, residual control. Yeah. Now I'm going to close this thing. I will clear my screen and I will start my simulation. To start my simulation, I'll write pimple foam because I'm using pimple foam software now. So it is solving. So while it is solving, let me open a new tab in my terminal. So while it is solving, if I do LS, it has created a new file for me post processing. Right? So I can go to the, I can inside this post processing. Let's see what is there. So I have residuals. And inside the post processing and residuals, I have zero. And inside the zero, I have residual dot that. So this is the data file where all my residuals in each time step is being stored. Now to view this, I'm going to use a command home monitor. I'm going to clear my screen. So home M O N I E O R. I'm going to place an space and dash L. This dash L indicates that I want to. I want my access to be logarithmic scale. Okay. Since the residuals are a very less value, it's in the order of 10 to the power minus six minus three. So I will like to use log scale in order to view it. Now I'm going to type post processing. And then residuals. Here we have only one file after other file. So if I just paste that it will complete the command for me. I'm going to press in tab. I'm not typing anything. And finally we get to residuals tab. Then I'm going to press enter. So these are the value of residuals. As you can see, the value is decreasing and our solution is still going on. It hasn't converged it. The final time step that I have provided is 0.3. The simulation will run until 0.3 even though the residual value is very high. We can see the value of velocity is 10 to the power minus. The residual value for velocity is 10 to the power minus four, 10 to the power minus six. But for pressure it is still high. It is above 10 to the power minus three. Sometimes it is coming up. This is initial residual or final residual? This is initial residual. We are viewing initial residual right now. Can you show control tick file where you have defined that function? Okay, I will show that. So our simulation has completed. And even after the simulation has completed, you can see it has not... It has not given any text saying that your solution has converged because in the residual control thing, we have set the value of 10 to the power minus six. But our pressure value is still high. Now let's force it to converge just to see what happens when you converge it. I am going to close this form. And I am going to show you the control tick where I added that function object. So this is how you add the function object functions. Bracket has include pump residuals. Okay, yeah. So now I am going to go back to my system and add the solution. Here now instead, I am going to show it again. I am sorry. Okay, don't worry. I am going to show it again. Here in Pimple, I am going to change it back to 10 to the power minus three. Okay, just do that for now. I am going to go back and show that control tick for you. I hope you guys have followed up to here. So I am going to save it. You just have to change it to 10 to the power minus three now. And I am going to go back to system control tick. Okay, this is how you add it. Add the function object. Here there are different post processing tool in open form. If you want to say find out average of some pads, mean men, that mean max value of some variable, say temperature, there are different tools available in open form. You can add it in similar manner. So this you have placed for the runtime calculation, right? Yes, yes. Okay, I hope this is clear. Excuse me. Can you tell me what these functions do I do not understand in the control tick? Like what happens when you are putting it under functions in this early practice? Okay, so this is called function object. And what it does is it will add the residuals file that I just copied into my system directory here. And it will calculate the residuals for me. So when I do this, when I do this and then when I run my simulation, it will create this file post processing. And inside this post processing file, it will create another file called residuals where my residuals are stored. Did you get it now? Yeah, yeah. Okay, now I understood. Yeah. Okay. So now this is your residuals that are stored. These are the final residuals. Like I got a little confused between... Yeah, this is the initial residuals. We are going to see final residuals at the very end hold on to that. These are initial residuals, by the way, if you are having confusion. Because while taking the convergence of our stimulation, we only care about the initial residuals. We don't care about final residuals. Okay. Now, let me remove all these directories, this result because I want to run a new simulation to do that. I'm sorry, Arvishan. Where should we give the maximum tolerance value for residuals? Like is it in the FB solution? Yeah, it's in the FB solution. You can just type get it or notepad.exe if you are using the Arvish solution and go to FB solution. Okay. Under pimple. Yeah. And in your pimple, you just have to create this line. You might already have this two line here. Arvishan, can you give these two files FB solution and this control date? Sorry, you want me to? Can you put it in the message and do this text file? Okay. You want me to copy paste this text file? Copy paste. Okay. But first control date and we need to change this in control date and FB solution. Yeah. Yeah. Okay. Okay. Paste it the one from control date. I'm going to do the same for the control date as well. Yes, we can see a live plot of residual as well. I'm going to show you. So the last time when we saw the residual, we saw it live only. It's just that I created a new tab, a new middle and in that I the live residual. So I hope everyone has copied those command update. Could you repeat what is happening when you're putting that line in FB solution? Okay. So when I put that line in every solution, this is the value for my initial residual. So when my simulation's initial residual falls below this value, it will say that the simulation has converged. Okay. Okay. So I'm going to be quick here. I'm going to use foam this time. Okay. Foam clean tutorials. So this will eds all those result from my case. I'm going to block this again. And I'm going to start my simulation again. So now if I do the same command here, you can see the value of residual. It is live actually. It is being written in the post processing residual zero and residual that that and the foam monitor thing is showing me the residual life. So let's see what is happening here. And at the same time, let's see the results. So as you can see the residuals are falling. Please show the command for residual getting the line. Yeah. This is a command for that. I'm going to type this command in the chat. Anyway, we are running out of time. So what happens is that when you do that system that we solution when you do this when this when my residual which is less than the value of 10 to the power minus three, my simulation will end. And it will show that people form has converse. This is what happens and how you control your digital value. So if you guys have any problem while following this tutorial, you will be provided with the videos later on. You can just write to us. We have our next session that will be on turbulence. So I would like Professor Agavinder to start. Yes, thanks a lot.