Exemplo n.º 1
0
            public void GetValues(object[] arr, ref int i)
            {
                arr[i++] = From.Measure;
                arr[i++] = To.Measure;
                arr[i++] = Subnet_Number;
                arr[i++] = CalcStatus.ToString();
                if (CalcStatus == CalcStatus.Success || CalcStatus == CalcStatus.ExtraP)
                {
                    arr.Put(ref i, OilVolumeRate_sc);
                    arr.Put(ref i, WaterVolumeRate_sc);
                    arr.Put(ref i, GasVolumeRate_sc);

                    bool All = CalcStatus == CalcStatus.Success;
                    From.GetValues(arr, ref i, All);
                    To.GetValues(arr, ref i, All);
                    if (All && fluid != null)
                    {
                        arr.Put(ref i, fluid.Reservoir_Pressure__Atm); // Пластовое давление (начальное, пл.у.), атм
                        arr.Put(ref i, fluid.Temperature__C);          // Пластовая температура (пл.у.), °C
                        arr.Put(ref i, fluid.Oil_VolumeFactor);        // Объёмный фактор (коэффициент) нефти (пл.у.), м³/ м³
                        arr.Put(ref i, fluid.Bubblpnt_Pressure__Atm);  // Давление насыщения нефти  (пл.у.), атм
                        arr.Put(ref i, fluid.Oil_GasFactor);           // Газосодержание нефти (пл.у.),  м³/ м³
                        arr.Put(ref i, float.NaN);                     // Газовый фактор нефти (пл.у.),  м³/ м³
                        arr.Put(ref i, fluid.Oil_Density);             // Плотность нефти (с.у.), т/м³
                        arr.Put(ref i, fluid.Water_Density);           // Плотность воды (с.у.),  т/м³
                        arr.Put(ref i, fluid.Gas_Density);             // Плотность газа (с.у.),  кг/м³
                        arr.Put(ref i, fluid.Oil_Viscosity);           // Вязкость нефти (пл.у.), сПз
                        arr.Put(ref i, fluid.Water_Viscosity);         // Вязкость воды (пл.у.), сПз
                        arr.Put(ref i, fluid.Particles);               // Взвешенных частиц (мехпримеси), мг/л ~ 1ppm
                    }
                }
            }
Exemplo n.º 2
0
 private void TaskStatusUpdate(CalcStatus calcStatus) => _observer?.OnNext(calcStatus.ToString("G"));