2017-02-10 147 views
0

为什么我的代码不计算变量cos_theta,然后thetaMATLAB:为什么我没有得到任何输出?

代码:

alpha = alpha_min:alpha_step:alpha_max; 
cos_theta_0 = -1./(2.*alpha)+sqrt(1.+1./(4.*alpha.^2)); 
theta_0 = acos(cos_theta_0); 
hmax = (sqrt(1+4.*alpha.^2)-1)./(2.*log(2)); 

for h = 1:(K-2); 
    if h<= hmax; 
    cos_theta(h,:) = cos_theta_0- h.*log(2)./alpha; 
    theta(h,:) = acos(cos_theta(h,:)); 
    else break; 
    end 
end 
+0

寻求调试帮助的问题(“为什么这个代码不工作?”)必须包含所需的行为,特定的问题或错误以及在问题本身中重现问题所需的最短代码。没有明确问题陈述的问题对其他读者无益。 – dasdingonesin

+0

另请参见:[MCVE](http://stackoverflow.com/help/mcve) – dasdingonesin

+0

@dasdingonesin对不起,我对Matlab没有信心,而且我正试图尽可能快地改进它。 – ElenaPhys

回答

1

目前还不清楚是什么你想在这里做的:

h <= hmax 

您比较恒定的 'H' 与矢量 'HMAX'。

+0

谢谢,但我以错误的方式抄录了我的代码。圆括号是可以的,但它仍然不起作用。任何想法? – ElenaPhys

+0

要知道正在输入哪个循环,您需要告诉我们您使用的alpha和K的值。 –

+0

'K = 8','alpha_step = 0.5; alpha_min = 1; alpha_max = 10.;',并在随后的试验中,我用相同的模式设置了'h'。 – ElenaPhys

相关问题