Beispiel #1
0
 private void TabFormControl_Main_SelectedPageChanged(object sender, TabFormSelectedPageChangedEventArgs e)
 {
     if (tabFormControl_Main.SelectedPage != null)
     {
         foreach (Control c in tabFormControl_Main.SelectedPage.ContentContainer.Controls)
         {
             if (c is DevExpress.DashboardWin.DashboardViewer)
             {
                 _viewer = (c as DevExpress.DashboardWin.DashboardViewer);
             }
         }
     }
 }
Beispiel #2
0
        private void tabFormControl1_SelectedPageChanged(object sender, TabFormSelectedPageChangedEventArgs e)
        {
            if (e.Page == tabpPart2)
            {
                funcud = new FunctionUd();
                funcud.Build();
                funcvd = new FunctionVd();
                funcvd.Build();
                funczd = new FunctionZd(funcud, funcvd);
                funczd.Build();
                funczd1 = new FunctionZd1(funcud, funcvd);
                funczd1.Build();

                funcudiscr = new FunctionUd();
                funcudiscr.Build();
                funcudiscr.MadeDiscret();

                funcvdiscr = new FunctionVd();
                funcvdiscr.Build();
                funcvdiscr.MadeDiscret();

                funczdiscr = new FunctionZd(funcudiscr, funcvdiscr);
                funczdiscr.Build();
                funczdiscr.MadeDiscret();

                spectreU = funcud.FurieTransform().GetAFR;
                spectreV = funcvd.FurieTransform().GetAFR;
                spectreZ = funczd.FurieTransform().GetAFR;

                energyspectreZ = funczd.EnergySpectre().GetAFR;
                energyspectreV = funcvd.EnergySpectre().GetAFR;
                energyspectreU = funcud.EnergySpectre().GetAFR;

                acfu = funcud.AutoCorrelationFunctionDiscret(500);
                acfv = funcvd.AutoCorrelationFunctionDiscret(500);
                acfz = funczd.AutoCorrelationFunctionDiscret(500);

                acfuv = funcud.CorrelationFunctionDiscret(funcvd, 500);
                acfuz = funcud.CorrelationFunctionDiscret(funczd, 500);
                acfvz = funcvd.CorrelationFunctionDiscret(funczd, 500);

                enuvrel = funcud.RelativeEnergySpectre(funcvd).GetAFR;
                enuzrel = funcud.RelativeEnergySpectre(funczd).GetAFR;
                envzrel = funcvd.RelativeEnergySpectre(funczd).GetAFR;


                enuz1rel = funcud.RelativeEnergySpectre(funczd1).GetAFR;
                envz1rel = funcvd.RelativeEnergySpectre(funczd1).GetAFR;

                relcorz1vd = funczd1.CorrelationFunctionDiscret(funcvd, 500);
                relcorz1ud = funczd1.CorrelationFunctionDiscret(funcud, 500);

                //var energyvz = acfvz.FurieTransform().GetAFR;

                //chartForPart2.AddFunc(spectreU);
                //chartForPart2.AddFunc(spectreV);
                //chartForPart2.AddFunc(spectreZ);
                //chartForPart2.AddFunc(energyspectreU);
                //chartForPart2.AddFunc(energyspectreV);
                //chartForPart2.AddFunc(energyspectreZ);
                //chartForPart2.AddFunc(funcud.AutoCorrelationContinous(1));
                //chartForPart2.AddFunc(funcvd.AutoCorrelationContinous(1));
                //chartForPart2.AddFunc(funczd.AutoCorrelationContinous(1));
                //chartForPart2.AddFunc(funcud.AutoCovariationDiscret(500));
                //chartForPart2.AddFunc(funcvd.AutoCovariationDiscret(500));
                //chartForPart2.AddFunc(acfu);
                //chartForPart2.AddFunc(acfv);
                //chartForPart2.AddFunc(acfz);
                //chartForPart2.AddFunc(acfuv);
                //chartForPart2.AddFunc(acfvz);
                //chartForPart2.AddFunc(acfuz);

                //chartForPart2.AddFunc(enuvrel);
                //chartForPart2.AddFunc(envzrel);
                //chartForPart2.AddFunc(enuzrel);

                //chartForPart2.AddFunc(acfuv.FurieTransform().GetAFR);
                //chartForPart2.AddFunc(energyvz);
                //chartForPart2.AddFunc(acfuz.FurieTransform().GetAFR);



                //chartForPart2.AddFunc(funczd.AutoCovariationDiscret(500));
                //chartForPart2.AddFunc(funczd);
                //chartForPart2.AddFunc(funczd1);
                //chartForPart2.AddFunc(funcud);

                //chartForPart2.AddFunc(funcvd);
                //chartForPart2.AddFunc(energyspectreV.FurieTransformInversion());
                //chartForPart2.AddFunc(energyspectreU.FurieTransformInversion());
                //chartForPart2.AddFunc(energyspectreZ.FurieTransformInversion());
                //chartForPart2.AddFunc(enuvrel.FurieTransformInversion());
                //chartForPart2.AddFunc(enuzrel.FurieTransformInversion());
                //chartForPart2.AddFunc(envzrel.FurieTransformInversion());
                memoPart2.Text += "Скалярное произведение ud и vd =" + funcud.ScalarProduct(funcvd) + Environment.NewLine;
                memoPart2.Text += "Скалярное произведение ud и zd =" + funcud.ScalarProduct(funczd) + Environment.NewLine;
                memoPart2.Text += "Скалярное произведение vd и zd =" + funcvd.ScalarProduct(funczd) + Environment.NewLine;
                //memoResults.Text += "косинус угла между v и u =" + funcu.Norma() / funcV.Norma() + Environment.NewLine;

                //ResultOutPut(memoPart2, funcud);
                //ResultOutPut(memoPart2, funcvd);
                //ResultOutPut(memoPart2, funczd);
                //memoPart2.Text += "энерг из вкф вз" + energyvz.FullEnergy() + Environment.NewLine;
                //memoPart2.Text += "энерг чистая вз" + envzrel.FullEnergy() + Environment.NewLine;
                //chartForPart2.DrawFunc();
            }
        }
Beispiel #3
0
 private void tabFormControl1_SelectedPageChanged(object sender, TabFormSelectedPageChangedEventArgs e)
 {
     #region FuncFurie
     if (e.Page == FuncFurie)
     {
         var funcSeg = chartMainFunc.internalDrawList.Find((a) => { return((string)a.Series.Tag == typeof(FunctionSequence).Name); });
         if (funcSeg == null || FuncFurie.Equals(funcSeg))
         {
             return;
         }
         var funcSegWithFreeComp = chartMainFunc.internalDrawList.Find((a) => { return((string)a.Series.Tag == typeof(FunctionWithFreeComponent).Name); });
         if (funcSegWithFreeComp == null || chartFunctionAmplitudes.Equals(funcSegWithFreeComp))
         {
             return;
         }
         FunctionSinCos fsincos = new FunctionSinCos(periodCount, "без а0", (FunctionSequence)funcSeg);
         fsincos.Build();
         memoFurieCoefs.Text = string.Empty;
         foreach (var item in fsincos.FurieRowCoeffs)
         {
             memoFurieCoefs.Text += item.Key + "=" + Math.Round(item.Value, 2) + Environment.NewLine;
         }
         FunctionSinCos fsincosWithFreeComp = new FunctionSinCos(periodCount, "с а0", (FunctionSequence)funcSegWithFreeComp);
         fsincosWithFreeComp.Build();
         memoFurieCoefs.Text += "*******************" + Environment.NewLine;
         foreach (var item in fsincosWithFreeComp.FurieRowCoeffs)
         {
             memoFurieCoefs.Text += item.Key + "=" + Math.Round(item.Value, 2) + Environment.NewLine;
         }
         FunctionAch famain        = new FunctionAch(fsincos.ComplexArray, "основной функции");
         FunctionAch fWithFreeComp = new FunctionAch(fsincosWithFreeComp.ComplexArray, "со свободным членом");
         chartFunctionAmplitudes.AddFunc(famain);
         chartFunctionAmplitudes.AddFunc(fWithFreeComp);
         //chartFunctionAmplitudes.AddFunc(funcSeg.FurieTransform().GetAFR);
         chartFunctionAmplitudes.DrawFunc();
     }
     #endregion
     #region FuncNormal
     if (e.Page == FuncFilterNorma)
     {
         FunctionFromFile fff = new FunctionFromFile();
         fff.Build();
         var funcFromFileFiltere = chartFuncFilterACH.internalDrawList.Find((a) => { return((string)a.Series.Tag == typeof(FunctionApplyFilter).Name); });
         if (funcFromFileFiltere != null)
         {
             FunctionFiltered ffed = new FunctionFiltered((FunctionACHFromFile)funcFromFileFiltere);
             ffed.Build();
             chartFiltre.AddFunc(ffed);
         }
         chartFiltre.AddFunc(fff);
         chartFiltre.DrawFunc();
     }
     #endregion
     #region FuncNormalAch
     if (e.Page == FuncFilterNormalACH)
     {
         var funcFromFile = chartFiltre.internalDrawList.Find((a) => { return((string)a.Series.Tag == typeof(FunctionFromFile).Name); });
         if (funcFromFile == null || FuncFurie.Equals(funcFromFile))
         {
             return;
         }
         FunctionACHFromFile faff = new FunctionACHFromFile((FunctionFromFile)funcFromFile);
         faff.Build();
         FunctionFilter fil = new FunctionFilter(200, 300);
         fil.Build();
         FunctionApplyFilter faf = new FunctionApplyFilter(faff, fil);
         faf.Build();
         chartFuncFilterACH.AddFunc(faff);
         chartFuncFilterACH.AddFunc(faf);
         chartFuncFilterACH.AddFunc(fil);
         chartFuncFilterACH.DrawFunc();
     }
     #endregion
 }
Beispiel #4
0
        public void tabFormControl1_SelectedPageChanged(object sender, TabFormSelectedPageChangedEventArgs e)
        {
            if (e.Page == FunctionDiscret)
            {
                var func = FuncAnalog.internalDrawList.Find((a) => { return((string)a.Series.Tag == typeof(FunctionFromTask).Name); });
                if (func == null || FuncDiscretn.Equals(func))
                {
                    return;
                }
                FunctionFromTaskQuantum fc = new FunctionFromTaskQuantum(func);
                fc.QuantumOrd = func.QuantumOrd;
                func.DestroySeries();
                FuncDiscretn.AddFunc(fc);
                //FuncDiscretn.AddFunc(func);
                //func.OnlyResult = true;
                KotelnikovFunction kf = new KotelnikovFunction(func);
                //kf.OnlyResult = true;
                //kf.Build();
                //KotelnikovSmooth ks = new KotelnikovSmooth(kf);
                FuncDiscretn.AddFunc(kf);

                FuncDiscretn.DrawFunc();
            }
            if (e.Page == FunctionACH)
            {
                var func = FuncDiscretn.internalDrawList.Find((a) => { return((string)a.Series.Tag == typeof(FunctionFromTaskQuantum).Name); });
                if (func == null || FuncAch.Equals(func))
                {
                    return;
                }
                var func1 = FuncAnalog.internalDrawList.Find((a) => { return((string)a.Series.Tag == typeof(FunctionFromTask).Name); });
                if (func1 == null)
                {
                    return;
                }
                ACHFunction fun  = new ACHFunction(func);
                ACHFunction fun1 = new ACHFunction(func1);
                FuncAch.AddFunc(fun1);
                FuncAch.AddFunc(fun);
                FCHFunction ffun = new FCHFunction(func);
                FuncAch.AddFunc(ffun);
                FCHFunction ffun1 = new FCHFunction(func1);
                FuncAch.AddFunc(ffun1);
                FuncAch.DrawFunc();
            }
            if (e.Page == FunctionMistakes)
            {
                var func = (KotelnikovFunction)FuncDiscretn.internalDrawList.Find((a) => { return((string)a.Series.Tag == typeof(KotelnikovFunction).Name); });
                if (func == null)
                {
                    return;
                }
                //func.Series.ChangeView(ViewType.Spline);

                //func.DestroySeries();

                SquareAproximationMistakeFunction apx = new SquareAproximationMistakeFunction(func);

                //FuncMistakes.AddFunc(func);
                FuncMistakes.AddFunc(apx);
                FuncMistakes.DrawFunc();
            }
            if (e.Page == FunctionQMistake)
            {
                var funcan = FuncAnalog.internalDrawList.Find((a) => { return((string)a.Series.Tag == typeof(FunctionFromTask).Name); });
                if (funcan == null)
                {
                    return;
                }
                FunctionQuantMistake fq = new FunctionQuantMistake(funcan);
                FuncQMistake.AddFunc(fq);
                FuncQMistake.DrawFunc();
            }
        }