از پارسکدرز بیشترین بهره را ببرید و رویای کاری خود را زندگی کنید.
پنج سال پیش منتشر شده
تعداد بازدید: 345
کد پروژه: 218951
شرح پروژه
#پروژه_جدید
#کد_پروژه: 14811
موضوع: پروژه cfd با فورترن
سلام.درمورد cfd نرم افزار فرترن یه کد فقط میخوام
Program main
Include 'common.f95'
Ni=it
Nim1=Ni-1
! %-%-%-%-% physical data %-%-%-%-%
u=0.1 !m/s
gama=0.1
ro=1
aL=1 !m
phi0=1
phiL=0
! %-%-%-%-% Grid generation %-%-%-%-%
dx=aL/(Ni-2)
Xc(1)=0
Do i=2,Nim1
Xc(i)=Xc(i-1)+dx
End do
Xp(1)=Xc(1)
Do i=2,Nim1
Xp(i)=(Xc(i)+Xc(i-1))/2
End do
Xp(Ni)=aL
!%-%-%-%-%Coefficient calculation%-%-%-%-%
Do i=2,Nim1
Dw(i)=gama/(Xp(i)-Xp(i-1))
De(i)=gama/(Xp(i+1)-Xp(i))
Fw(i)=ro*u
Fe(i)=ro*u
aw(i)=Dw(i)+(Fw(i)/2)
ae(i)=De(i)-(Fe(i)/2)
ap(i)=ae(i)+aw(i)+Fe(i)-Fw(i)
Su(i)=0
End do
! %-%-%-%-%Solver%-%-%-%-%
CALL TDMA
!%-%-%-%-%Saving data%-%-%-%-%
open(20, file = 'solu.plt')
write (20,21)
Do i=1,Ni
write (70,72)Xp(i),phi(i)
End do
! %-%-%-%-%Analytical solution%-%-%-%-%
Write (20,21)
DO i=1,Ni
fi=(phiL-phi0)*(exp(ro*u*xp(i)-1)/(exp(ro*u*aL/gama)-1))+phi0
Write (20,22)xp(i),fi
Print*,xp(i),fi
End Do
! %-%-%-%-%boundary condition%-%-%-%-%
ae(1)=0
ap(1)=1
aw(1)=0
Su(1)=1
ae(Ni)=0
ap(Ni)=1
aw(Ni)=0
Su(Ni)=0
Close(70)
21 format (2x,'variables=Xp,phi',/,2x,'zone')
22 format (2x,f7.3,2x,e15.8)
stop
Contains
! %-%-%-%-%TDMA SOLVER%-%-%-%-%
Subroutine TDMA
Include "common.f95"
dimension a(1000),b(1000),c(1000),d(1000),P(0:1000),Q(0:1000)
Do i=1,Ni
a(i)=ae(i)
b(i)=aw(i)
c(i)=Su(i)
d(i)=ap(i)
End do
P(0)=0
Q(0)=0
Do i=1,Ni
term=1/(d(i)-(b(i)*P(i-1)))
P(i)=a(i)*term
Q(i)=(c(i)+(b(i)*Q(i-1)))*term
End Do
Do i=Ni,1,-1
phi(i)=P(i)*phi(i-1)+Q(i)
End do
P(Ni+1)=0
Q(Ni+1)=0
Do i=Ni,1,-1
term=1/(d(i)-a(i)*P(i+1))
P(i)=b(i)*term
Q(i)=(c(i)+a(i)*Q(i+1))*term
End do
Do i=1,Ni
phi(i)=P(i)*phi(i-1)+Q(i)
End do
Return
End subroutine TDMA
End program main
File common.f95:
parameter (it=7) or (it=22)
implicit double precision (a-h,o-z)
common Ni,Nim1
common ae(it),aw(it),ap(it),Su(it),Fw(it),Fe(it),Dw(it),De(it)
common Xc(it),Xp(it)
common phi(0:1000)
همچین کدیه
لطفاً زمان و قیمت پیشنهادی تون رو بفرمایید
مهارت ها و تخصص های مورد نیاز
مبلغ پروژه
100,000 تومان
مهلت برای انجام
2روز
وضعیت مناقصه
انجام شده
درباره کارفرما
عضویت سیزده سال پیش
نیاز به استخدام فریلنسر یا سفارش پروژه مشابه دارید؟
قادر به انجام این پروژه هستید؟
متأسفانه مهلت ارسال پیشنهاد این پروژه به پایان رسیده و پروژه بسته شده است؛ اما فرصتهای متعددی در سایت موجود میباشد.
به رایگان یک حساب کاربری بسازید
مهارتها و تخصصهای خود را ثبت کنید، رزومه و نمونهکارهای خود را نشان دهید و سوابق کاری خود را شرح دهید.
به شیوهای که دوست دارید کار کنید
برای پروژههای دلخواه در زمان دلخواه پیشنهاد قیمت خود را ثبت کنید و به فرصتهای شغلی منحصر به فرد دسترسی پیدا کنید.
با اطمینان دستمزد دریافت کنید
از زمان شروع کار تا انتهای کار به امنیت مالی شما کمک خواهیم کرد. وجه پروژه را از ابتدای کار به امانت در سایت نگه خواهیم داشت تا تضمین شودکه بعد از تحویل کار دستمزد شما پرداخت خواهد شد.
میخواهید شروع به کار کنید؟
یک حساب کاربری بسازید
بهترین مشاغل فریلنسری را پیدا کنید
رشد شغلی شما به راحتی ایجاد یک حساب کاربری رایگان و یافتن کار (پروژه) متناسب با مهارتهای شما
است.
پیدا کردن کار (پروژه)
تماشای دمو روش کار