MATLAB: Problem with a code MATLAB Hi, I need to find out the minimum N so that Eg<10^(-7). I got that N=199…and it's to much… Can anyone help me what is the problem with my code? Thanks, << >> Best Answer Here is a solution using no loops, and only vectorized code:hy = 1/2000;mv = 0:5000;den = sqrt(sum((1-(2/5*mv*hy).^2).^2));pfx = @(nv) (-1).^nv ./ (2*nv + 1).^3;trg = @(nv) bsxfun(@times, (2*nv+1)/5, pi*mv*hy);foo = @(nv) bsxfun(@times, pfx(nv), cos(trg(nv)));bar = @(nv) sqrt(sum((32/pi^3 * sum(foo(nv)) - (1-(2/5*mv*hy).^2)).^2));fun = @(N) bar((0:N)') / den;First lets take a look at the function:>> X = 1:300; % range of N values>> Y = arrayfun(fun, X);>> semilogy(X,Y)And now the first value <1e-7 occurs for an N of:>> Z = Y<1e-7;>> X(find(Z,1,'first'))ans = 198 Related SolutionsMATLAB: Extracting values from sym matrix solutions m.Nv11 % would give you the value , also use double() to get the result in decimal form MATLAB: I want to plot phantom image’s sampling pattern given here. imshow(M) perhaps Related QuestionCan someone do this calculation without for loopsMatlab Trigonometry and built in functionsImplementing mathematical functions in Matlab
Best Answer