MATLAB: What does this declaration do

differential equationsvariables

Hello I am new to matlab, just want to know what is the importance of this xval such that values are returned differently when using 3 different variable instead of two variable?
sample code:
function g=dVdx(xval,yval,cst)
g = 4*cst(1) - (4*yval)/cst(1)^2 ;
by input
>> dVdx(0,5E-6,[0.02]) I will get an answer of 0.0300.
however
function g=dVdx(xval,yval)
g = 4*xval - (4*yval)/xval^2 ;
Input
>> dVdx(5E-6,0.02)
I will get a return number of -3.2000e+09 .

Best Answer

In your first example,
>> dVdx(0,5E-6,[0.02]) I
note how the first input 0 which is the xval is not used in your calculation (with yval equal to %E-6 and cst equal to 0.02)
g = 4*cst(1) - (4*yval)/cst(1)^2 ;
In your second example,
>> dVdx(5E-6,0.02)
xval is 5E-6 and yval is 0.02 for
g = 4*xval - (4*yval)/xval^2 ;
But the variables and their values aren't the same as your first example. If we substitute then we get
(1) g = 4*0.02 - (4*5E-6)/0.02^2 = 0.03
(2) g = 4*5E-6 - (4*0.02)/5E-6^2 = -3.2e+09
So you are using different values for each calculation (2 vs 3 inputs) and so will get different answers.