انجمن سایت کلیدستان


رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
خطای Not enough input arguments

خطای Not enough input arguments

#2
(۱۳۹۴/۱۲/۱۲, ۱۱:۴۸ ق.ظ)صفیان نوشته: سلام دوستان
من برای حل 12 تا معادله دیفرانسیل مرتبه 1 معمولی یک تابع نوشتم ،چندین بار هم تمام روابط را چک کردم منتها هر بارهمین اررور  را می دهد،از دوستان کسی می دونه مشکل از کدوم قسمتش می باشد؟ خیلی ممنون

function df = deriv(t,f,u)

T10=300;   T20=300;   F10=5;  F20=10;   Fr=1.9;    Fp=0;   F1=4.99;% selected by myself
CA10=4;    CA20=3;    V1=1;      V2=0.5;    V3=1;          F2=9.99;% selected by myself
E1=5*10^4;            E2=5.5*10^4;    K1=3*10^6;            K2=3*10^6;
deltaH1=-5*10^4;      deltaH2=-5.3*10^4;     Hvap=5;    CP=0.231;  R=8.314;    ROO=1000;
alphaA=2;  alphaB=1;  alphaC=1.5; alphaD=3;  MWA=50;    MWB=50;    MWC=50;     MWD=18;
Q1=3*10^5; Q2=3*10^5; Q3=3*10^5; 

XD=1-((MWA*f(10))/ROO)-((MWB*f(11))/ROO)-((MWC*f(12))/ROO);
K=((alphaA*f(10))*MWA/ROO)+((alphaB*f(11))*MWB/ROO)+((alphaC*f(12))*MWC/ROO)+(alphaD*XD*ROO);
CAr=(alphaA*f(10))/K;
CBr=(alphaB*f(11))/K;
CCr=(alphaC*f(12))/K;
Frm=(Fr/MWD)*(((ROO-f(10)*MWA-f(11)*MWB-f(12)*MWC)+(f(10)+f(11)+f(12))*MWD));

df = zeros (12,1);
df(1,1) = (F10/V1)*(T10-f(1))+(Fr/V1)*(f(9)-f(1))-(deltaH1/(ROO*CP))*K1*((exp(-E1/(R*f(1)))*f(2)))-((deltaH2/(ROO*CP))*K2*(exp(-E2/(R*f(1)))*f(2)))+(Q1/(ROO*CP*V1));
df(2,1) = (F10/V1)*(CA10-f(2))+(Fr/V1)*(CAr-f(2))-(K1*(exp(-E1/R*f(1)))*f(2))- K2*(exp(-E2/(R*f(1)))*f(2));
df(3,1) = (-F10/V1)*f(3)+(Fr/V1)*(CBr-f(3))+(K1*exp(-E1/(R*f(1)))*f(2));
df(4,1) = (-F10/V1)*f(4)+(Fr/V1)*(CCr-f(4))+(K2*exp(-E2/(R*f(1)))*f(2));
df(5,1) = (F1/V2)*(f(1)-f(5))+(F20/V2)*(T20-f(5))+((-deltaH1/(ROO*CP))*K1*(exp(-E1/R*f(5)))*f(6))+((-deltaH2/(ROO*CP))*K2*(exp(-E2/(R*f(5)))*f(6)))+(Q2/(ROO*CP*V2));
df(6,1) = (F1/V2)*(f(2)-f(6))+(F20/V2)*(CA20-f(6))-(K1*(exp(-E1/(R*f(5)))*f(6))-K2*(exp(-E2/R*f(5)))*f(6));
df(7,1) = (F1/V2)*(f(3)-f(7))-((F20/V2)*f(7))+(K1*exp(-E1/(R*f(5)))*f(6));
df(8,1) = (F1/V2)*(f(4)-f(8))-((F20/V2)*f(8))+(K2*(exp(-E2/R*f(5)))*f(6));
df(9,1) = (F2/V3)*(f(5)-f(9))-((Hvap*Frm)/(ROO*CP*V3))+(Q3/(ROO*CP*V3));
df(10,1) = (F2/V3)*(f(6)-f(10))-(Fr/V3)*(CAr-f(10));
df(11,1) = (F2/V3)*(f(7)-f(11))-(Fr/V3)*(CBr-f(11));
df(12,1) = (F2/V3)*(f(8)-f(12))-(Fr/V3)*(CCr-f(12));
end
سلام
دوست عزیز شما در داده ها f را تعریف نکردید بعد در قسمت xd استفاده کردید. به همین علت این اخطار رو بهتون میده با تعیین مقدار برای f مشکل حل میشه. پیشنهاد می کنم ابتدای هر برنامه دستور clear all,clc رو قرار بدید و کمی مرتب بنویسید تا به راحتی مشکل برنامه رو پیدا کنید.
موفق باشید
کد پی‌اچ‌پی:
function df gghghhggh(~,f,~)
T10=300  T20=300  F10=5 F20=10  Fr=1.9   Fp=0  F1=4.99;% selected by myself
CA10
=4   CA20=3   V1=1     V2=0.5   V3=1         F2=9.99;% selected by myself
E1
=5*10^4           E2=5.5*10^4   K1=3*10^6           K2=3*10^6;
deltaH1=-5*10^4     deltaH2=-5.3*10^4    Hvap=5   CP=0.231 R=8.314   ROO=1000;
alphaA=2 alphaB=1 alphaC=1.5alphaD=3 MWA=50   MWB=50   MWC=50    MWD=18;
Q1=3*10^5Q2=3*10^5Q3=3*10^5;f(10)=1;f(11)=2;f(12)=1

XD=1-((MWA*f(10))/ROO)-((MWB*f(11))/ROO)-((MWC*f(12))/ROO);
K=((alphaA*f(10))*MWA/ROO)+((alphaB*f(11))*MWB/ROO)+((alphaC*f(12))*MWC/ROO)+(alphaD*XD*ROO);
CAr=(alphaA*f(10))/K;
CBr=(alphaB*f(11))/K;
CCr=(alphaC*f(12))/K;
Frm=(Fr/MWD)*(((ROO-f(10)*MWA-f(11)*MWB-f(12)*MWC)+(f(10)+f(11)+f(12))*MWD));

df zeros (12,1);
df(1,1) = (F10/V1)*(T10-f(1))+(Fr/V1)*(f(9)-f(1))-(deltaH1/(ROO*CP))*K1*((exp(-E1/(R*f(1)))*f(2)))-((deltaH2/(ROO*CP))*K2*(exp(-E2/(R*f(1)))*f(2)))+(Q1/(ROO*CP*V1));
df(2,1) = (F10/V1)*(CA10-f(2))+(Fr/V1)*(CAr-f(2))-(K1*(exp(-E1/R*f(1)))*f(2))- K2*(exp(-E2/(R*f(1)))*f(2));
df(3,1) = (-F10/V1)*f(3)+(Fr/V1)*(CBr-f(3))+(K1*exp(-E1/(R*f(1)))*f(2));
df(4,1) = (-F10/V1)*f(4)+(Fr/V1)*(CCr-f(4))+(K2*exp(-E2/(R*f(1)))*f(2));
df(5,1) = (F1/V2)*(f(1)-f(5))+(F20/V2)*(T20-f(5))+((-deltaH1/(ROO*CP))*K1*(exp(-E1/R*f(5)))*f(6))+((-deltaH2/(ROO*CP))*K2*(exp(-E2/(R*f(5)))*f(6)))+(Q2/(ROO*CP*V2));
df(6,1) = (F1/V2)*(f(2)-f(6))+(F20/V2)*(CA20-f(6))-(K1*(exp(-E1/(R*f(5)))*f(6))-K2*(exp(-E2/R*f(5)))*f(6));
df(7,1) = (F1/V2)*(f(3)-f(7))-((F20/V2)*f(7))+(K1*exp(-E1/(R*f(5)))*f(6));
df(8,1) = (F1/V2)*(f(4)-f(8))-((F20/V2)*f(8))+(K2*(exp(-E2/R*f(5)))*f(6));
df(9,1) = (F2/V3)*(f(5)-f(9))-((Hvap*Frm)/(ROO*CP*V3))+(Q3/(ROO*CP*V3));
df(10,1) = (F2/V3)*(f(6)-f(10))-(Fr/V3)*(CAr-f(10));
df(11,1) = (F2/V3)*(f(7)-f(11))-(Fr/V3)*(CBr-f(11));
df(12,1) = (F2/V3)*(f(8)-f(12))-(Fr/V3)*(CCr-f(12));
end 
rezavalizadeh95@gmail.com
پاسخ
 سپاس شده توسط صفیان


پیام‌های این موضوع
خطای Not enough input arguments - توسط صفیان - ۱۳۹۴/۱۲/۱۲, ۱۱:۴۸ ق.ظ
RE: خطای Not enough input arguments - توسط m-r-v - ۱۳۹۴/۱۲/۱۲, ۰۱:۴۶ ب.ظ
RE: خطای Not enough input arguments - توسط صفیان - ۱۳۹۴/۱۲/۱۴, ۰۱:۳۴ ب.ظ
RE: خطای Not enough input arguments - توسط m-r-v - ۱۳۹۴/۱۲/۱۴, ۰۸:۳۰ ب.ظ

پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان