![Tanmay Agrawal](/img/default-banner.jpg)
- Видео 95
- Просмотров 1 451 183
Tanmay Agrawal
Индия
Добавлен 18 июл 2010
I started this channel out of a hobby and love for the software related to my field of study (Mechanical Engineering). Over the time, I have talked about the fundamental courses related to the field. Hope you will appreciate what I have to offer from my arsenal.
Backward Difference Method | Computational Mechanics | 2
Join this channel to get access to perks:
ruclips.net/channel/UCL-K14hT1cNuLPiiLq3dT_wjoin
ruclips.net/channel/UCL-K14hT1cNuLPiiLq3dT_wjoin
Просмотров: 72
Видео
Finite Difference Methods in Computational Mechanics - 1
Просмотров 261Месяц назад
Join this channel to get access to perks: ruclips.net/channel/UCL-K14hT1cNuLPiiLq3dT_wjoin Computational Methods for Fluid Dynamics by Ferziger and Peric: amzn.to/462jBpV
Solving 2D Convection Diffusion Equation in Python using CDS | Lecture 22 |SFFP
Просмотров 1,5 тыс.5 месяцев назад
In this lecture, we will look at the programming aspects of the problem discussed in the last lecture. Suggested readings: An Introduction to Computational Fluid Dynamics: The Finite Volume Method: Highly recommended for this course. amzn.to/3oRJov2 PS: Excellent discussion on turbulence! Numerical Heat Transfer and Fluid Flow: Excellent book oriented towards a physical understanding of various...
Introduction to 2D Convection Diffusion Problems using Finite Volume Methods | SFFP
Просмотров 9835 месяцев назад
Suggested readings: An Introduction to Computational Fluid Dynamics: The Finite Volume Method: Highly recommended for this course.amzn.to/3oRJov2PS: Excellent discussion on turbulence!Numerical Heat Transfer and Fluid Flow: Excellent book oriented towards a physical understanding of various concepts.amzn.to/3jTMdYCPS: The author invented SIMPLE method :)
Introduction to QUICK Scheme | Lecture 20 | Simulating Fluid Flows using Python
Просмотров 8256 месяцев назад
In this video, we will look at the general idea of how QUICK scheme works with a demonstration with 1D convection-diffusion equation.
Assessment of Upwind Scheme | Introduction to Hybrid Scheme | Lecture 19 | SFFP
Просмотров 7366 месяцев назад
In this video, we will look at the assessment of Upwind Scheme while also providing an introduction to Hybrid Scheme.
Python Script for Steady 1D Convection Diffusion Equation Using Upwind Scheme | Lecture 18 | SFFP
Просмотров 7716 месяцев назад
In this video, I demonstrate the changes that are needed to be made in central differencing solver (that we had in last few lectures) in order to convert it into an upwind based solver.
Upwind Scheme for Steady 1D Convection Diffusion | Lecture 17| Simulating Fluid Flows Using Python
Просмотров 7916 месяцев назад
In this video, we will look at the upwind discretization scheme for 1D convection-diffusion problem. Suggested readings: An Introduction to Computational Fluid Dynamics: The Finite Volume Method: Highly recommended for this course. amzn.to/3oRJov2 PS: Excellent discussion on turbulence! Numerical Heat Transfer and Fluid Flow: Excellent book oriented towards a physical understanding of various c...
Python to Solve Steady 1D Convection Diffusion | Lecture 16 | Simulating Fluid Flows Using Python
Просмотров 8266 месяцев назад
In this video, we look at the python script that can be used to solve a one-dimensional convection diffusion scenario. The code is available to view at: codeshare.io/Od346x
Solution of CD Equation by Central Differencing | Lecture 15 | Simulating Fluid Flows Using Python
Просмотров 7336 месяцев назад
In this video, we will look at how the CDS predicts the behavior of convection diffusion equation at various Peclet number and thus, what (and why) their exists certain limitations of the scheme.
Introduction to Convection Diffusion Equation | Lecture 14 | Simulating Fluid Flows Using Python
Просмотров 9046 месяцев назад
This video introduces the convection - diffusion equation, both physically and mathematically. We will also look at the central differencing based discretization of the same. Suggested readings: An Introduction to Computational Fluid Dynamics: The Finite Volume Method: Highly recommended for this course. amzn.to/3oRJov2 PS: Excellent discussion on turbulence! Numerical Heat Transfer and Fluid F...
Source Term Discretization | 2D Heat Diffusion | Lecture 13 | Simulating Fluid Flows Using Python
Просмотров 9126 месяцев назад
In this lecture, we will finally look at the source term - the process of including it in the governing equation, discretization and also the implementation. Suggested readings: An Introduction to Computational Fluid Dynamics: The Finite Volume Method: Highly recommended for this course. amzn.to/3oRJov2 PS: Excellent discussion on turbulence! Numerical Heat Transfer and Fluid Flow: Excellent bo...
Two Dimensional Steady Heat Diffusion in Python | Lecture 12 | Simulating Fluid Flows Using Python
Просмотров 1,1 тыс.6 месяцев назад
Link to the code: codeshare.io/aVJKQ3 My email for any queries: tanmayagrawal7@gmail.com Suggested readings: An Introduction to Computational Fluid Dynamics: The Finite Volume Method: Highly recommended for this course. amzn.to/3oRJov2 PS: Excellent discussion on turbulence! Numerical Heat Transfer and Fluid Flow: Excellent book oriented towards a physical understanding of various concepts. amz...
Two Dimensional Matrices in Python and FVM Grid | Lecture 11 | Simulating Fluid Flows Using Python
Просмотров 9436 месяцев назад
In this lecture, we will look at how to define 2D matrices in Python followed by a rigorous discussion on their indexing. We will look at how all this is related to the finite volume grid systems thereby making it easier to write a script to solve the 2D diffusion phenomenon. Suggested readings: An Introduction to Computational Fluid Dynamics: The Finite Volume Method: Highly recommended for th...
Steady Two Dimensional Heat Diffusion using FVM | Lecture 10 | Simulating Fluid Flows Using Python
Просмотров 1,1 тыс.6 месяцев назад
In this video, we will look at the FVM approach to discretize the steady 2D heat diffusion equation. Suggested readings:9 An Introduction to Computational Fluid Dynamics: The Finite Volume Method: Highly recommended for this course. amzn.to/3oRJov2 PS: Excellent discussion on turbulence! Numerical Heat Transfer and Fluid Flow: Excellent book oriented towards a physical understanding of various ...
Neumann BC in Python | Steady Diffusion Problem | Lecture 9 | Simulating Fluid Flows Using Python
Просмотров 1,1 тыс.7 месяцев назад
Neumann BC in Python | Steady Diffusion Problem | Lecture 9 | Simulating Fluid Flows Using Python
Generalized FVM Formulation | Boundary Conditions | Lecture 8 | Simulating Fluid Flows Using Python
Просмотров 1,4 тыс.7 месяцев назад
Generalized FVM Formulation | Boundary Conditions | Lecture 8 | Simulating Fluid Flows Using Python
Conduction Visualization Python Script Lecture 7 Simulating Fluid Flows Using Python
Просмотров 1,5 тыс.7 месяцев назад
Conduction Visualization Python Script Lecture 7 Simulating Fluid Flows Using Python
CFD Relevant Python Statements | While | For | Lecture 6 | Simulating Fluid Flows Using Python
Просмотров 1,5 тыс.7 месяцев назад
CFD Relevant Python Statements | While | For | Lecture 6 | Simulating Fluid Flows Using Python
Introduction to Finite Volume Method | Lecture 5 | Simulating Fluid Flows using Python
Просмотров 2,5 тыс.7 месяцев назад
Introduction to Finite Volume Method | Lecture 5 | Simulating Fluid Flows using Python
Second Derivative | 1D Heat Conduction | Lecture 4 | Simulating Fluid Flows Using Python
Просмотров 2 тыс.7 месяцев назад
Second Derivative | 1D Heat Conduction | Lecture 4 | Simulating Fluid Flows Using Python
Finite Differences in Python | Intro to Spyder | Lecture 3 | Simulating Fluid Flows Using Python
Просмотров 2,2 тыс.7 месяцев назад
Finite Differences in Python | Intro to Spyder | Lecture 3 | Simulating Fluid Flows Using Python
Finite Differences | First Derivative | Lecture 2 | Simulating Fluid Flows Using Python
Просмотров 2,4 тыс.7 месяцев назад
Finite Differences | First Derivative | Lecture 2 | Simulating Fluid Flows Using Python
Introduction to Computational Fluid Dynamics | Lecture 1 | Simulating Fluid Flows Using Python
Просмотров 3,9 тыс.7 месяцев назад
Introduction to Computational Fluid Dynamics | Lecture 1 | Simulating Fluid Flows Using Python
A (very) brief introduction to MATLAB for scientific computing & engineers
Просмотров 1 тыс.7 месяцев назад
A (very) brief introduction to MATLAB for scientific computing & engineers
Mechanics of Fluids | Surface Tension | Lecture 3
Просмотров 3127 месяцев назад
Mechanics of Fluids | Surface Tension | Lecture 3
Just some lazy updates before the year ends!
Просмотров 2627 месяцев назад
Just some lazy updates before the year ends!
Mechanics of Fluids | Continuum Hypothesis | Viscosity | Lecture 2
Просмотров 1,1 тыс.Год назад
Mechanics of Fluids | Continuum Hypothesis | Viscosity | Lecture 2
Mechanics of Fluids | Solids vs Fluids | Fluid Density | Lecture 1
Просмотров 1,2 тыс.Год назад
Mechanics of Fluids | Solids vs Fluids | Fluid Density | Lecture 1
2023 Updates | Fluid Mechanics Videos | CFD Classes Batch 2
Просмотров 903Год назад
2023 Updates | Fluid Mechanics Videos | CFD Classes Batch 2
hi i try to run the code with other number of points, the code doesnt not work with other number of points. May i know the reason
Is this FDM or FVM? I am in dilemma where to consider the corner nodes either in top or inlet? If FVM, how to I reconcile learnings from Dr. Sandip Mazumdar?
Very well explained.....Any newbie can easily understand CFD with such interesting video session. Thanks Tanmay for wonderful content🙏
Nice video! Waiting for more
super helpful, thank you
You are an excellent teacher, those lessons are amazing, will you do some C++ applied to CFD in the future? Also i'm really looking forward to the course you do on Peric's book, thanks a lot.
great explanation , thank you!
For higher reynolds numbers like 1000 or 500, what relaxation parameter values shall we choose? How to understand that?
Great initiative
wouldnt loop be starting from 1 to n-2 ?? in last video we discussed this since conduction is central scheme too we cannot calculate the two ends and hence we need to leave those index.
Oh never mind, the ending index is exclusive lol... silly!
Hello sir, please share your mail I'd or contact no.
My research area is based on diffusion eq so I want your guidance.
tanmayagrawal7@gmail.com
Thankyou sir
Hi sir need your help for my research work. How can i connect to you sir
tanmayagrawal7@gmail.com
Sir if the air is also moving with some velocity along with the free jet, how do we initialize?
Thank you so much Sir. Can you please provide the coding for the case of Slip-flow boundary conditions with discritization
You may try using u = u_Boundary for using slip walls. u_Boundary is the velocity for your slip wall.
Planar geometry or axisymmetric? How do we find teh volume flow rate?
You can do areaAverage in CFD post using velocity as the variable to obtain the flow rate.
Sir can you please guide.... For a CAE(CFD) engineer , which programming language is good to learn C++ or python.
Python would be better.
@@TanmayAgrawal7 okay sir
Very nice Video. Thank so much sir
A fellow CFD Enthusiast from NIT Hamirpur here. Loved your videos, proud NIT-H Junta!
Meerpur!
@@TanmayAgrawal7 😬😁
Sir do you have any video for lid driven cavity fvm method in python
import numpy as np import matplotlib.pyplot as plt import math as m # Geometry Defination and constant parameters (SI Units) L = 1 # Length rho = 1 #density k = 0.1 #diffusion coefficient # Mesh N = int(input("Enter number of nodes:"))# number of cells and cell centers dx = L / N # mesh size x = np.linspace(0,L, 2*N + 1) # grid points at cell center and faces x = np.delete(x, range(2,2*N,2)) # only center values # Defining advection strength and diffusion strength u = float(input("Enter flow field value: ")) # value of flow field F = rho * u #advection strength D = k / dx #diffusion strength Pe = F / D #Peclet Number print(Pe) #Boundary Conidtion phi = np.zeros(N+2) phi[0] = 1 phi[N+1] = 0 # Defining Coefficients based on Finite Volume Method coeff = np.zeros((N,N)) # coefficient matrix # Boundary Node First A1 = 0 #aw A2 = (D - (F/2)) #ae A3 = ((2 * D) + F) * phi[0] #Su A4 = -((2 * D) + F) #Sp A5 = A1 + A2 - A4 #ap # Middle Nodes B1 = A2 #ae B2 = (D + (F/2)) #aw B5 = B1 + B2 #ap # Boundary Node Last C1 = B2 #aw C2 = 0 #ae C3 = ((2 * D) - F) * phi[N+1] #su C4 = -((2 * D) - F) #sp C5 = C1 + C2 - C4 for i in range(N): for j in range(N): if i == j == 0: coeff[i,j] = A5 coeff[i,j+1] = -A2 elif i == j == N-1: coeff[i,j] = C5 coeff[i,j-1] = -A2 elif i == j: coeff[i,j] = B5 coeff[i,j+1]= -A2 coeff[i,j-1]= -B2 # Defining constants constant = np.zeros (N) for i in range(N): if i == 0: constant[0] = A3 if i == N-1: constant[N-1] = C3 # solving matrix t = np.linalg.solve(coeff, constant) #inserting the boundary values in the final result t = np.insert(t, 0 , phi[0]) t = np.insert(t,N+1, phi[N+1]) # Analytical Solution phiA = [] for i in x[1:N+1]: b = m.exp((rho*u*i)/k) - 1 c = m.exp((rho*u*L)/k) - 1 a = phi[0] +((b/c) * (phi[N+1]-phi[0])) phiA.append(a) phiA.insert(0,phi[0]) phiA.insert((len(phiA)+1), phi[N+1]) # Plotting the result plt.figure(figsize=(10, 6)) plt.plot(x, t, marker='o', linestyle='-', color='b', label='Numerical Solution') plt.plot(x, phiA, marker='s', linestyle='-', color='g', label='Analytical Solution') plt.xlabel('Distance (m)', fontsize=14) plt.ylabel('phi', fontsize=14) plt.title('Analytical vs Numerical Solution', fontsize=16) plt.grid(True, which='both', linestyle='--', linewidth=0.5) plt.legend() plt.xticks(fontsize=12) plt.yticks(fontsize=12) plt.tight_layout() # Display the plot plt.show() is this a right approach
import numpy as np import matplotlib.pyplot as plt import math as m # Geometry Defination and constant parameters (SI Units) L = 1 # Length rho = 1 #density k = 0.1 #diffusion coefficient # Mesh N = int(input("Enter number of nodes:"))# number of cells and cell centers dx = L / N # mesh size x = np.linspace(0,L, 2*N + 1) # grid points at cell center and faces x = np.delete(x, range(2,2*N,2)) # only center values # Defining advection strength and diffusion strength u = float(input("Enter flow field value: ")) # value of flow field F = rho * u #advection strength D = k / dx #diffusion strength Pe = F / D #Peclet Number print(Pe) #Boundary Conidtion phi = np.zeros(N+2) phi[0] = 1 phi[N+1] = 0 # Defining Coefficients based on Finite Volume Method coeff = np.zeros((N,N)) # coefficient matrix # Boundary Node First A1 = 0 #aw A2 = (D - (F/2)) #ae A3 = ((2 * D) + F) * phi[0] #Su A4 = -((2 * D) + F) #Sp A5 = A1 + A2 - A4 #ap # Middle Nodes B1 = A2 #ae B2 = (D + (F/2)) #aw B5 = B1 + B2 #ap # Boundary Node Last C1 = B2 #aw C2 = 0 #ae C3 = ((2 * D) - F) * phi[N+1] #su C4 = -((2 * D) - F) #sp C5 = C1 + C2 - C4 for i in range(N): for j in range(N): if i == j == 0: coeff[i,j] = A5 coeff[i,j+1] = -A2 elif i == j == N-1: coeff[i,j] = C5 coeff[i,j-1] = -A2 elif i == j: coeff[i,j] = B5 coeff[i,j+1]= -A2 coeff[i,j-1]= -B2 # Defining constants constant = np.zeros (N) for i in range(N): if i == 0: constant[0] = A3 if i == N-1: constant[N-1] = C3 # solving matrix t = np.linalg.solve(coeff, constant) #inserting the boundary values in the final result t = np.insert(t, 0 , phi[0]) t = np.insert(t,N+1, phi[N+1]) # Analytical Solution phiA = [] for i in x[1:N+1]: b = m.exp((rho*u*i)/k) - 1 c = m.exp((rho*u*L)/k) - 1 a = phi[0] +((b/c) * (phi[N+1]-phi[0])) phiA.append(a) phiA.insert(0,phi[0]) phiA.insert((len(phiA)+1), phi[N+1]) # Plotting the result plt.figure(figsize=(10, 6)) plt.plot(x, t, marker='o', linestyle='-', color='b', label='Numerical Solution') plt.plot(x, phiA, marker='s', linestyle='-', color='g', label='Analytical Solution') plt.xlabel('Distance (m)', fontsize=14) plt.ylabel('phi', fontsize=14) plt.title('Analytical vs Numerical Solution', fontsize=16) plt.grid(True, which='both', linestyle='--', linewidth=0.5) plt.legend() plt.xticks(fontsize=12) plt.yticks(fontsize=12) plt.tight_layout() # Display the plot plt.show() is this a right approach?
where is the 'Domain Size" value explained? why is it this value that the y domain is subtracted from? I understand that the y domain must be reversed to properly plot the numpy data on the cartesian plane. However, where does the domain value play into this?
hey there, one more question for you. at 8:30, you show the code, and identify the equation for T_new[i] = (a_E*T[i-1] + a_W*T[i+1]) / a_P. I'm confused because the generalized finite volume discretization formula was given as a_p = a_e * T_e + a_w * T_w. The T_w should be the lower index as the west face is to the left. Edit - looks like it's set back to normal later in the video. thanks and quick feedback!
Question - at about 13:20, you introduce that the thermal conductivity at the east face could be different than the thermal conductivity at the west face. wouldn't that indicate that k was a function of x, and would have to be handled in the integral appropriately?
thanks for these videos! Question about the example at the end. when plugging in a U value above 5, the resulting values grow exceedingly large. Is this due to the difference in gridded values becoming too large to handle using the simple numerical approach applied here? I'm assuming an analytical solution could handle any sized U value.
I modelled a fluid sediment model in a flume with a circular pier at the middle of the flume to observe the scour, but after running simulation for a few minutes, my velocity vector is not moving down ward, it bends around the pierwall which should be but the downward velocity which causes horseshoe vortex is not showing, the vectors will not moving downward after interacting with the pile, what is the reason? Please help me understand
good!
Very clear explanation !
Sir , i have a question please and i will very happy if you anwser ,what is the best in your opinion to use python or ansys for simulation ❤❤
Both have their own pros and cons.
Just a small correction - exact solution should be {(T_b - T_a)*x/L + (q*x/(2*k) )*(L-x) } + T_a
Never thought I would be doing CFD coding with this ease. During the Masters I use to barely pass the CFD course and wasn't really able to understand the course well. But after going through the theoretical concepts by Prof. Suman (IIT Kharagpur) online lectures and now doing the Python coding it seems so easy and fun to learn CFD and implement it. Thanks Tanmay 😇
Sir, I have question, what about gravity when our channel bottom surface is inclined . At that time the gravity will act vertically, while it should act as perpendicular to the surface
also are we taking the assumption that ue=uw and vn=vs. because when we calculate the a_p the coefficient get cancelled out
hello can you explain the code for the QUICK scheme, please?
Can you also include heat transfer with fluid flow, it could be a simple 1D pipe flow with mass, momentum and energy equation, thanks
Nice lecture but flip window of your video and written which not able to write at a time. Thank you🙏
also why are a_p, a_w and a_e defined inside the loop?
is (rho*u) constant i.e is Fe=Fw?
Can you please tell me logic behind starting from 200 and ending at 864 matlab code line number 20
If we solve this 2D problem with matrix based formulation, it’s NOT necessary to have the numerical error , isn’t it ?!
Hi Tanmay, thank you for providing beginner friendly tutorials. It’s much understandable by this way. I can’t thank you enough. I’m grateful to find your channel!
I am quite confused between the difference of conduction, diffusion and convection. I know what conduction and convection and how they differ from each other. but what is diffusion? Is diffusion and conduction same? or are conduction and convection are types of diffusion? what are the difference between these three?
diffusion is flow from high to low based only on the driving force of a system to come to equilibrium. in the case of these problems (not with the external heat source q), but having a temp of 1 at one part of the system and 0 elsewhere, the system will want to come to equilibrium. diffusion is the name given to that mechanism. convection and conduction are more external heat being transferred into a system. in this case the q is a conduction term, like there is a heater on which the system is sitting. convection would be like a fan blowing on the system to cool it down.
Hey, this might sound dumb. at 3:48, should it not be -A?
bless you Sir <3
I am so glad that you have produced this series of tutorials. One thing that could be improved is keeping the focus of your entries clearly above the controls of the player at the bottom of the view port, e.g. closer to the center of the viewing window. It was very difficult for me to see what you had typed for the central difference because it was obscured by the progress line. Thank you.
Thanks for pointing it out! Will keep in mind.
I am going to start my first course related to CFD programming with your python course after learning Ansys. I just need a little guidance from you about which software should I learn as I only want to learn one software. Either Matlab or Python. Can you please suggest me one of these which is most commonly used in the industry nowadays and with which I can go for Phd also in future?
Python would be better overall.
Super informative video. At 10:39, the density is incorrect?
Hi Tanmay, I'm following your lectures and just wanted to say Thanks!! :)