pVinc

szeja_kod

Oct 20th, 2021
574
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.             N = 5;
  2.             numericUpDown1.Value = N;
  3.             UstawTablice();
  4.             int blad;
  5.             AZ = new Complex[N + 1, N + 1];
  6.             BZ = new Complex[N + 1];
  7.             XZ = new Complex[N + 1];
  8.  
  9.             Complex E = 10;
  10.             double Rw = 10, R1 = 10, R3 = 10, R4 = 10;
  11.             double C2 = 10, C3 = 10;
  12.             double L1 = 10;
  13.  
  14.  
  15.             AZ[1, 1] = 1; AZ[1, 2] = -1; AZ[1, 3] = -1; AZ[1, 4] = 0; AZ[1, 5] = 0;
  16.             AZ[2, 1] = 0; AZ[2, 2] = 0; AZ[2, 3] = 1; AZ[2, 4] = -1; AZ[2, 5] = -1;
  17.             AZ[3, 1] = Rw; AZ[3, 2] = new Complex(R1, L1); AZ[3, 3] = 0; AZ[3, 4] = 0; AZ[3, 5] = 0;
  18.             AZ[4, 1] = 0; AZ[4, 2] = new Complex(R1, L1); AZ[4, 3] = new Complex(0, C2); AZ[4, 4] = new Complex(-R3, C3); AZ[4, 5] = 0;
  19.             AZ[5, 1] = 0; AZ[5, 2] = 0; AZ[5, 3] = 0; AZ[5, 4] = new Complex(R3, -C3); AZ[5, 5] = -R4;
  20.  
  21.             BZ[1] = Complex.Zero;
  22.             BZ[2] = Complex.Zero;
  23.             BZ[3] = E;
  24.             BZ[4] = Complex.Zero;
  25.             BZ[5] = Complex.Zero;
  26.  
  27.             for (int i = 1; i <= N; i++)
  28.             {
  29.                 for (int j = 1; j <= N; j++)
  30.                 {
  31.                     MacierzA.Rows[i-1].Cells[j-1].Value = AZ[i,j].ToString();
  32.                 }
  33.                 WektorB.Rows[i - 1].Cells[0].Value = BZ[i].ToString();
  34.             }
  35.             if (radioButton1.Checked)
  36.             {
  37.                 blad = MetodaGaussa.RozRowMacGaussa(AZ, BZ, XZ, 1e-30);
  38.             }
  39.             else
  40.             {
  41.                 blad = MetodaRozkladuLU.RozRowMacCroutDoolitta(AZ, BZ, XZ, 1e-30);
  42.             }
  43.             if (blad == 0)
  44.                 for (int i = 1; i <= N; i++)
  45.                     WektorX[0, i - 1].Value = XZ[i].ToString("0.000000");
  46.  
  47.            
  48.             textBox1.Text = "IpK bilans: " + ((XZ[1] - XZ[2] - XZ[3]) + (XZ[3] - XZ[4] - XZ[5])).ToString();
  49.             textBox2.Text = "IIpK bilans: " + (E - Rw*XZ[1] - (R1 + Complex.j * L1)*XZ[2]).ToString();
  50.  
  51.             double Pz = (E*XZ[1].Conjugate).Re;
  52.             textBox3.Text = "  Pz = " + Pz.ToString();
  53.  
  54.            
  55.             double Podb = (XZ[1] * XZ[1].Conjugate * Rw).Re + (XZ[2] * XZ[2].Conjugate * (R1 + Complex.j * L1)).Re + (XZ[3] * XZ[3].Conjugate * -Complex.j * C2).Re + (XZ[4] * XZ[4].Conjugate * (R3 - Complex.j * C3)).Re + (XZ[5] * XZ[5].Conjugate * R4).Re;
  56.             textBox4.Text = "Podb = " + Podb.ToString();
  57.            
  58.             Complex Sz = new Complex(0, 0);
  59.             Sz = E * XZ[1].Conjugate;
  60.             textBox5.Text = "  Sz= " + Sz.ToString();
  61.  
  62.             Complex Sodb = new Complex(0, 0);
  63.             Sodb = (XZ[1].Abs * XZ[1].Abs * Rw) + (XZ[2].Abs * XZ[2].Abs * (R1 + Complex.j * L1)) + (XZ[3].Abs * XZ[3].Abs * (-Complex.j * C2)) + (XZ[4].Abs * XZ[4].Abs * (R3 - Complex.j * C3)) + (XZ[5].Abs * XZ[5].Abs * R4);
  64.             textBox6.Text = "Sodb = " + Sodb.ToString();
  65.  
RAW Paste Data