Advertisement
Guest User

Untitled

a guest
Nov 18th, 2019
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.93 KB | None | 0 0
  1. public class testing_programm {
  2. static double epsilon = Math.pow(10,-5);
  3. static double lyambda = 1/5;
  4. public static void main(String[] args) {
  5.  
  6. // ебучий первый пункт
  7. double a = 0;
  8. double b = 1;
  9. double n = 10;
  10. double h = (b - a) / (n - 1);
  11.  
  12. double[][] A = new double[10][10];
  13. A[0][0] = A[9][9] = h / 2;
  14. for (int j = 1; j <= n - 2; j++) {
  15. A[j][j] = h;
  16. }
  17.  
  18. double[][] s = new double[10][10];
  19. double[] F = new double[10];
  20. for (int j = 0; j < n; j++) {
  21. s[j][j] = a + j * h;
  22. double x = a + (j + 1) * h;
  23. F[j] = (x * x - 1);
  24. }
  25.  
  26. double[][] K = new double[10][10];
  27. for(int i = 0; i < n; i++) {
  28. for(int j = 0; j < n; j++) {
  29. K[i][j] = 1 / (10 - (a + (i + 1) * h) * (a + (j + 1) * h));
  30. }
  31. }
  32.  
  33. double[][] A_f = new double[10][10];
  34. for (int i = 0; i < n; i++) {
  35. for (int j = 0; j < n; j++) {
  36. A_f[i][j] = 0 - lyambda * A[j][j] * K[i][j];
  37. if(i == j) {
  38. A_f[i][j] += 1;
  39. }
  40. }
  41. }
  42. inversion(A_f,(int)n);
  43. double[] U_x = new double[10];
  44. double sum = 0;
  45. for(int i = 0; i < n; i++) {
  46. for (int j = 0; j < n; j++) {
  47. U_x[i] += A_f[i][j] * F[j];
  48. }
  49. System.out.println(U_x[i]);
  50. }
  51.  
  52. //ебучий второй пункт
  53. n = 3;
  54. double[] X_i = {0,0.5,1};
  55.  
  56. }
  57.  
  58. static void inversion(double[][] A, int N)
  59. {
  60. double temp;
  61.  
  62. double [][] E = new double [N][N];
  63.  
  64.  
  65. for (int i = 0; i < N; i++)
  66. for (int j = 0; j < N; j++)
  67. {
  68. E[i][j] = 0f;
  69.  
  70. if (i == j)
  71. E[i][j] = 1f;
  72. }
  73.  
  74. for (int k = 0; k < N; k++)
  75. {
  76. temp = A[k][k];
  77.  
  78. for (int j = 0; j < N; j++)
  79. {
  80. A[k][j] /= temp;
  81. E[k][j] /= temp;
  82. }
  83.  
  84. for (int i = k + 1; i < N; i++)
  85. {
  86. temp = A[i][k];
  87.  
  88. for (int j = 0; j < N; j++)
  89. {
  90. A[i][j] -= A[k][j] * temp;
  91. E[i][j] -= E[k][j] * temp;
  92. }
  93. }
  94. }
  95.  
  96. for (int k = N - 1; k > 0; k--)
  97. {
  98. for (int i = k - 1; i >= 0; i--)
  99. {
  100. temp = A[i][k];
  101.  
  102. for (int j = 0; j < N; j++)
  103. {
  104. A[i][j] -= A[k][j] * temp;
  105. E[i][j] -= E[k][j] * temp;
  106. }
  107. }
  108. }
  109.  
  110. for (int i = 0; i < N; i++)
  111. for (int j = 0; j < N; j++)
  112. A[i][j] = E[i][j];
  113.  
  114. }
  115. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement