コード例 #1
0
ファイル: Form1.cs プロジェクト: kaskanoidas/Boen
 //----------------------------------------SIMPLEX METODAI-------------------------------------------
 private SimplexLentele MakeLentelesCopy(SimplexLentele Lent)
 {
     SimplexLentele nauja = new SimplexLentele();
     eilute eil = new eilute();
     nauja.BVS.AddRange(Lent.BVS);
     for (int i = 0; i < Lent.eilutes.Count; i++)
     {
         eil = new eilute();
         eil.eilutesReiksmes.AddRange(Lent.eilutes[i].eilutesReiksmes);
         nauja.eilutes.Add(eil);
     }
     nauja.RHS.AddRange(Lent.RHS);
     return nauja;
 }
コード例 #2
0
ファイル: Form1.cs プロジェクト: kaskanoidas/Boen
 //-------------------------------------------SIMPLEX------------------------------------------------
 private void LygciuSudarimas()
 {
     Lygtys = new LygciuSistema();
     Lygtis LG = new Lygtis();
     for (int i = 0; i < problem.kiekis.Count; i++)
     {
         LG = new Lygtis();
         LG.LygtiesSprendinys = problem.kiekis[i];
         LG.LygtiesLiekana = problem.kiekis[i];
         for (int j = 0; j < subsabl.SablonoElem.Count; j++)
         {
             for (int h = 0; h < subsabl.SablonoElem[j].JuostIlgis.Count; h++)
             {
                 if (subsabl.SablonoElem[j].JuostIlgis[h] == problem.ilgis[i] && subsabl.SablonoElem[j].JuostTipas[h] == problem.tipai[i])
                 {
                     LG.kiekis.Add(subsabl.SablonoElem[j].Kiekis[h]);
                     LG.variantas.Add(subsabl.SablonoSubNr[j] - 1);
                 }
             }
         }
         Lygtys.Lygtis.Add(LG);
     }
     Lentele = new SimplexLentele();
     LenteleBack = new SimplexLentele();
     eilute eil = new eilute();
     eilute eil2 = new eilute();
     for (int i = 0; i < problem.kiekis.Count; i++)
     {
         Lentele.BVS.Add(-1);
         LenteleBack.BVS.Add(-1);
         Lentele.RHS.Add(problem.kiekis[i]);
         LenteleBack.RHS.Add(problem.kiekis[i]);
         eil = new eilute();
         eil2 = new eilute();
         for (int j = 0; j < subsabl.SablonoElem.Count; j++)
         {
             eil.eilutesReiksmes.Add(0);
             eil2.eilutesReiksmes.Add(0);
         }
         for (int j = 0; j < Lygtys.Lygtis[i].variantas.Count; j++)
         {
             eil.eilutesReiksmes[Lygtys.Lygtis[i].variantas[j]] = Lygtys.Lygtis[i].kiekis[j];
             eil2.eilutesReiksmes[Lygtys.Lygtis[i].variantas[j]] = Lygtys.Lygtis[i].kiekis[j];
         }
         Lentele.eilutes.Add(eil);
         LenteleBack.eilutes.Add(eil2);
     }
     eil = new eilute();
     eil2 = new eilute();
     for (int j = 0; j < subsabl.SablonoElem.Count; j++)
     {
         eil.eilutesReiksmes.Add(1);
         eil2.eilutesReiksmes.Add(1);
     }
     Lentele.eilutes.Add(eil);
     LenteleBack.eilutes.Add(eil2);
 }