MATLAB: Index exceeds matrix dimension

MATLABmatrix array

Dear sir , I am getting error index exceeds matrix dimension in RK method of order four. Actually i am unable to understood as in my case m_cp,m_rg,m_di,v_cp,v_cpdot values are changing with time so i have given for loop but while executing getting error
"Index exceeds matrix dimensions.
Error in brain (line 37)
m_cp(m)=(m_rg(m)+m_di(m)-((v_aft*gamma*p_cp(m)*v_cpdot(m))/(r*th*v_cp(m))))/(1+(v_aft*gamma*r*tcp)/(r*th*v_cp(m)));
What to do here in order to get result..here all other values are constants so we cant give loop is it possible to solve or not..

Best Answer

Debashis - please use the MATLAB debugger to understand where in the above line of code the error Index exceeds matrix dimension is being raised. This error message is telling you that you are trying to access an element in an array using an index that exceeds the dimension of the array.
Are the dimensions of the arrays m_cp, m_rg, m_di, v_cp, and v_cpdot identical? i.e. are they all nx1? Also, how is m determined?
Your code assumes that all five of these arrays are of the same dimension, so they all must be (say) nx1 and that m can only be an integer in the interval [1, n].