numerical integration dimension error

ok now Im getting another type of error
X = 0:1:100; Y = X.^(-1/2)*exp(-0.5*(0.00009996^2/X+34.3713^2*X)); Z =trapz(X,Y)
??? Error using ==> mldivide
Matrix dimensions must agree.
Whats wrong here? and how can I numerically integrate Y?

 Accepted Answer

You need a dot before every ^, * and / when working with vectors.
Y = X.^(-1/2).*exp(-0.5*(0.00009996^2./X+34.3713^2*X));

3 Comments

what do you mean?
X = 0:1:100; Y = X.^(-1/2).*exp(-0.5.*(0.00009996.^2./X+34.3713.^2.*X)); Z = trapz(X,Y)
is that correct as it produces Z = NAN which I was not expecting?
You may not be expecting NAN, but that is how to make Y from X. Look at the exponent, it has values from -590 to -Inf. What do you think e^-590 is? ZERO (for all intents and purposes).
Thanks for your wisdom, I can get an answer if I change it to something like
X = 0.001:0.001:0.003; Y = X.^(-1/2).*exp(-0.5*(0.00009996^2./X+34.3713^2*X)); Z = trapz(X,Y)
Z = 0.0172
thanks again for your comments (dumb matlab coders like me need help!)

Sign in to comment.

More Answers (0)

Categories

Community Treasure Hunt

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

Start Hunting!