Clear Filters
Clear Filters

when i run the following code its showing an error that dimensions must agree

1 view (last 30 days)
w=(2.3.^-u.*log(1.+(0.5615./u)-0.4385*(((1.0421.*u))+(1/(1.+u.^1.5))+(1.0801./(1.+(2.35.*u.^(-1.0919))))))^-2./(0.5616+(0.4385+2.35.*2.3^(-2.283.*u))))
i want to calculate 'w' for a set of 'u' values.i'm confused while arranging '.' when i run this i get "error usin + and matrix dimensions must agree".

Accepted Answer

madhan ravi
madhan ravi on 11 Dec 2018
Edited: madhan ravi on 11 Dec 2018
If you still have problem then use bsxfun() with mtimes and rdivide appropriately if your usig version prior to 2016b
w=(2.3.^-u.*log(1.+(0.5615./u)-0.4385.*(((1.0421.*u))+(1/(1.+u.^1.5))+(1.0801./(1.+(2.35.*u.^(-1.0919))))))^-2./(0.5616+(0.4385+2.35.*2.3^(-2.283.*u))))
^---dot missed
  5 Comments
vaishnavi potharaju
vaishnavi potharaju on 12 Dec 2018
Edited: madhan ravi on 12 Dec 2018
sir i tried to run my code with bsxfnc but as it is a very complex equation i couldnt do it.so i split the equation into small parts as follows and now im able to run it.
w=((2.3).^-u.*log(1.+(0.5615./u)-0.4385.*(((1.0421.*u))+(1./(1.+u.^1.5))+(1.0801./(1.+(2.35.*u^(-1.0919)))))).^-2./(0.5616+(0.4385*2.3.^(-2.2803.*u))))
w1=1.+(0.5615./u)
w2=1.0801./(1.+(2.35.*u.^(-1.0919)))
w3=1./(1.+u.^1.5)
w4=1.0421.*u
w5=2.3.^-u
w6=0.4385.*2.3.^(-2.2803.*u)
w7=0.4385.*(w4+w3+w2).^-2
w8=log(1+w1-w7)
w9=w8.*w5
w10=0.5616+w6
wu=w9./w10

Sign in to comment.

More Answers (0)

Categories

Find more on Numeric Types in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!