Ejemplo n.º 1
0
        private void Convert45To60()
        {
            CRainfall rainfall   = new CRainfall();
            CRainfall rainfall2  = new CRainfall();
            int       nValues    = this.m_NValues;
            short     fileNumber = (short)FileSystem.FreeFile();

            FileSystem.FileOpen(fileNumber, this.m_OutputFile, OpenMode.Binary, OpenAccess.Default, OpenShare.Default, -1);
            rainfall.ReadRainfallFromBinFile(ref fileNumber, ref 0.0);
            FileSystem.FileClose(new int[] { fileNumber });
            rainfall2.Init(ref (int)Math.Round((double)(((double)(rainfall.TimeSteps * 3)) / 4.0)));
            int index     = 1;
            int timeSteps = rainfall.TimeSteps;
            int num2      = 1;

            while (true)
            {
                int num8 = timeSteps;
                if (num2 > num8)
                {
                    FileSystem.FileClose(new int[0]);
                    rainfall2.PrintRainfall(ref this.m_OutputFile, ref this.m_StartDate, ref 60);
                    return;
                }
                rainfall2.set_Rainfall(index, rainfall.get_Rainfall(num2) + ((float)(0.33333333333333331 * rainfall.get_Rainfall(num2 + 1))));
                index++;
                rainfall2.set_Rainfall(index, (float)(0.66666666666666663 * (rainfall.get_Rainfall(num2 + 1) + rainfall.get_Rainfall(num2 + 2))));
                index++;
                rainfall2.set_Rainfall(index, ((float)(rainfall.get_Rainfall(num2 + 2) * 0.33333333333333331)) + rainfall.get_Rainfall(num2 + 3));
                index++;
                num2 += 4;
            }
        }
Ejemplo n.º 2
0
        private void Convert15To24()
        {
            CRainfall rainfall   = new CRainfall();
            CRainfall rainfall2  = new CRainfall();
            CRainfall rainfall3  = new CRainfall();
            int       nValues    = this.m_NValues;
            short     fileNumber = (short)FileSystem.FreeFile();

            FileSystem.FileOpen(fileNumber, this.m_OutputFile, OpenMode.Binary, OpenAccess.Default, OpenShare.Default, -1);
            rainfall.ReadRainfallFromBinFile(ref fileNumber, ref 0.0);
            FileSystem.FileClose(new int[] { fileNumber });
            rainfall3.Init(ref rainfall.TimeSteps * 5);
            int index     = 1;
            int timeSteps = rainfall.TimeSteps;
            int num2      = 1;

            while (true)
            {
                int num11 = timeSteps;
                if (num2 > num11)
                {
                    rainfall2.Init(ref (int)Math.Round((double)(((double)rainfall3.TimeSteps) / 8.0)));
                    index = 1;
                    int num9 = rainfall3.TimeSteps - 1;
                    num2 = 1;
                    while (num2 <= num9)
                    {
                        int num10 = num2 + 7;
                        int num4  = num2;
                        while (true)
                        {
                            num11 = num10;
                            if (num4 > num11)
                            {
                                index++;
                                num2 += 8;
                                break;
                            }
                            rainfall2.set_Rainfall(index, rainfall2.get_Rainfall(index) + rainfall3.get_Rainfall(num4));
                            num4++;
                        }
                    }
                    FileSystem.FileClose(new int[0]);
                    rainfall2.PrintRainfall(ref this.m_OutputFile, ref this.m_StartDate, ref 0x5a0);
                    return;
                }
                rainfall3.set_Rainfall(index, rainfall.get_Rainfall(num2) / 5f);
                index++;
                rainfall3.set_Rainfall(index, rainfall.get_Rainfall(num2) / 5f);
                index++;
                rainfall3.set_Rainfall(index, rainfall.get_Rainfall(num2) / 5f);
                index++;
                rainfall3.set_Rainfall(index, rainfall.get_Rainfall(num2) / 5f);
                index++;
                rainfall3.set_Rainfall(index, rainfall.get_Rainfall(num2) / 5f);
                index++;
                num2++;
            }
        }