Why Doesn't My Blasius Equation Script Match Fluid Mechanics Data?

  • Thread starter Thread starter javiergra24
  • Start date Start date
  • Tags Tags
    Python
Join the discussion
Registration is free. Ask a follow-up in this thread, or start your own.
1 reply · 4K views
javiergra24
Messages
19
Reaction score
0
Hi everybody

I'm writing a script in Python to solve the Blasius equation but it does not work (well, script works and it generates the plot), numerical results does not match with data I've seen in fluid mechanics books.

Please anyone could help me? Thank you very much

Script is

Code:
import sys, pylab, numpy
from pylab import *
from numpy import *
import matplotlib.pyplot as plt


deta=0.0001
total=10


e = []
f = []
g = []
h = []


fvec=0; gvec=0; hvec=0.3219

etavec=0.0

while etavec <= 10:

fvec = fvec + gvec * deta
gvec = gvec + hvec * deta
hvec = hvec -(1/2) * fvec * hvec * deta
etavec = etavec + deta
e.append(etavec)
f.append(fvec)
g.append(gvec)
h.append(hvec)
print etavec,fvec,gvec

numpy.savetxt("blasius.dat", transpose((e,f,g,h)),delimiter=' ')

pylab.figure()
pylab.plot(e,g)
pylab.plot(e,h)
xticklines = getp(gca(), 'xticklines')
yticklines = getp(gca(), 'yticklines')
xgridlines = getp(gca(), 'xgridlines')
ygridlines = getp(gca(), 'ygridlines')
xticklabels = getp(gca(), 'xticklabels')
yticklabels = getp(gca(), 'yticklabels')
#lines1 = pylab.plot(e,f)
lines2 = pylab.plot(e,g)
lines3 = pylab.plot(e,h)
#pylab.setp(lines1, color='b', linewidth=3.0)
pylab.setp(lines2, color='r', linewidth=3.0)
pylab.setp(lines3, color='k', linewidth=3.0)
setp(xticklines, 'linewidth', 3)
setp(yticklines, 'linewidth', 3)
setp(xgridlines, 'linestyle', '--')
setp(ygridlines, 'linestyle', '--')
setp(yticklabels, fontsize='xx-large')
setp(xticklabels, fontsize='xx-large')
xlabel('$\eta$',fontsize=30)
ylabel('$f(\eta) \quad \partial_{\eta} f(\eta) \quad \partial_{\eta \eta}f(\eta)$',fontsize=30)
axis([0.0,10,-0.9,20.9])
#legend( (lines1, lines2, lines3), ('$\f(\eta)$', '$\partial_{\eta} f(\eta)$', '$\partial_{\eta \eta}f(\eta)$'))


grid(True)
pylab.show()
 
Physics news on Phys.org




Hi there,

Thank you for sharing your script and the issue you are facing. It can be quite frustrating when the results don't match with the expected data. I would be happy to help you troubleshoot the issue and suggest some possible solutions.

Firstly, have you checked the input parameters and initial conditions in your script? It's important to make sure they are correct and match with the data you are comparing with.

Secondly, have you tried using different values for deta and total? Sometimes, changing these parameters can make a difference in the results.

Also, it would be helpful to see the data you are comparing with and the specific differences you are observing. This can give us a better idea of where the issue might be.

Lastly, have you tried checking for any errors or warnings in your script? Sometimes, these can point towards the source of the discrepancy.

I hope these suggestions help and I am looking forward to hearing back from you with more information. Good luck with your script!