Advertisement
Guest User

Untitled

a guest
Apr 5th, 2020
175
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 2.06 KB | None | 0 0
  1. % Исходные данные
  2. R_c=145;
  3. R_v=145;
  4. U_c=220 ;
  5. w=4000;
  6. Potok_nom=0.007;
  7. F=4000*[0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8];
  8. Potok= Potok_nom*[0 0.3 0.52 0.67 0.78 0.86 0.92 0.96 1.01 1.02] ;
  9. %Нормирование
  10. F_nom=U_c*w/R_v;
  11. F_norm= F/F_nom;
  12. Potok_norm=Potok/Potok_nom;
  13. % Поиск коэффициентов полинома 5 степени
  14. G5=[Potok_norm'  Potok_norm'.^3 Potok_norm'.^5 ];
  15. A5=G5'*G5;
  16. B5=G5'*F_norm';
  17. C5=inv(A5)*B5;
  18. p_norm5= [C5(3), 0, C5(2), 0, C5(1), 0];
  19. p5= F_nom*p_norm5% получаем полином p(Ф) 5 степени
  20. % Поиск коэффициентов полинома 3 степени
  21. G3=[Potok_norm'  Potok_norm'.^3 ];
  22. A3=G3'*G3;
  23. B3=G3'*F_norm';
  24. C3=inv(A3)*B3;
  25. p_norm3= [C3(2), 0, C3(1), 0];
  26. p3= F_nom*p_norm3% получаем полином p(Ф) 3 степени
  27. % Ищем значения  мдс из полинома
  28. x=0:0.001:1.02;
  29. F_raschet5=polyval(p5,x);
  30. % Вычислим значение невязки для полинома 5 степени
  31. j=1;
  32. I5=0;
  33. while  j<11
  34.     I5=I5+(F(j)-polyval(p5,Potok_norm(j)))^2;
  35.     j=j+1;
  36. end;
  37. F_raschet3=polyval(p3,x);
  38. % Вычислим значение невязки для полинома 3 степени
  39. j=1;
  40. I3=0;
  41. while  j<11
  42.     I3=I3+(F(j)-polyval(p3,Potok_norm(j)))^2;
  43.     j=j+1;
  44. end;
  45. % Строим графики
  46. x1=0:0.001*Potok_nom:1.02*Potok_nom;
  47. subplot(2,2,1)
  48. plot(x1,F_raschet5,Potok,F, '*' );
  49. xlabel('Ф ');
  50. ylabel('F , p5 ');
  51. legend ('p5(Ф)','F(Ф)')
  52. grid on;
  53. subplot(2,2,3);
  54. plot(x1,F_raschet3,Potok,F, '*'  );
  55. grid on;
  56. xlabel('Ф ');
  57. ylabel('F, p3 ')
  58. legend ('p3(Ф)','F (Ф )')
  59. F_raschet5=polyval(p_norm5,x);
  60. subplot(2,2,2);
  61. plot(x,F_raschet5,Potok_norm,F_norm, '*' );
  62. xlabel('Ф норм');
  63. ylabel('F норм, p5 норм')
  64. legend ('p5(Ф норм)','F норм(Ф норм)')
  65. grid on;
  66. F_raschet3=polyval(p_norm3,x);
  67. subplot(2,2,4);
  68. plot(x,F_raschet3,Potok_norm,F_norm , '*' );
  69. xlabel('Ф норм');
  70. ylabel('F норм, p3 норм')
  71. legend ('p3(Ф норм)','F норм(Ф норм)')
  72. grid on;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement