Ejemplo n.º 1
0
      ASSERT_EQ(1,  after->getNumEns());

      EXPECT_FLOAT_EQ(0.3, (*after)(5,2,0));
      EXPECT_FLOAT_EQ(0.3, (*after)(5,9,0));
      EXPECT_FLOAT_EQ(0.3, (*after)(0,9,0));
   }
   TEST_F(TestCalibratorRegression, 10x10_1order) {
      FileArome from("testing/files/10x10.nc");
      ParameterFileText par(Options("file=testing/files/regression1order.txt"));
      CalibratorRegression cal = CalibratorRegression(Variable::T, Options());

      cal.calibrate(from, &par);
      FieldPtr after = from.getField(Variable::T, 0);
      ASSERT_EQ(10, after->getNumLat());
      ASSERT_EQ(10, after->getNumLon());
      ASSERT_EQ(1,  after->getNumEns());

      EXPECT_FLOAT_EQ(361.5, (*after)(5,2,0)); // 0.3 + 1.2*301
      EXPECT_FLOAT_EQ(365.1, (*after)(5,9,0));
      EXPECT_FLOAT_EQ(384.3, (*after)(0,9,0));
   }
   TEST_F(TestCalibratorRegression, 10x10_2order) {
      FileArome from("testing/files/10x10.nc");
      ParameterFileText par(Options("file=testing/files/regression2order.txt"));
      CalibratorRegression cal = CalibratorRegression(Variable::T, Options());

      cal.calibrate(from, &par);
      FieldPtr after = from.getField(Variable::T, 0);
      ASSERT_EQ(10, after->getNumLat());
      ASSERT_EQ(10, after->getNumLon());
      ASSERT_EQ(1,  after->getNumEns());