MphChlUtils { public static boolean isCyano(double SICF_peak, double SIPF_peak, double BAIR_peak) { return SICF_peak < 0.0 && SIPF_peak > 0.0 && BAIR_peak > 0.002; }  static FlagCoding createMphChlFlagCoding(String flagId); static void setupMphChlBitmask(Product mphChlProduct); static int encodeFlags(boolean cyano_flag, boolean floating_flag, boolean adj_flag); static double computeChlExponential(double mph); static double computeChlPolynomial(double mph); static boolean isCyano(double SICF_peak, double SIPF_peak, double BAIR_peak); static boolean isCyano(double SICF_peak, double SIPF_peak); static void setToInvalid(WritableSample[] targetSamples, boolean exportMph); static double computeMph(double rBr_Max, double r_7, double r_14, double wl_max, double wl_7, double wl_14);  }
@Test public void testIsCyano_threeArgs() { assertFalse(MphChlUtils.isCyano(0.0, 1.0, 1.0)); assertFalse(MphChlUtils.isCyano(0.5, 1.0, 1.0)); assertTrue(MphChlUtils.isCyano(-0.1, 1.0, 1.0)); assertFalse(MphChlUtils.isCyano(-1.0, 0.0, 1.0)); assertFalse(MphChlUtils.isCyano(-1.0, -0.1, 1.0)); assertTrue(MphChlUtils.isCyano(-1.0, 0.5, 1.0)); assertFalse(MphChlUtils.isCyano(-1.0, 1.0, 0.0)); assertFalse(MphChlUtils.isCyano(-1.0, 1.0, 0.0019)); assertTrue(MphChlUtils.isCyano(-1.0, 1.0, 0.0021)); }
@Test public void testIsCyano_twoArgs() { assertFalse(MphChlUtils.isCyano(1.0, -1.0)); assertFalse(MphChlUtils.isCyano(-0.1, -1.0)); assertFalse(MphChlUtils.isCyano(1.0, 0.1)); assertTrue(MphChlUtils.isCyano(-0.1, 0.1)); }