How to only collect real part of the cube root

1 次查看(过去 30 天)
I am having a problem while calculating the cube root in the following code; I am getting an imaginary value of R0, which is not physically possible for the problem! how do I could get the real part only in this problem? please help!
N=50
R= linspace(30e-9,100e-9,N)
Nt= linspace(1e17,1e18,N)
Nd= 5e24
for i= N
R0(i) =((3*R(i).^2).*(-(Nt(i)./Nd)+(R(i)./3))).^(1/3)
end

采纳的回答

Steven Lord
Steven Lord 2019-6-10
编辑:Steven Lord 2019-6-10
Use the nthroot function. With this you can replace your loop with element-wise operators and process your whole vector of data in one nthroot call.
  1 个评论
Anil Kumar
Anil Kumar 2019-6-14
Thank You steven! i tried your suggestion but could not implement this.Can you demosntrate this fucntion in the above mentioned code? how to use it? Thank you.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Argument Definitions 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by