Esempio n. 1
0
        public void GenerateMatrixCDFs_Test()
        {
            Continuum thisInst = new Continuum("");

            string Filename = testingFolder + "\\MCP testing.cfm";

            thisInst.Open(Filename);
            Met thisMet = thisInst.metList.metItem[0];
            MCP thisMCP = thisMet.mcp;

            // Test 1
            thisMCP.numWD       = 4;
            thisMCP.numTODs     = 1;
            thisMCP.numSeasons  = 1;
            thisMCP.WS_BinWidth = 1;

            MCP.CDF_Obj[] ThisCDF_Obj = thisMCP.GenerateMatrixCDFs();

            // check counts of each CDF
            Assert.AreEqual(ThisCDF_Obj[6].count, 266);
            Assert.AreEqual(ThisCDF_Obj[32].count, 155);
            Assert.AreEqual(ThisCDF_Obj[70].count, 147);
            Assert.AreEqual(ThisCDF_Obj[100].count, 208);

            // check CDF in three locations
            Assert.AreEqual(ThisCDF_Obj[5].CDF[25], 0.02381, 0.01, "Wrong CDF[25] for WS_ind = 0");
            Assert.AreEqual(ThisCDF_Obj[5].CDF[40], 0.178571, 0.01, "Wrong CDF[40] for WS_ind = 0");
            Assert.AreEqual(ThisCDF_Obj[5].CDF[82], 0.940476, 0.01, "Wrong CDF[82] for WS_ind = 0");

            thisInst.Close();
        }
Esempio n. 2
0
        public void FindCDF_Index_test()
        {
            Continuum thisInst = new Continuum("");

            string Filename = testingFolder + "\\MCP testing.cfm";

            thisInst.Open(Filename);
            Met thisMet = thisInst.metList.metItem[0];
            MCP thisMCP = thisMet.mcp;

            thisMCP.numWD       = 4;
            thisMCP.numTODs     = 1;
            thisMCP.numSeasons  = 1;
            thisMCP.WS_BinWidth = 1;

            MCP.CDF_Obj[] thisCDF_Obj = thisMCP.GenerateMatrixCDFs();

            float Rando   = 0.2f;
            int   CDF_ind = thisMCP.FindCDF_Index(thisCDF_Obj[5], Rando);

            Assert.AreEqual(CDF_ind, 42, 0, "Wrong CDF index");

            Rando   = 0.4f;
            CDF_ind = thisMCP.FindCDF_Index(thisCDF_Obj[5], Rando);
            Assert.AreEqual(CDF_ind, 51, 0, "Wrong CDF index");

            Rando   = 0.6f;
            CDF_ind = thisMCP.FindCDF_Index(thisCDF_Obj[5], Rando);
            Assert.AreEqual(CDF_ind, 58, 0, "Wrong CDF index");

            Rando   = 0.8f;
            CDF_ind = thisMCP.FindCDF_Index(thisCDF_Obj[5], Rando);
            Assert.AreEqual(CDF_ind, 69, 0, "Wrong CDF index");

            thisInst.Close();
        }