pVinc

grzelinski

Oct 27th, 2021
1,010
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. N = 3;
  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 e1 = 15;
  10.             Complex e2 = 10;
  11.             double r1 = 5, r2 = 10, r3 = 15;
  12.             double xl1 = 15, xl2=20, xc = 10;
  13.  
  14.             AZ[1, 1] = 1; AZ[1, 2] = -1; AZ[1, 3] = -1;
  15.             AZ[2, 1] = r1; AZ[2, 2] = new Complex(r2, xl1); AZ[2, 3] = 0;
  16.             AZ[3, 1] = 0; AZ[3, 2] = new Complex(-r2, -xl1); AZ[3, 3] = new Complex(r3, xl2-xc);
  17.  
  18.             BZ[1] = Complex.Zero;
  19.             BZ[2] = e1;
  20.             BZ[3] = e2;
  21.  
  22.             for (int i = 1; i <= N; i++)
  23.             {
  24.                 for (int j = 1; j <= N; j++)
  25.                 {
  26.                     MacierzA.Rows[i - 1].Cells[j - 1].Value = AZ[i, j].ToString();
  27.                 }
  28.                 WektorB.Rows[i - 1].Cells[0].Value = BZ[i].ToString();
  29.             }
  30.             if (radioButton1.Checked)
  31.             {
  32.                 blad = MetodaGaussa.RozRowMacGaussa(AZ, BZ, XZ, 1e-30);
  33.             }
  34.             else
  35.             {
  36.                 blad = MetodaRozkladuLU.RozRowMacCroutDoolitta(AZ, BZ, XZ, 1e-30);
  37.             }
  38.             if (blad == 0)
  39.                 for (int i = 1; i <= N; i++)
  40.                     WektorX[0, i - 1].Value = XZ[i].ToString("0.000000");
  41.  
  42.  
  43.             textBox1.Text = "IpK bilans: " + (XZ[1] - XZ[2] - XZ[3]).ToString();
  44.             textBox2.Text = "IIpK bilans: " + (e1-XZ[1]*r1-XZ[2]*(r2+Complex.j*xl1)).ToString();
  45.  
  46.             double Pz = (e1 * XZ[1].Conjugate + e2 * XZ[3].Conjugate).Re;
  47.             double Podb = (XZ[1] * XZ[1].Conjugate * r1).Re + (XZ[2] * XZ[2].Conjugate * (r2 + Complex.j * xl1)).Re + (XZ[3] * XZ[3].Conjugate * (r3 + Complex.j * xl2 - Complex.j * xc)).Re;
  48.             textBox3.Text = "  Pz = " + Pz.ToString();
  49.             textBox4.Text = "Podb = " + Podb.ToString();
  50.  
  51.             Complex Sz = new Complex(0, 0);
  52.             Complex Sodb = new Complex(0, 0);
  53.             Sz = e1 * XZ[1].Conjugate + e2 * XZ[3].Conjugate;
  54.             textBox5.Text = "  Sz= " + Sz.ToString();
  55.             Sodb = (XZ[1] * XZ[1].Conjugate * r1) + (XZ[2]*XZ[2].Conjugate*(r2 + Complex.j*xl1)) + (XZ[3]*XZ[3].Conjugate*(r3+Complex.j*xl2-Complex.j*xc));
  56.             textBox6.Text = "Sodb = " + Sodb.ToString();
RAW Paste Data