Advertisement
Albinutte

Untitled

Mar 20th, 2015
212
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 1.35 KB | None | 0 0
  1. Вот было у тебя считай так:
  2. function Pogreshnost
  3.     true_integral = besseli(0, 1/2) * pi * exp(-0.5);
  4.     ns = 6 : 24;
  5.     y_R = zeros(length(ns), 1);
  6.     y_runge = zeros(length(ns), 1);
  7.     y_fact = zeros(length(ns), 1);
  8.     y_theory = zeros(length(ns), 1);
  9.     for i = 1 : length(ns)
  10.         %y_R(i) = 2 * sqrt((Simpson10(0, pi, ns(i)))^2 + (Simpson10_2(0, pi, ns(i)))^2);
  11.         an = Simpson10(0, pi, ns(i));
  12.         bn = Simpson10_2(0, pi, ns(i));
  13.         y_R(i) = 2 * sqrt(an^2 + bn^2);
  14.        
  15.         y_fact(i) = abs(true_integral - Rectangle10(0, pi, ns(i)));
  16.         h = pi / ns(i);
  17.         y_theory(i) = pi * 0.828115 * h * h / 24;
  18.        
  19.         y_runge(i) = abs(Rectangle10(0, pi, ns(i) * 2) -  Rectangle10(0, pi, ns(i))) / (2^2 - 1);
  20.     end;
  21.     semilogy(ns, y_R, '--', ns, y_fact, '-.', ns, y_theory, ':', ns, y_runge);
  22.     legend('с периодом', 'фактическая', 'теоретическая', 'рунге');
  23.    
  24. end
  25.  
  26. А теперь в цикле будет так:
  27.  
  28.     for i = 1 : length(ns)
  29.         %y_R(i) = 2 * sqrt((Simpson10(0, pi, ns(i)))^2 + (Simpson10_2(0, pi, ns(i)))^2);
  30.         an = Simpson10(0, pi, ns(i));
  31.         bn = Simpson10_2(0, pi, ns(i));
  32.     a2n = Simpson10(0, pi, ns(i) * 2);
  33.     b2n = Simpson10_2(0, pi, ns(i) * 2);
  34.         y_R(i) = 2 * (sqrt(an^2 + bn^2) + sqrt(a2n^2 + b2n^2);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement