Having different value for the same function

I have a simple function
P_MCH = [0.20598017,0.270460009,0.313455273];
P_TOL = [0.20598017,0.270460009,0.313455273];
P_H2 = [4.58803966,4.459079983,4.373089453];
Rp = @(p) p(1)* p(2)*P_MCH.*(1-P_TOL.*P_H2.^3/(P_MCH*316.8159);
While running the Rp is calculated as 0.74409.
In excel it is 0.715944
Can you help?

3 Comments

What are the values of p(1) and p(2)?
Also, what do you want do do with the arrays?
It seems you'd want to do operations element by element and then sum?
Are you sure you want to use the / operator and not the ./ operator ?
Can you provide the values of p(1) and p(2)?

Sign in to comment.

Answers (1)

Looks like your equation is missing parentheses, and now that I think about it, Excel might handle calculations differently—like summing the numerator and denominator before dividing. MATLAB gives 0.74409, probably because it's using matrix division (/) instead of element-wise division (./), which changes how the calculation works and introduces a scalar value. Meanwhile, Excel gives 0.715944, which makes sense if it's actually doing element-wise division and summing things correctly. So yeah, maybe the equation formatting is the issue?

Products

Release

R2023a

Tags

Asked:

on 7 Aug 2023

Answered:

on 1 Feb 2025

Community Treasure Hunt

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

Start Hunting!