필터 지우기
필터 지우기

i am geeting an error as "??? Input argument "int_H" is undefined.

조회 수: 1 (최근 30일)
vandana
vandana 2015년 7월 8일
댓글: vandana 2015년 7월 10일
I post here the function and the line that gives me this error: gas_species_balance.m file
function [C_species] = gas_species_balance(Gen_species, ...
C_species,int_H,int_r, A_r,A_z, v_r,v_z,vol,dt,ep)
relpar_species =1.0;
err_species=1.0;
iter_species=0;
while err_species>10^-3
iter_species=iter_species+1;
if iter_species>100
break;
end
for i=2:int_H+1
for j=1:int_r
aP(i,j)=0.;
source(i,j)=0.;
aPrev=ep(i,j)*vol(i,j)/dt;
aP(i,j)=aP(i,j)+aPrev(i,j);
  댓글 수: 3
Jan
Jan 2015년 7월 8일
@vandana: I've formatted your code. Please use the "{} Code" button. Thanks.
vandana
vandana 2015년 7월 9일
Hi Jan Simon, I am not getting it.. I have given the full code below... please help

댓글을 달려면 로그인하십시오.

채택된 답변

Jan
Jan 2015년 7월 8일
There are several missing end statements in the code.
10^-3 is an expensive power operation, while 1e-3 is a cheap constant.
Please post (and read) the complete error message. The offending line might contain a call like gas_species_balance(a, b), while the later input arguments are missing.
  댓글 수: 3
Walter Roberson
Walter Roberson 2015년 7월 9일
You have not shown how you are invoking the function. Show the line of code that calls gas_species_balance
vandana
vandana 2015년 7월 9일
Hi
code is giving error at the line #13 which I am writing here for i=2:int_H+1 for j=1:int_r
I am invoking the function as in different .m file actuly C_species_CO2=gas_species_balance(Gen_CO2_species,C_species_CO2,A_r,A_z,v_r,v_z,int_r,int_H,vol,dt,ep);

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Thorsten
Thorsten 2015년 7월 9일
편집: Thorsten 2015년 7월 9일
You have to evoke the function with argument in the same order as you have defined the function. You define the function with H_int as the third argument, but call it with H_int as the 8th argument. Matlab does not match the arguments based on the names of the variables, it just matches the order.
BTW, 11 is quite a high number of arguments. You may want to reduce the number by aggregating variables, like
A(:,:,1) = A_r; A(:,:,2) = A_z;
v(1,:) = v_r; v(2,:) = v_z;
params = [nt_r,int_H,vol,dt,ep];
function(Gen_CO2_species,C_species_CO2, A, v, params)
  댓글 수: 1
vandana
vandana 2015년 7월 10일
hi I have evoked the function with arguments in same order as defined function but still facing the same error. I am getting the error at "for" loop only , code is not going upto the line where I am evoking the function

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Spectral Measurements에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by