diff --git a/ncep/gov.noaa.nws.ncep.edex.common/src/gov/noaa/nws/ncep/edex/common/metparameters/MetParameterFactory.java b/ncep/gov.noaa.nws.ncep.edex.common/src/gov/noaa/nws/ncep/edex/common/metparameters/MetParameterFactory.java index 9405bb66df..f63e99b7ca 100644 --- a/ncep/gov.noaa.nws.ncep.edex.common/src/gov/noaa/nws/ncep/edex/common/metparameters/MetParameterFactory.java +++ b/ncep/gov.noaa.nws.ncep.edex.common/src/gov/noaa/nws/ncep/edex/common/metparameters/MetParameterFactory.java @@ -41,7 +41,7 @@ public class MetParameterFactory implements ISerializableObject { @DynamicSerializeElement private HashMap ncParamsAliasMap = new HashMap(); - // + // @DynamicSerializeElement private HashMap ncParamsMap = new HashMap(); @@ -57,290 +57,559 @@ public class MetParameterFactory implements ISerializableObject { private MetParameterFactory() { try { - ncParamsMap.put(AircraftType.class.getSimpleName(), new AircraftType()); - ncParamsMap.put(AircraftReportType.class.getSimpleName(), new AircraftReportType()); - ncParamsMap.put(AmountOfCondPrecipIn12Hrs.class.getSimpleName(), new AmountOfCondPrecipIn12Hrs()); - ncParamsMap.put(AmountOfCondPrecipIn24Hrs.class.getSimpleName(), new AmountOfCondPrecipIn24Hrs()); - ncParamsMap.put(Avg3HrShipSpeed.class.getSimpleName(), new Avg3HrShipSpeed()); - ncParamsMap.put(Avg1HrHeatFlux.class.getSimpleName(), new Avg1HrHeatFlux()); - ncParamsMap.put(Avg1HrSnowPhaseChangeHeatFlux.class.getSimpleName(), new Avg1HrSnowPhaseChangeHeatFlux()); - ncParamsMap.put(Avg1HrSubSurfaceHeatFlux.class.getSimpleName(), new Avg1HrSubSurfaceHeatFlux()); - ncParamsMap.put(BaseOfIcing.class.getSimpleName(), new BaseOfIcing()); - ncParamsMap.put(BaseOfTurbulence.class.getSimpleName(), new BaseOfTurbulence()); - ncParamsMap.put(BaseOfWeather.class.getSimpleName(), new BaseOfWeather()); - ncParamsMap.put(BruntVaisalaFreq.class.getSimpleName(), new BruntVaisalaFreq()); - ncParamsMap.put(BruntVaisalaPeriod.class.getSimpleName(), new BruntVaisalaPeriod()); - // ncParamsMap.put( BruntVaisalaFrequencySquared.class.getSimpleName(), new BruntVaisalaFrequencySquared() ); - ncParamsMap.put(CatFcstCeilingHeightCond.class.getSimpleName(), new CatFcstCeilingHeightCond()); - ncParamsMap.put(CatFcstObstructionsVision.class.getSimpleName(), new CatFcstObstructionsVision()); - ncParamsMap.put(CatFcstPrecipitation.class.getSimpleName(), new CatFcstPrecipitation()); + ncParamsMap.put(AircraftType.class.getSimpleName(), + new AircraftType()); + ncParamsMap.put(AircraftReportType.class.getSimpleName(), + new AircraftReportType()); + ncParamsMap.put(AmountOfCondPrecipIn12Hrs.class.getSimpleName(), + new AmountOfCondPrecipIn12Hrs()); + ncParamsMap.put(AmountOfCondPrecipIn24Hrs.class.getSimpleName(), + new AmountOfCondPrecipIn24Hrs()); + ncParamsMap.put(Avg3HrShipSpeed.class.getSimpleName(), + new Avg3HrShipSpeed()); + ncParamsMap.put(Avg1HrHeatFlux.class.getSimpleName(), + new Avg1HrHeatFlux()); + ncParamsMap.put( + Avg1HrSnowPhaseChangeHeatFlux.class.getSimpleName(), + new Avg1HrSnowPhaseChangeHeatFlux()); + ncParamsMap.put(Avg1HrSubSurfaceHeatFlux.class.getSimpleName(), + new Avg1HrSubSurfaceHeatFlux()); + ncParamsMap.put(BaseOfIcing.class.getSimpleName(), + new BaseOfIcing()); + ncParamsMap.put(BaseOfTurbulence.class.getSimpleName(), + new BaseOfTurbulence()); + ncParamsMap.put(BaseOfWeather.class.getSimpleName(), + new BaseOfWeather()); + ncParamsMap.put(BruntVaisalaFreq.class.getSimpleName(), + new BruntVaisalaFreq()); + ncParamsMap.put(BruntVaisalaPeriod.class.getSimpleName(), + new BruntVaisalaPeriod()); + // ncParamsMap.put( + // BruntVaisalaFrequencySquared.class.getSimpleName(), new + // BruntVaisalaFrequencySquared() ); + ncParamsMap.put(CatFcstCeilingHeightCond.class.getSimpleName(), + new CatFcstCeilingHeightCond()); + ncParamsMap.put(CatFcstObstructionsVision.class.getSimpleName(), + new CatFcstObstructionsVision()); + ncParamsMap.put(CatFcstPrecipitation.class.getSimpleName(), + new CatFcstPrecipitation()); - ncParamsMap.put(CatFcstSnowAmountFalling06hr.class.getSimpleName(), new CatFcstSnowAmountFalling06hr()); - ncParamsMap.put(CatFcstSnowAmountFalling12hr.class.getSimpleName(), new CatFcstSnowAmountFalling12hr()); - ncParamsMap.put(CatFcstSnowAmountFalling24hr.class.getSimpleName(), new CatFcstSnowAmountFalling24hr()); - ncParamsMap.put(CatFcstVisibilityCond.class.getSimpleName(), new CatFcstVisibilityCond()); - ncParamsMap.put(CeilingFromSurface.class.getSimpleName(), new CeilingFromSurface()); - ncParamsMap.put(CeilingFromSeaLevel.class.getSimpleName(), new CeilingFromSeaLevel()); + ncParamsMap.put(CatFcstSnowAmountFalling06hr.class.getSimpleName(), + new CatFcstSnowAmountFalling06hr()); + ncParamsMap.put(CatFcstSnowAmountFalling12hr.class.getSimpleName(), + new CatFcstSnowAmountFalling12hr()); + ncParamsMap.put(CatFcstSnowAmountFalling24hr.class.getSimpleName(), + new CatFcstSnowAmountFalling24hr()); + ncParamsMap.put(CatFcstVisibilityCond.class.getSimpleName(), + new CatFcstVisibilityCond()); + ncParamsMap.put(CeilingFromSurface.class.getSimpleName(), + new CeilingFromSurface()); + ncParamsMap.put(CeilingFromSeaLevel.class.getSimpleName(), + new CeilingFromSeaLevel()); ncParamsMap.put(CloudCover.class.getSimpleName(), new CloudCover()); - ncParamsMap.put(ClimDayTemp.class.getSimpleName(), new ClimDayTemp()); - ncParamsMap.put(ClimNightTemp.class.getSimpleName(), new ClimNightTemp()); - ncParamsMap.put(Clim12HrPOP.class.getSimpleName(), new Clim12HrPOP()); - ncParamsMap.put(Clim24HrPOP.class.getSimpleName(), new Clim24HrPOP()); + ncParamsMap.put(ClimDayTemp.class.getSimpleName(), + new ClimDayTemp()); + ncParamsMap.put(ClimNightTemp.class.getSimpleName(), + new ClimNightTemp()); + ncParamsMap.put(Clim12HrPOP.class.getSimpleName(), + new Clim12HrPOP()); + ncParamsMap.put(Clim24HrPOP.class.getSimpleName(), + new Clim24HrPOP()); ncParamsMap.put(CloudBase1.class.getSimpleName(), new CloudBase1()); ncParamsMap.put(CloudBase2.class.getSimpleName(), new CloudBase2()); - ncParamsMap.put(CloudFractionInLayer.class.getSimpleName(), new CloudFractionInLayer()); + ncParamsMap.put(CloudFractionInLayer.class.getSimpleName(), + new CloudFractionInLayer()); ncParamsMap.put(CloudWater.class.getSimpleName(), new CloudWater()); ncParamsMap.put(CloudTop1.class.getSimpleName(), new CloudTop1()); ncParamsMap.put(CloudTop2.class.getSimpleName(), new CloudTop2()); - ncParamsMap.put(CondProbOf6HrSevereWeather.class.getSimpleName(), new CondProbOf6HrSevereWeather()); - ncParamsMap.put(CondProbOf12HrSevereWeather.class.getSimpleName(), new CondProbOf12HrSevereWeather()); - ncParamsMap.put(CondProbOf12HrFreezingPrecip.class.getSimpleName(), new CondProbOf12HrFreezingPrecip()); - ncParamsMap.put(CondProbOf12HrRain.class.getSimpleName(), new CondProbOf12HrRain()); - ncParamsMap.put(CondFcstPrecip12HrType.class.getSimpleName(), new CondFcstPrecip12HrType()); - ncParamsMap.put(CondProbOf12HrSnow.class.getSimpleName(), new CondProbOf12HrSnow()); - ncParamsMap.put(CondProbOf24HrSevereWeather.class.getSimpleName(), new CondProbOf24HrSevereWeather()); - ncParamsMap.put(CondProbOfFreezingPrecip.class.getSimpleName(), new CondProbOfFreezingPrecip()); - ncParamsMap.put(CondProbOfLiquidPrecip.class.getSimpleName(), new CondProbOfLiquidPrecip()); - ncParamsMap.put(CondProbOfMixedPrecip.class.getSimpleName(), new CondProbOfMixedPrecip()); - ncParamsMap.put(CondProbOfContPrecip.class.getSimpleName(), new CondProbOfContPrecip()); - ncParamsMap.put(CondProbOfDrizzle.class.getSimpleName(), new CondProbOfDrizzle()); - ncParamsMap.put(CondProbOfShowers.class.getSimpleName(), new CondProbOfShowers()); - ncParamsMap.put(CondProbOfSnow.class.getSimpleName(), new CondProbOfSnow()); - ncParamsMap.put(ConvectivePrecip.class.getSimpleName(), new ConvectivePrecip()); + ncParamsMap.put(CondProbOf6HrSevereWeather.class.getSimpleName(), + new CondProbOf6HrSevereWeather()); + ncParamsMap.put(CondProbOf12HrSevereWeather.class.getSimpleName(), + new CondProbOf12HrSevereWeather()); + ncParamsMap.put(CondProbOf12HrFreezingPrecip.class.getSimpleName(), + new CondProbOf12HrFreezingPrecip()); + ncParamsMap.put(CondProbOf12HrRain.class.getSimpleName(), + new CondProbOf12HrRain()); + ncParamsMap.put(CondFcstPrecip12HrType.class.getSimpleName(), + new CondFcstPrecip12HrType()); + ncParamsMap.put(CondProbOf12HrSnow.class.getSimpleName(), + new CondProbOf12HrSnow()); + ncParamsMap.put(CondProbOf24HrSevereWeather.class.getSimpleName(), + new CondProbOf24HrSevereWeather()); + ncParamsMap.put(CondProbOfFreezingPrecip.class.getSimpleName(), + new CondProbOfFreezingPrecip()); + ncParamsMap.put(CondProbOfLiquidPrecip.class.getSimpleName(), + new CondProbOfLiquidPrecip()); + ncParamsMap.put(CondProbOfMixedPrecip.class.getSimpleName(), + new CondProbOfMixedPrecip()); + ncParamsMap.put(CondProbOfContPrecip.class.getSimpleName(), + new CondProbOfContPrecip()); + ncParamsMap.put(CondProbOfDrizzle.class.getSimpleName(), + new CondProbOfDrizzle()); + ncParamsMap.put(CondProbOfShowers.class.getSimpleName(), + new CondProbOfShowers()); + ncParamsMap.put(CondProbOfSnow.class.getSimpleName(), + new CondProbOfSnow()); + ncParamsMap.put(ConvectivePrecip.class.getSimpleName(), + new ConvectivePrecip()); ncParamsMap.put(ShipCourse.class.getSimpleName(), new ShipCourse()); - ncParamsMap.put(DayTempAnomaly.class.getSimpleName(), new DayTempAnomaly()); - ncParamsMap.put(DayTempFcst.class.getSimpleName(), new DayTempFcst()); - ncParamsMap.put(DewPointDepression.class.getSimpleName(), new DewPointDepression()); - ncParamsMap.put(DewPointTemp.class.getSimpleName(), new DewPointTemp()); - ncParamsMap.put(DryBulbTemp.class.getSimpleName(), new DryBulbTemp()); - ncParamsMap.put(FiveSecPeakWindDir.class.getSimpleName(), new FiveSecPeakWindDir()); - ncParamsMap.put(PredomSwellWaveDir.class.getSimpleName(), new PredomSwellWaveDir()); - ncParamsMap.put(SecondarySwellWaveDir.class.getSimpleName(), new SecondarySwellWaveDir()); + ncParamsMap.put(DayTempAnomaly.class.getSimpleName(), + new DayTempAnomaly()); + ncParamsMap.put(DayTempFcst.class.getSimpleName(), + new DayTempFcst()); + ncParamsMap.put(DewPointDepression.class.getSimpleName(), + new DewPointDepression()); + ncParamsMap.put(DewPointTemp.class.getSimpleName(), + new DewPointTemp()); + ncParamsMap.put(DryBulbTemp.class.getSimpleName(), + new DryBulbTemp()); + ncParamsMap.put(FiveSecPeakWindDir.class.getSimpleName(), + new FiveSecPeakWindDir()); + ncParamsMap.put(PredomSwellWaveDir.class.getSimpleName(), + new PredomSwellWaveDir()); + ncParamsMap.put(SecondarySwellWaveDir.class.getSimpleName(), + new SecondarySwellWaveDir()); ncParamsMap.put(DPRN.class.getSimpleName(), new DPRN()); - ncParamsMap.put(DryAirDensity.class.getSimpleName(), new DryAirDensity()); - ncParamsMap.put(DryHydrostaticHeight.class.getSimpleName(), new DryHydrostaticHeight()); - ncParamsMap.put(TimeOf5SecPeakWindInHrs.class.getSimpleName(), new TimeOf5SecPeakWindInHrs()); - ncParamsMap.put(TimeOf5SecPeakWindInMins.class.getSimpleName(), new TimeOf5SecPeakWindInMins()); - ncParamsMap.put(EquivPotentialTemp.class.getSimpleName(), new EquivPotentialTemp()); - ncParamsMap.put(EquivWindSpeed10min.class.getSimpleName(), new EquivWindSpeed10min()); - ncParamsMap.put(EquivWindSpeed20min.class.getSimpleName(), new EquivWindSpeed20min()); - ncParamsMap.put(FcstFZRainAccumulationIn12Hours.class.getSimpleName(), new FcstFZRainAccumulationIn12Hours()); - ncParamsMap.put(FcstFZRainAccumulationToWatchThresh.class.getSimpleName(), new FcstFZRainAccumulationToWatchThresh()); - ncParamsMap.put(FcstSnowIcePelletAccumulation12Hrs.class.getSimpleName(), new FcstSnowIcePelletAccumulation12Hrs()); - ncParamsMap.put(FcstSnowIcePelletAccumToWatchThresh.class.getSimpleName(), new FcstSnowIcePelletAccumToWatchThresh()); - ncParamsMap.put(FlashFloodGuid01Hr.class.getSimpleName(), new FlashFloodGuid01Hr()); - ncParamsMap.put(FlashFloodGuid03Hr.class.getSimpleName(), new FlashFloodGuid03Hr()); - ncParamsMap.put(FlashFloodGuid06Hr.class.getSimpleName(), new FlashFloodGuid06Hr()); - ncParamsMap.put(FlashFloodGuid12Hr.class.getSimpleName(), new FlashFloodGuid12Hr()); - ncParamsMap.put(FlashFloodGuid24Hr.class.getSimpleName(), new FlashFloodGuid24Hr()); - ncParamsMap.put(FlightRulesID.class.getSimpleName(), new FlightRulesID()); - ncParamsMap.put(FlightLevel.class.getSimpleName(), new FlightLevel()); - ncParamsMap.put(FosbergFireWxIndex.class.getSimpleName(), new FosbergFireWxIndex()); - ncParamsMap.put(FZRainWatchThresh.class.getSimpleName(), new FZRainWatchThresh()); - // ncParamsMap.put( GenericDimensionlessParameter.class.getSimpleName(), new GenericDimensionlessParameter() ); - // ncParamsMap.put( GustBarb.class.getSimpleName(), new GustBarb() ); + ncParamsMap.put(DryAirDensity.class.getSimpleName(), + new DryAirDensity()); + ncParamsMap.put(DryHydrostaticHeight.class.getSimpleName(), + new DryHydrostaticHeight()); + ncParamsMap.put(TimeOf5SecPeakWindInHrs.class.getSimpleName(), + new TimeOf5SecPeakWindInHrs()); + ncParamsMap.put(TimeOf5SecPeakWindInMins.class.getSimpleName(), + new TimeOf5SecPeakWindInMins()); + ncParamsMap.put(EquivPotentialTemp.class.getSimpleName(), + new EquivPotentialTemp()); + ncParamsMap.put(EquivWindSpeed10min.class.getSimpleName(), + new EquivWindSpeed10min()); + ncParamsMap.put(EquivWindSpeed20min.class.getSimpleName(), + new EquivWindSpeed20min()); + ncParamsMap.put( + FcstFZRainAccumulationIn12Hours.class.getSimpleName(), + new FcstFZRainAccumulationIn12Hours()); + ncParamsMap.put( + FcstFZRainAccumulationToWatchThresh.class.getSimpleName(), + new FcstFZRainAccumulationToWatchThresh()); + ncParamsMap.put( + FcstSnowIcePelletAccumulation12Hrs.class.getSimpleName(), + new FcstSnowIcePelletAccumulation12Hrs()); + ncParamsMap.put( + FcstSnowIcePelletAccumToWatchThresh.class.getSimpleName(), + new FcstSnowIcePelletAccumToWatchThresh()); + ncParamsMap.put(FlashFloodGuid01Hr.class.getSimpleName(), + new FlashFloodGuid01Hr()); + ncParamsMap.put(FlashFloodGuid03Hr.class.getSimpleName(), + new FlashFloodGuid03Hr()); + ncParamsMap.put(FlashFloodGuid06Hr.class.getSimpleName(), + new FlashFloodGuid06Hr()); + ncParamsMap.put(FlashFloodGuid12Hr.class.getSimpleName(), + new FlashFloodGuid12Hr()); + ncParamsMap.put(FlashFloodGuid24Hr.class.getSimpleName(), + new FlashFloodGuid24Hr()); + ncParamsMap.put(FlightRulesID.class.getSimpleName(), + new FlightRulesID()); + ncParamsMap.put(FlightLevel.class.getSimpleName(), + new FlightLevel()); + ncParamsMap.put(FosbergFireWxIndex.class.getSimpleName(), + new FosbergFireWxIndex()); + ncParamsMap.put(FZRainWatchThresh.class.getSimpleName(), + new FZRainWatchThresh()); + // ncParamsMap.put( + // GenericDimensionlessParameter.class.getSimpleName(), new + // GenericDimensionlessParameter() ); + // ncParamsMap.put( GustBarb.class.getSimpleName(), new GustBarb() + // ); ncParamsMap.put(HailSize.class.getSimpleName(), new HailSize()); ncParamsMap.put(HeatIndex.class.getSimpleName(), new HeatIndex()); - ncParamsMap.put(HeightAboveSeaLevel.class.getSimpleName(), new HeightAboveSeaLevel()); - ncParamsMap.put(InstrumentWaveHeight.class.getSimpleName(), new InstrumentWaveHeight()); - ncParamsMap.put(PredomSwellWaveHeight.class.getSimpleName(), new PredomSwellWaveHeight()); - ncParamsMap.put(SecondarySwellWaveHeight.class.getSimpleName(), new SecondarySwellWaveHeight()); + ncParamsMap.put(HeightAboveSeaLevel.class.getSimpleName(), + new HeightAboveSeaLevel()); + ncParamsMap.put(InstrumentWaveHeight.class.getSimpleName(), + new InstrumentWaveHeight()); + ncParamsMap.put(PredomSwellWaveHeight.class.getSimpleName(), + new PredomSwellWaveHeight()); + ncParamsMap.put(SecondarySwellWaveHeight.class.getSimpleName(), + new SecondarySwellWaveHeight()); ncParamsMap.put(WaveHeight.class.getSimpleName(), new WaveHeight()); - ncParamsMap.put(WindWaveHeight.class.getSimpleName(), new WindWaveHeight()); - ncParamsMap.put(Highest1MinMeanWindSpeedInPastHour.class.getSimpleName(), new Highest1MinMeanWindSpeedInPastHour()); - ncParamsMap.put(HighResWaveHeight.class.getSimpleName(), new HighResWaveHeight()); - ncParamsMap.put(HumitureIndex.class.getSimpleName(), new HumitureIndex()); + ncParamsMap.put(WindWaveHeight.class.getSimpleName(), + new WindWaveHeight()); + ncParamsMap.put( + Highest1MinMeanWindSpeedInPastHour.class.getSimpleName(), + new Highest1MinMeanWindSpeedInPastHour()); + ncParamsMap.put(HighResWaveHeight.class.getSimpleName(), + new HighResWaveHeight()); + ncParamsMap.put(HumitureIndex.class.getSimpleName(), + new HumitureIndex()); ncParamsMap.put(IceCode.class.getSimpleName(), new IceCode()); ncParamsMap.put(IceType.class.getSimpleName(), new IceType()); - ncParamsMap.put(IcingIntensitySymbol.class.getSimpleName(), new IcingIntensitySymbol()); - ncParamsMap.put(IcingTypeSymbol.class.getSimpleName(), new IcingTypeSymbol()); - ncParamsMap.put(InterWindDir.class.getSimpleName(), new InterWindDir()); - ncParamsMap.put(InterWindSpeed.class.getSimpleName(), new InterWindSpeed()); - ncParamsMap.put(InterWindTime.class.getSimpleName(), new InterWindTime()); + ncParamsMap.put(IcingIntensitySymbol.class.getSimpleName(), + new IcingIntensitySymbol()); + ncParamsMap.put(IcingTypeSymbol.class.getSimpleName(), + new IcingTypeSymbol()); + ncParamsMap.put(InterWindDir.class.getSimpleName(), + new InterWindDir()); + ncParamsMap.put(InterWindSpeed.class.getSimpleName(), + new InterWindSpeed()); + ncParamsMap.put(InterWindTime.class.getSimpleName(), + new InterWindTime()); ncParamsMap.put(LandSea.class.getSimpleName(), new LandSea()); - ncParamsMap.put(LatentHeatOfVapor.class.getSimpleName(), new LatentHeatOfVapor()); - ncParamsMap.put(LCLParcelPressure.class.getSimpleName(), new LCLParcelPressure()); - ncParamsMap.put(LCLParcelTemperature.class.getSimpleName(), new LCLParcelTemperature()); - ncParamsMap.put(LiftedIndex.class.getSimpleName(), new LiftedIndex()); - ncParamsMap.put(LiftedSurfaceAirTempAt500mb.class.getSimpleName(), new LiftedSurfaceAirTempAt500mb()); - ncParamsMap.put(Lowest01MinAvgPressInPastHour.class.getSimpleName(), new Lowest01MinAvgPressInPastHour()); - ncParamsMap.put(Max24HrTemp.class.getSimpleName(), new Max24HrTemp()); + ncParamsMap.put(LatentHeatOfVapor.class.getSimpleName(), + new LatentHeatOfVapor()); + ncParamsMap.put(LCLParcelPressure.class.getSimpleName(), + new LCLParcelPressure()); + ncParamsMap.put(LCLParcelTemperature.class.getSimpleName(), + new LCLParcelTemperature()); + ncParamsMap.put(LiftedIndex.class.getSimpleName(), + new LiftedIndex()); + ncParamsMap.put(LiftedSurfaceAirTempAt500mb.class.getSimpleName(), + new LiftedSurfaceAirTempAt500mb()); + ncParamsMap.put( + Lowest01MinAvgPressInPastHour.class.getSimpleName(), + new Lowest01MinAvgPressInPastHour()); + ncParamsMap.put(Max24HrTemp.class.getSimpleName(), + new Max24HrTemp()); ncParamsMap.put(Max6HrTemp.class.getSimpleName(), new Max6HrTemp()); - ncParamsMap.put(MaxDailyWeatherMapTemp.class.getSimpleName(), new MaxDailyWeatherMapTemp()); + ncParamsMap.put(MaxDailyWeatherMapTemp.class.getSimpleName(), + new MaxDailyWeatherMapTemp()); ncParamsMap.put(MaxDayTemp.class.getSimpleName(), new MaxDayTemp()); - ncParamsMap.put(MaxEditedTemp.class.getSimpleName(), new MaxEditedTemp()); - ncParamsMap.put(MaxCloudCover.class.getSimpleName(), new MaxCloudCover()); - ncParamsMap.put(MaxPrecipPR6X.class.getSimpleName(), new MaxPrecipPR6X()); //remove?? - ncParamsMap.put(MaxMidnightTemp.class.getSimpleName(), new MaxMidnightTemp()); - ncParamsMap.put(MaxOrMinTemp.class.getSimpleName(), new MaxOrMinTemp()); - ncParamsMap.put(Max12HrPrecipFcst.class.getSimpleName(), new Max12HrPrecipFcst()); - ncParamsMap.put(MaxWindSpeed.class.getSimpleName(), new MaxWindSpeed()); - ncParamsMap.put(MeanSeaLevelPres.class.getSimpleName(), new MeanSeaLevelPres()); - ncParamsMap.put(Min24HrTemp.class.getSimpleName(), new Min24HrTemp()); + ncParamsMap.put(MaxEditedTemp.class.getSimpleName(), + new MaxEditedTemp()); + ncParamsMap.put(MaxCloudCover.class.getSimpleName(), + new MaxCloudCover()); + ncParamsMap.put(MaxPrecipPR6X.class.getSimpleName(), + new MaxPrecipPR6X()); // remove?? + ncParamsMap.put(MaxMidnightTemp.class.getSimpleName(), + new MaxMidnightTemp()); + ncParamsMap.put(MaxOrMinTemp.class.getSimpleName(), + new MaxOrMinTemp()); + ncParamsMap.put(Max12HrPrecipFcst.class.getSimpleName(), + new Max12HrPrecipFcst()); + ncParamsMap.put(MaxWindSpeed.class.getSimpleName(), + new MaxWindSpeed()); + ncParamsMap.put(MeanSeaLevelPres.class.getSimpleName(), + new MeanSeaLevelPres()); + ncParamsMap.put(Min24HrTemp.class.getSimpleName(), + new Min24HrTemp()); ncParamsMap.put(Min6HrTemp.class.getSimpleName(), new Min6HrTemp()); - ncParamsMap.put(MinDailyWeatherMapTemp.class.getSimpleName(), new MinDailyWeatherMapTemp()); - ncParamsMap.put(MinNightTemp.class.getSimpleName(), new MinNightTemp()); - ncParamsMap.put(MixingRatio.class.getSimpleName(), new MixingRatio()); - ncParamsMap.put(MoistHydrostaticHeight.class.getSimpleName(), new MoistHydrostaticHeight()); - ncParamsMap.put(MontgomeryStreamFnct.class.getSimpleName(), new MontgomeryStreamFnct()); - ncParamsMap.put(MountainObscThreshMetIndicator.class.getSimpleName(), new MountainObscThreshMetIndicator()); - ncParamsMap.put(MountainObscThresh.class.getSimpleName(), new MountainObscThresh()); - ncParamsMap.put(NightTempAnomaly.class.getSimpleName(), new NightTempAnomaly()); - ncParamsMap.put(NewSnowAmount.class.getSimpleName(), new NewSnowAmount()); - ncParamsMap.put(NightTempFcst.class.getSimpleName(), new NightTempFcst()); - ncParamsMap.put(NumInterWinds.class.getSimpleName(), new NumInterWinds()); - ncParamsMap.put(AirParcelTemp.class.getSimpleName(), new AirParcelTemp()); + ncParamsMap.put(MinDailyWeatherMapTemp.class.getSimpleName(), + new MinDailyWeatherMapTemp()); + ncParamsMap.put(MinNightTemp.class.getSimpleName(), + new MinNightTemp()); + ncParamsMap.put(MixingRatio.class.getSimpleName(), + new MixingRatio()); + ncParamsMap.put(MoistHydrostaticHeight.class.getSimpleName(), + new MoistHydrostaticHeight()); + ncParamsMap.put(MontgomeryStreamFnct.class.getSimpleName(), + new MontgomeryStreamFnct()); + ncParamsMap.put( + MountainObscThreshMetIndicator.class.getSimpleName(), + new MountainObscThreshMetIndicator()); + ncParamsMap.put(MountainObscThresh.class.getSimpleName(), + new MountainObscThresh()); + ncParamsMap.put(NightTempAnomaly.class.getSimpleName(), + new NightTempAnomaly()); + ncParamsMap.put(NewSnowAmount.class.getSimpleName(), + new NewSnowAmount()); + ncParamsMap.put(NightTempFcst.class.getSimpleName(), + new NightTempFcst()); + ncParamsMap.put(NumInterWinds.class.getSimpleName(), + new NumInterWinds()); + ncParamsMap.put(AirParcelTemp.class.getSimpleName(), + new AirParcelTemp()); ncParamsMap.put(Omega.class.getSimpleName(), new Omega()); - ncParamsMap.put(PeakWindDir.class.getSimpleName(), new PeakWindDir()); - ncParamsMap.put(PeakWindSpeed.class.getSimpleName(), new PeakWindSpeed()); - ncParamsMap.put(PeakWindSpeedTime.class.getSimpleName(), new PeakWindSpeedTime()); - ncParamsMap.put(InstrumentWavePeriod.class.getSimpleName(), new InstrumentWavePeriod()); - ncParamsMap.put(PredomSwellWavePeriod.class.getSimpleName(), new PredomSwellWavePeriod()); - ncParamsMap.put(SecondarySwellWavePeriod.class.getSimpleName(), new SecondarySwellWavePeriod()); + ncParamsMap.put(PeakWindDir.class.getSimpleName(), + new PeakWindDir()); + ncParamsMap.put(PeakWindSpeed.class.getSimpleName(), + new PeakWindSpeed()); + ncParamsMap.put(PeakWindSpeedTime.class.getSimpleName(), + new PeakWindSpeedTime()); + ncParamsMap.put(InstrumentWavePeriod.class.getSimpleName(), + new InstrumentWavePeriod()); + ncParamsMap.put(PredomSwellWavePeriod.class.getSimpleName(), + new PredomSwellWavePeriod()); + ncParamsMap.put(SecondarySwellWavePeriod.class.getSimpleName(), + new SecondarySwellWavePeriod()); ncParamsMap.put(WavePeriod.class.getSimpleName(), new WavePeriod()); - ncParamsMap.put(WindWavePeriod.class.getSimpleName(), new WindWavePeriod()); - ncParamsMap.put(PerpendicularWindComp.class.getSimpleName(), new PerpendicularWindComp()); - ncParamsMap.put(PotentialTemp.class.getSimpleName(), new PotentialTemp()); - ncParamsMap.put(PotentialTempAt10Meters.class.getSimpleName(), new PotentialTempAt10Meters()); - ncParamsMap.put(PlatformTrueDirection.class.getSimpleName(), new PlatformTrueDirection()); - ncParamsMap.put(PlatformTrueSpeed.class.getSimpleName(), new PlatformTrueSpeed()); - ncParamsMap.put(PotentialTempLapseRate.class.getSimpleName(), new PotentialTempLapseRate()); - ncParamsMap.put(PrecipitableWaterForEntireSounding.class.getSimpleName(), new PrecipitableWaterForEntireSounding()); - ncParamsMap.put(PrecipitableWaterUptoSpecifiedLevel.class.getSimpleName(), new PrecipitableWaterUptoSpecifiedLevel()); - ncParamsMap.put(Precipitation.class.getSimpleName(), new Precipitation()); + ncParamsMap.put(WindWavePeriod.class.getSimpleName(), + new WindWavePeriod()); + ncParamsMap.put(PerpendicularWindComp.class.getSimpleName(), + new PerpendicularWindComp()); + ncParamsMap.put(PotentialTemp.class.getSimpleName(), + new PotentialTemp()); + ncParamsMap.put(PotentialTempAt10Meters.class.getSimpleName(), + new PotentialTempAt10Meters()); + ncParamsMap.put(PlatformTrueDirection.class.getSimpleName(), + new PlatformTrueDirection()); + ncParamsMap.put(PlatformTrueSpeed.class.getSimpleName(), + new PlatformTrueSpeed()); + ncParamsMap.put(PotentialTempLapseRate.class.getSimpleName(), + new PotentialTempLapseRate()); + ncParamsMap.put( + PrecipitableWaterForEntireSounding.class.getSimpleName(), + new PrecipitableWaterForEntireSounding()); + ncParamsMap.put( + PrecipitableWaterUptoSpecifiedLevel.class.getSimpleName(), + new PrecipitableWaterUptoSpecifiedLevel()); + ncParamsMap.put(Precipitation.class.getSimpleName(), + new Precipitation()); ncParamsMap.put(Precip01Hr.class.getSimpleName(), new Precip01Hr()); ncParamsMap.put(Precip03Hr.class.getSimpleName(), new Precip03Hr()); ncParamsMap.put(Precip06Hr.class.getSimpleName(), new Precip06Hr()); - // ncParamsMap.put( PrecipitationIn09Hours.class.getSimpleName(), new PrecipitationIn09Hours() ); + // ncParamsMap.put( PrecipitationIn09Hours.class.getSimpleName(), + // new PrecipitationIn09Hours() ); ncParamsMap.put(Precip12Hr.class.getSimpleName(), new Precip12Hr()); ncParamsMap.put(Precip18Hr.class.getSimpleName(), new Precip18Hr()); ncParamsMap.put(Precip24Hr.class.getSimpleName(), new Precip24Hr()); - ncParamsMap.put(PresentWeather.class.getSimpleName(), new PresentWeather()); - ncParamsMap.put(PressureLevel.class.getSimpleName(), new PressureLevel()); - ncParamsMap.put(PressChange3Hr.class.getSimpleName(), new PressChange3Hr()); + ncParamsMap.put(PresentWeather.class.getSimpleName(), + new PresentWeather()); + ncParamsMap.put(PressureLevel.class.getSimpleName(), + new PressureLevel()); + ncParamsMap.put(PressChange3Hr.class.getSimpleName(), + new PressChange3Hr()); // TTR 923 - ncParamsMap.put(PressChange3HrAbsVal.class.getSimpleName(), new PressChange3HrAbsVal()); - ncParamsMap.put(PressureChange3HrAndTendency.class.getSimpleName(), new PressureChange3HrAndTendency()); + ncParamsMap.put(PressChange3HrAbsVal.class.getSimpleName(), + new PressChange3HrAbsVal()); + ncParamsMap.put(PressureChange3HrAndTendency.class.getSimpleName(), + new PressureChange3HrAndTendency()); - ncParamsMap.put(PressChange24Hr.class.getSimpleName(), new PressChange24Hr()); - ncParamsMap.put(PressureTendencySymbol.class.getSimpleName(), new PressureTendencySymbol()); - ncParamsMap.put(POPFcst06Hrs.class.getSimpleName(), new POPFcst06Hrs()); - ncParamsMap.put(POPFcst12Hrs.class.getSimpleName(), new POPFcst12Hrs()); - ncParamsMap.put(POPFcst24Hrs.class.getSimpleName(), new POPFcst24Hrs()); - ncParamsMap.put(POPAnomalyIn12hrs.class.getSimpleName(), new POPAnomalyIn12hrs()); - ncParamsMap.put(POPAnomalyIn12hrs.class.getSimpleName(), new POPAnomalyIn12hrs()); + ncParamsMap.put(PressChange24Hr.class.getSimpleName(), + new PressChange24Hr()); + ncParamsMap.put(PressureTendencySymbol.class.getSimpleName(), + new PressureTendencySymbol()); + ncParamsMap.put(POPFcst06Hrs.class.getSimpleName(), + new POPFcst06Hrs()); + ncParamsMap.put(POPFcst12Hrs.class.getSimpleName(), + new POPFcst12Hrs()); + ncParamsMap.put(POPFcst24Hrs.class.getSimpleName(), + new POPFcst24Hrs()); + ncParamsMap.put(POPAnomalyIn12hrs.class.getSimpleName(), + new POPAnomalyIn12hrs()); + ncParamsMap.put(POPAnomalyIn12hrs.class.getSimpleName(), + new POPAnomalyIn12hrs()); ncParamsMap.put(POP01Hr.class.getSimpleName(), new POP01Hr()); ncParamsMap.put(POP03Hrs.class.getSimpleName(), new POP03Hrs()); ncParamsMap.put(POP06Hrs.class.getSimpleName(), new POP06Hrs()); ncParamsMap.put(POP12Hrs.class.getSimpleName(), new POP12Hrs()); ncParamsMap.put(POP24Hrs.class.getSimpleName(), new POP24Hrs()); - ncParamsMap.put(POPAnomalyIn24hrs.class.getSimpleName(), new POPAnomalyIn24hrs()); - ncParamsMap.put(QuantPrecipFcstBestCat06Hr.class.getSimpleName(), new QuantPrecipFcstBestCat06Hr()); - ncParamsMap.put(QuantPrecipFcstBestCat12Hr.class.getSimpleName(), new QuantPrecipFcstBestCat12Hr()); - ncParamsMap.put(QuantPrecipFcstBestCat24Hr.class.getSimpleName(), new QuantPrecipFcstBestCat24Hr()); - ncParamsMap.put(RateOfIceAccretionOnVesselInSaltWater.class.getSimpleName(), new RateOfIceAccretionOnVesselInSaltWater()); - ncParamsMap.put(RelativeHumidity.class.getSimpleName(), new RelativeHumidity()); - ncParamsMap.put(RelFreqPrecip24HrsClim.class.getSimpleName(), new RelFreqPrecip24HrsClim()); - ncParamsMap.put(RichardsonNumber.class.getSimpleName(), new RichardsonNumber()); - ncParamsMap.put(SatEquivPotentialTemp.class.getSimpleName(), new SatEquivPotentialTemp()); - ncParamsMap.put(SatMixingRatio.class.getSimpleName(), new SatMixingRatio()); - ncParamsMap.put(SatVaporPressure.class.getSimpleName(), new SatVaporPressure()); - ncParamsMap.put(SeaIceDriftDist.class.getSimpleName(), new SeaIceDriftDist()); - ncParamsMap.put(SeaLevelPressure.class.getSimpleName(), new SeaLevelPressure()); - ncParamsMap.put(SeaSurfaceTemp.class.getSimpleName(), new SeaSurfaceTemp()); - ncParamsMap.put(ShowalterIndex.class.getSimpleName(), new ShowalterIndex()); - ncParamsMap.put(SkinTemperature.class.getSimpleName(), new SkinTemperature()); - ncParamsMap.put(SkyCoverage.class.getSimpleName(), new SkyCoverage()); - ncParamsMap.put(SnowDepth.class.getSimpleName(), new SnowDepth()); - ncParamsMap.put(SnowIcePelletWatchThresh.class.getSimpleName(), new SnowIcePelletWatchThresh()); - ncParamsMap.put(SpeedOf05SecPeakWind.class.getSimpleName(), new SpeedOf05SecPeakWind()); - ncParamsMap.put(SpecificHumidity.class.getSimpleName(), new SpecificHumidity()); - ncParamsMap.put(SpecificHumidityAt02Meters.class.getSimpleName(), new SpecificHumidityAt02Meters()); - ncParamsMap.put(SpecificHumidityAt10Meters.class.getSimpleName(), new SpecificHumidityAt10Meters()); - ncParamsMap.put(StabilityWithRespectToPressure.class.getSimpleName(), new StabilityWithRespectToPressure()); - ncParamsMap.put(StationElevation.class.getSimpleName(), new StationElevation()); - ncParamsMap.put(StationID.class.getSimpleName(), new StationID()); - ncParamsMap.put(StationLatitude.class.getSimpleName(), new StationLatitude()); - ncParamsMap.put(StationLongitude.class.getSimpleName(), new StationLongitude()); - ncParamsMap.put(StationName.class.getSimpleName(), new StationName()); - ncParamsMap.put(SurfacePressure.class.getSimpleName(), new SurfacePressure()); - ncParamsMap.put(StormMotionSpeed.class.getSimpleName(), new StormMotionSpeed()); - ncParamsMap.put(StormMotionDirection.class.getSimpleName(), new StormMotionDirection()); - // ncParamsMap.put( SumOfFour6HrPrecipitation.class.getSimpleName(), new SumOfFour6HrPrecipitation() ); - ncParamsMap.put(SunshineDuration.class.getSimpleName(), new SunshineDuration()); - ncParamsMap.put(SurfaceEquivPotentialTemp.class.getSimpleName(), new SurfaceEquivPotentialTemp()); - ncParamsMap.put(SurfaceMixingRatio.class.getSimpleName(), new SurfaceMixingRatio()); - ncParamsMap.put(SurfacePotentialTemp.class.getSimpleName(), new SurfacePotentialTemp()); - ncParamsMap.put(SurfacePressure.class.getSimpleName(), new SurfacePressure()); - ncParamsMap.put(SurfaceSatEquivPotentialTemp.class.getSimpleName(), new SurfaceSatEquivPotentialTemp()); - ncParamsMap.put(SurfaceSatMixingRatio.class.getSimpleName(), new SurfaceSatMixingRatio()); - ncParamsMap.put(AirTemperature.class.getSimpleName(), new AirTemperature()); - ncParamsMap.put(TempLapseRate.class.getSimpleName(), new TempLapseRate()); - ncParamsMap.put(ProbableCeiling.class.getSimpleName(), new ProbableCeiling()); - ncParamsMap.put(ProbableCeilingAsMeanSeaLevel.class.getSimpleName(), new ProbableCeilingAsMeanSeaLevel()); - ncParamsMap.put(ProbableFlightRuleIdentifier.class.getSimpleName(), new ProbableFlightRuleIdentifier()); - ncParamsMap.put(ProbableMountainObscThreshMetIndicator.class.getSimpleName(), new ProbableMountainObscThreshMetIndicator()); - ncParamsMap.put(ProbableVisibility.class.getSimpleName(), new ProbableVisibility()); - ncParamsMap.put(ProbableWindDirection.class.getSimpleName(), new ProbableWindDirection()); - ncParamsMap.put(ProbableWindGust.class.getSimpleName(), new ProbableWindGust()); - ncParamsMap.put(ProbableWindSpeed.class.getSimpleName(), new ProbableWindSpeed()); - // ncParamsMap.put( ThunderstormOccurring2hr.class.getSimpleName(), new ThunderstormOccurring2hr() ); - // ncParamsMap.put( ThunderstormOccurring6hr.class.getSimpleName(), new ThunderstormOccurring6hr() ); - // ncParamsMap.put( ThunderstormOccurring12hr.class.getSimpleName(), new ThunderstormOccurring12hr() ); - // ncParamsMap.put( ThunderstormOccurring24hr.class.getSimpleName(), new ThunderstormOccurring24hr() ); - ncParamsMap.put(ShipIceThickness.class.getSimpleName(), new ShipIceThickness()); - ncParamsMap.put(StationNumber.class.getSimpleName(), new StationNumber()); - ncParamsMap.put(TopOfIcing.class.getSimpleName(), new TopOfIcing()); - ncParamsMap.put(TopOfTurbulence.class.getSimpleName(), new TopOfTurbulence()); - ncParamsMap.put(TopOfWeather.class.getSimpleName(), new TopOfWeather()); - ncParamsMap.put(TotalSkyCoverFcst12hr.class.getSimpleName(), new TotalSkyCoverFcst12hr()); - ncParamsMap.put(TotalPrecip.class.getSimpleName(), new TotalPrecip()); - ncParamsMap.put(TotalSkyCoverFcst12hr.class.getSimpleName(), new TotalSkyCoverFcst12hr()); - ncParamsMap.put(TurbulenceFrequencySymbol.class.getSimpleName(), new TurbulenceFrequencySymbol()); - ncParamsMap.put(TurbulenceIntensitySymbol.class.getSimpleName(), new TurbulenceIntensitySymbol()); - ncParamsMap.put(TurbulenceTypeSymbol.class.getSimpleName(), new TurbulenceTypeSymbol()); - ncParamsMap.put(TurbulentKineticEnergy.class.getSimpleName(), new TurbulentKineticEnergy()); - ncParamsMap.put(EstStormDirectionUComp.class.getSimpleName(), new EstStormDirectionUComp()); - ncParamsMap.put(UCompAt10Meters.class.getSimpleName(), new UCompAt10Meters()); - ncParamsMap.put(UncondProbOf06HrSevereWeather.class.getSimpleName(), new UncondProbOf06HrSevereWeather()); - ncParamsMap.put(UncondProbOf12HrSevereWeather.class.getSimpleName(), new UncondProbOf12HrSevereWeather()); - ncParamsMap.put(UncondProbOf24HrSevereWeather.class.getSimpleName(), new UncondProbOf24HrSevereWeather()); + ncParamsMap.put(POPAnomalyIn24hrs.class.getSimpleName(), + new POPAnomalyIn24hrs()); + ncParamsMap.put(QuantPrecipFcstBestCat06Hr.class.getSimpleName(), + new QuantPrecipFcstBestCat06Hr()); + ncParamsMap.put(QuantPrecipFcstBestCat12Hr.class.getSimpleName(), + new QuantPrecipFcstBestCat12Hr()); + ncParamsMap.put(QuantPrecipFcstBestCat24Hr.class.getSimpleName(), + new QuantPrecipFcstBestCat24Hr()); + ncParamsMap + .put(RateOfIceAccretionOnVesselInSaltWater.class + .getSimpleName(), + new RateOfIceAccretionOnVesselInSaltWater()); + ncParamsMap.put(RelativeHumidity.class.getSimpleName(), + new RelativeHumidity()); + ncParamsMap.put(RelFreqPrecip24HrsClim.class.getSimpleName(), + new RelFreqPrecip24HrsClim()); + ncParamsMap.put(RichardsonNumber.class.getSimpleName(), + new RichardsonNumber()); + ncParamsMap.put(SatEquivPotentialTemp.class.getSimpleName(), + new SatEquivPotentialTemp()); + ncParamsMap.put(SatMixingRatio.class.getSimpleName(), + new SatMixingRatio()); + ncParamsMap.put(SatVaporPressure.class.getSimpleName(), + new SatVaporPressure()); + ncParamsMap.put(SeaIceDriftDist.class.getSimpleName(), + new SeaIceDriftDist()); + ncParamsMap.put(SeaLevelPressure.class.getSimpleName(), + new SeaLevelPressure()); + ncParamsMap.put(SeaSurfaceTemp.class.getSimpleName(), + new SeaSurfaceTemp()); + ncParamsMap.put(ShowalterIndex.class.getSimpleName(), + new ShowalterIndex()); - ncParamsMap.put(UncondProbOfTstorms2hr.class.getSimpleName(), new UncondProbOfTstorms2hr()); - ncParamsMap.put(UncondProbOfTstorms6hr.class.getSimpleName(), new UncondProbOfTstorms6hr()); - ncParamsMap.put(UncondProbOfTstorms12hr.class.getSimpleName(), new UncondProbOfTstorms12hr()); - ncParamsMap.put(UncondProbOfTstorms24hr.class.getSimpleName(), new UncondProbOfTstorms24hr()); - ncParamsMap.put(VCompAt10Meters.class.getSimpleName(), new VCompAt10Meters()); - ncParamsMap.put(WindDirectionUComp.class.getSimpleName(), new WindDirectionUComp()); - ncParamsMap.put(VaporPressure.class.getSimpleName(), new VaporPressure()); - ncParamsMap.put(EstStormDirectionVComp.class.getSimpleName(), new EstStormDirectionVComp()); - ncParamsMap.put(IsentropesVerticalSeparation.class.getSimpleName(), new IsentropesVerticalSeparation()); - ncParamsMap.put(VerticalVelocity.class.getSimpleName(), new VerticalVelocity()); - ncParamsMap.put(VirtualPotentialTemp.class.getSimpleName(), new VirtualPotentialTemp()); - ncParamsMap.put(VirtualTemp.class.getSimpleName(), new VirtualTemp()); + // Redmine 4318 + ncParamsMap.put(SignificantWaveHeight.class.getSimpleName(), + new SignificantWaveHeight()); + + ncParamsMap.put(SkinTemperature.class.getSimpleName(), + new SkinTemperature()); + ncParamsMap.put(SkyCoverage.class.getSimpleName(), + new SkyCoverage()); + ncParamsMap.put(SnowDepth.class.getSimpleName(), new SnowDepth()); + ncParamsMap.put(SnowIcePelletWatchThresh.class.getSimpleName(), + new SnowIcePelletWatchThresh()); + ncParamsMap.put(SpeedOf05SecPeakWind.class.getSimpleName(), + new SpeedOf05SecPeakWind()); + ncParamsMap.put(SpecificHumidity.class.getSimpleName(), + new SpecificHumidity()); + ncParamsMap.put(SpecificHumidityAt02Meters.class.getSimpleName(), + new SpecificHumidityAt02Meters()); + ncParamsMap.put(SpecificHumidityAt10Meters.class.getSimpleName(), + new SpecificHumidityAt10Meters()); + ncParamsMap.put( + StabilityWithRespectToPressure.class.getSimpleName(), + new StabilityWithRespectToPressure()); + ncParamsMap.put(StationElevation.class.getSimpleName(), + new StationElevation()); + ncParamsMap.put(StationID.class.getSimpleName(), new StationID()); + ncParamsMap.put(StationLatitude.class.getSimpleName(), + new StationLatitude()); + ncParamsMap.put(StationLongitude.class.getSimpleName(), + new StationLongitude()); + ncParamsMap.put(StationName.class.getSimpleName(), + new StationName()); + ncParamsMap.put(SurfacePressure.class.getSimpleName(), + new SurfacePressure()); + ncParamsMap.put(StormMotionSpeed.class.getSimpleName(), + new StormMotionSpeed()); + ncParamsMap.put(StormMotionDirection.class.getSimpleName(), + new StormMotionDirection()); + // ncParamsMap.put( SumOfFour6HrPrecipitation.class.getSimpleName(), + // new SumOfFour6HrPrecipitation() ); + ncParamsMap.put(SunshineDuration.class.getSimpleName(), + new SunshineDuration()); + ncParamsMap.put(SurfaceEquivPotentialTemp.class.getSimpleName(), + new SurfaceEquivPotentialTemp()); + ncParamsMap.put(SurfaceMixingRatio.class.getSimpleName(), + new SurfaceMixingRatio()); + ncParamsMap.put(SurfacePotentialTemp.class.getSimpleName(), + new SurfacePotentialTemp()); + ncParamsMap.put(SurfacePressure.class.getSimpleName(), + new SurfacePressure()); + ncParamsMap.put(SurfaceSatEquivPotentialTemp.class.getSimpleName(), + new SurfaceSatEquivPotentialTemp()); + ncParamsMap.put(SurfaceSatMixingRatio.class.getSimpleName(), + new SurfaceSatMixingRatio()); + ncParamsMap.put(AirTemperature.class.getSimpleName(), + new AirTemperature()); + ncParamsMap.put(TempLapseRate.class.getSimpleName(), + new TempLapseRate()); + ncParamsMap.put(ProbableCeiling.class.getSimpleName(), + new ProbableCeiling()); + ncParamsMap.put( + ProbableCeilingAsMeanSeaLevel.class.getSimpleName(), + new ProbableCeilingAsMeanSeaLevel()); + ncParamsMap.put(ProbableFlightRuleIdentifier.class.getSimpleName(), + new ProbableFlightRuleIdentifier()); + ncParamsMap.put(ProbableMountainObscThreshMetIndicator.class + .getSimpleName(), + new ProbableMountainObscThreshMetIndicator()); + ncParamsMap.put(ProbableVisibility.class.getSimpleName(), + new ProbableVisibility()); + ncParamsMap.put(ProbableWindDirection.class.getSimpleName(), + new ProbableWindDirection()); + ncParamsMap.put(ProbableWindGust.class.getSimpleName(), + new ProbableWindGust()); + ncParamsMap.put(ProbableWindSpeed.class.getSimpleName(), + new ProbableWindSpeed()); + // ncParamsMap.put( ThunderstormOccurring2hr.class.getSimpleName(), + // new ThunderstormOccurring2hr() ); + // ncParamsMap.put( ThunderstormOccurring6hr.class.getSimpleName(), + // new ThunderstormOccurring6hr() ); + // ncParamsMap.put( ThunderstormOccurring12hr.class.getSimpleName(), + // new ThunderstormOccurring12hr() ); + // ncParamsMap.put( ThunderstormOccurring24hr.class.getSimpleName(), + // new ThunderstormOccurring24hr() ); + ncParamsMap.put(ShipIceThickness.class.getSimpleName(), + new ShipIceThickness()); + ncParamsMap.put(StationNumber.class.getSimpleName(), + new StationNumber()); + ncParamsMap.put(TopOfIcing.class.getSimpleName(), new TopOfIcing()); + ncParamsMap.put(TopOfTurbulence.class.getSimpleName(), + new TopOfTurbulence()); + ncParamsMap.put(TopOfWeather.class.getSimpleName(), + new TopOfWeather()); + ncParamsMap.put(TotalSkyCoverFcst12hr.class.getSimpleName(), + new TotalSkyCoverFcst12hr()); + ncParamsMap.put(TotalPrecip.class.getSimpleName(), + new TotalPrecip()); + ncParamsMap.put(TotalSkyCoverFcst12hr.class.getSimpleName(), + new TotalSkyCoverFcst12hr()); + ncParamsMap.put(TurbulenceFrequencySymbol.class.getSimpleName(), + new TurbulenceFrequencySymbol()); + ncParamsMap.put(TurbulenceIntensitySymbol.class.getSimpleName(), + new TurbulenceIntensitySymbol()); + ncParamsMap.put(TurbulenceTypeSymbol.class.getSimpleName(), + new TurbulenceTypeSymbol()); + ncParamsMap.put(TurbulentKineticEnergy.class.getSimpleName(), + new TurbulentKineticEnergy()); + ncParamsMap.put(EstStormDirectionUComp.class.getSimpleName(), + new EstStormDirectionUComp()); + ncParamsMap.put(UCompAt10Meters.class.getSimpleName(), + new UCompAt10Meters()); + ncParamsMap.put( + UncondProbOf06HrSevereWeather.class.getSimpleName(), + new UncondProbOf06HrSevereWeather()); + ncParamsMap.put( + UncondProbOf12HrSevereWeather.class.getSimpleName(), + new UncondProbOf12HrSevereWeather()); + ncParamsMap.put( + UncondProbOf24HrSevereWeather.class.getSimpleName(), + new UncondProbOf24HrSevereWeather()); + + ncParamsMap.put(UncondProbOfTstorms2hr.class.getSimpleName(), + new UncondProbOfTstorms2hr()); + ncParamsMap.put(UncondProbOfTstorms6hr.class.getSimpleName(), + new UncondProbOfTstorms6hr()); + ncParamsMap.put(UncondProbOfTstorms12hr.class.getSimpleName(), + new UncondProbOfTstorms12hr()); + ncParamsMap.put(UncondProbOfTstorms24hr.class.getSimpleName(), + new UncondProbOfTstorms24hr()); + ncParamsMap.put(VCompAt10Meters.class.getSimpleName(), + new VCompAt10Meters()); + ncParamsMap.put(WindDirectionUComp.class.getSimpleName(), + new WindDirectionUComp()); + ncParamsMap.put(VaporPressure.class.getSimpleName(), + new VaporPressure()); + ncParamsMap.put(EstStormDirectionVComp.class.getSimpleName(), + new EstStormDirectionVComp()); + ncParamsMap.put(IsentropesVerticalSeparation.class.getSimpleName(), + new IsentropesVerticalSeparation()); + ncParamsMap.put(VerticalVelocity.class.getSimpleName(), + new VerticalVelocity()); + ncParamsMap.put(VirtualPotentialTemp.class.getSimpleName(), + new VirtualPotentialTemp()); + ncParamsMap.put(VirtualTemp.class.getSimpleName(), + new VirtualTemp()); ncParamsMap.put(Visibility.class.getSimpleName(), new Visibility()); - ncParamsMap.put(WindDirectionVComp.class.getSimpleName(), new WindDirectionVComp()); - ncParamsMap.put(WaterEquivOfNewSnow.class.getSimpleName(), new WaterEquivOfNewSnow()); - ncParamsMap.put(WaveSteepness.class.getSimpleName(), new WaveSteepness()); - ncParamsMap.put(WetBulbPotentialTemp.class.getSimpleName(), new WetBulbPotentialTemp()); - ncParamsMap.put(WetBulbTemp.class.getSimpleName(), new WetBulbTemp()); - // ncParamsMap.put( WindBarb.class.getSimpleName(), new WindBarb() ); - ncParamsMap.put(WindChillEquivalentTemp.class.getSimpleName(), new WindChillEquivalentTemp()); - ncParamsMap.put(WindChillTemperature.class.getSimpleName(), new WindChillTemperature()); - ncParamsMap.put(WindSpeedComp.class.getSimpleName(), new WindSpeedComp()); - ncParamsMap.put(WindCompDirection.class.getSimpleName(), new WindCompDirection()); - ncParamsMap.put(WindDirection.class.getSimpleName(), new WindDirection()); + ncParamsMap.put(WindDirectionVComp.class.getSimpleName(), + new WindDirectionVComp()); + ncParamsMap.put(WaterEquivOfNewSnow.class.getSimpleName(), + new WaterEquivOfNewSnow()); + ncParamsMap.put(WaveSteepness.class.getSimpleName(), + new WaveSteepness()); + ncParamsMap.put(WetBulbPotentialTemp.class.getSimpleName(), + new WetBulbPotentialTemp()); + ncParamsMap.put(WetBulbTemp.class.getSimpleName(), + new WetBulbTemp()); + // ncParamsMap.put( WindBarb.class.getSimpleName(), new WindBarb() + // ); + ncParamsMap.put(WindChillEquivalentTemp.class.getSimpleName(), + new WindChillEquivalentTemp()); + ncParamsMap.put(WindChillTemperature.class.getSimpleName(), + new WindChillTemperature()); + ncParamsMap.put(WindSpeedComp.class.getSimpleName(), + new WindSpeedComp()); + ncParamsMap.put(WindCompDirection.class.getSimpleName(), + new WindCompDirection()); + ncParamsMap.put(WindDirection.class.getSimpleName(), + new WindDirection()); ncParamsMap.put(WindGust.class.getSimpleName(), new WindGust()); ncParamsMap.put(WindSpeed.class.getSimpleName(), new WindSpeed()); - ncParamsMap.put(CeilingFromSeaLevelWorstCase.class.getSimpleName(), new CeilingFromSeaLevelWorstCase()); - ncParamsMap.put(FlightRulesIdWorstCase.class.getSimpleName(), new FlightRulesIdWorstCase()); - ncParamsMap.put(MountainObscThreshMetIndicatorWorstCase.class.getSimpleName(), new MountainObscThreshMetIndicatorWorstCase()); - ncParamsMap.put(Probability.class.getSimpleName(), new Probability()); - ncParamsMap.put(ProbableSkyCoverage.class.getSimpleName(), new ProbableSkyCoverage()); - ncParamsMap.put(ReportTimeInHourMins.class.getSimpleName(), new ReportTimeInHourMins()); - ncParamsMap.put(ProbablePresentWeather.class.getSimpleName(), new ProbablePresentWeather()); - ncParamsMap.put(LowLevelWindShear.class.getSimpleName(), new LowLevelWindShear()); + ncParamsMap.put(CeilingFromSeaLevelWorstCase.class.getSimpleName(), + new CeilingFromSeaLevelWorstCase()); + ncParamsMap.put(FlightRulesIdWorstCase.class.getSimpleName(), + new FlightRulesIdWorstCase()); + ncParamsMap.put(MountainObscThreshMetIndicatorWorstCase.class + .getSimpleName(), + new MountainObscThreshMetIndicatorWorstCase()); + ncParamsMap.put(Probability.class.getSimpleName(), + new Probability()); + ncParamsMap.put(ProbableSkyCoverage.class.getSimpleName(), + new ProbableSkyCoverage()); + ncParamsMap.put(ReportTimeInHourMins.class.getSimpleName(), + new ReportTimeInHourMins()); + ncParamsMap.put(ProbablePresentWeather.class.getSimpleName(), + new ProbablePresentWeather()); + ncParamsMap.put(LowLevelWindShear.class.getSimpleName(), + new LowLevelWindShear()); ncParamsMap.put(WxPresent.class.getSimpleName(), new WxPresent()); } catch (Exception e) { e.printStackTrace(); @@ -369,16 +638,19 @@ public class MetParameterFactory implements ISerializableObject { AbstractMetParameter ncParam = ncParamsMap.get(ncParamName); try { - AbstractMetParameter newParam = (AbstractMetParameter) ncParam.getClass().getConstructor().newInstance(); + AbstractMetParameter newParam = (AbstractMetParameter) ncParam + .getClass().getConstructor().newInstance(); return newParam; } catch (Exception e) { - System.out.println("error getting newInstance for metParam " + ncParam.getClass().getSimpleName()); + System.out.println("error getting newInstance for metParam " + + ncParam.getClass().getSimpleName()); } return null; } - // u is the expected units and must be compatible with the units for the implemented + // u is the expected units and must be compatible with the units for the + // implemented // Quantity. public AbstractMetParameter createParameter(String prmName, String unitName) { Unit units; @@ -387,7 +659,8 @@ public class MetParameterFactory implements ISerializableObject { units = Unit.ONE; } else { try { - units = UnitFormat.getUCUMInstance().parseProductUnit(unitName, new ParsePosition(0)); + units = UnitFormat.getUCUMInstance().parseProductUnit(unitName, + new ParsePosition(0)); } catch (ParseException e) { System.out.println("unable to determine units for " + unitName); return null; @@ -399,7 +672,7 @@ public class MetParameterFactory implements ISerializableObject { // create a parameter value with MISSING value. // name may be an alias, or the name of the parameter - // + // public AbstractMetParameter createParameter(String prmName, Unit u) { AbstractMetParameter newParam = createParameter(prmName); newParam.setUnitPair(u); @@ -412,7 +685,8 @@ public class MetParameterFactory implements ISerializableObject { return newParam; } - public AbstractMetParameter createParameter(String prmName, Unit u, DataTime dt) { + public AbstractMetParameter createParameter(String prmName, Unit u, + DataTime dt) { AbstractMetParameter newParam = createParameter(prmName); newParam.setValidTime(dt); newParam.setUnitPair(u); @@ -421,9 +695,12 @@ public class MetParameterFactory implements ISerializableObject { public boolean alias(String prmName, String alias) { - if (ncParamsAliasMap.containsKey(alias) && !ncParamsAliasMap.get(alias).equals(prmName)) { - System.out.println("Error aliasing ncParam " + prmName + " : " + alias + " is already aliased to " + ncParamsAliasMap.get(alias)); - // return false; + if (ncParamsAliasMap.containsKey(alias) + && !ncParamsAliasMap.get(alias).equals(prmName)) { + System.out.println("Error aliasing ncParam " + prmName + " : " + + alias + " is already aliased to " + + ncParamsAliasMap.get(alias)); + // return false; } ncParamsAliasMap.put(alias, prmName); diff --git a/ncep/gov.noaa.nws.ncep.edex.common/src/gov/noaa/nws/ncep/edex/common/metparameters/PressureChange3HrAndTendency.java b/ncep/gov.noaa.nws.ncep.edex.common/src/gov/noaa/nws/ncep/edex/common/metparameters/PressureChange3HrAndTendency.java index 08f66d1ffa..37a0af0164 100644 --- a/ncep/gov.noaa.nws.ncep.edex.common/src/gov/noaa/nws/ncep/edex/common/metparameters/PressureChange3HrAndTendency.java +++ b/ncep/gov.noaa.nws.ncep.edex.common/src/gov/noaa/nws/ncep/edex/common/metparameters/PressureChange3HrAndTendency.java @@ -21,7 +21,8 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; @XmlRootElement @XmlAccessorType(XmlAccessType.NONE) @DynamicSerialize -public class PressureChange3HrAndTendency extends AbstractMetParameter implements Dimensionless, ISerializableObject { +public class PressureChange3HrAndTendency extends AbstractMetParameter + implements Dimensionless, ISerializableObject { @DynamicSerializeElement private static final long serialVersionUID = -6602297437762954327L; @@ -32,7 +33,9 @@ public class PressureChange3HrAndTendency extends AbstractMetParameter implement } @DeriveMethod - public PressureChange3HrAndTendency derive(PressChange3HrAbsVal p, PressureTendencySymbol ptsy) throws InvalidValueException, NullPointerException { + public PressureChange3HrAndTendency derive(PressChange3HrAbsVal p, + PressureTendencySymbol ptsy) throws InvalidValueException, + NullPointerException { if (p.hasValidValue() && ptsy.hasValidValue()) { Number n = (Number) new Integer(ptsy.getStringValue()); diff --git a/ncep/gov.noaa.nws.ncep.edex.common/src/gov/noaa/nws/ncep/edex/common/metparameters/SignificantWaveHeight.java b/ncep/gov.noaa.nws.ncep.edex.common/src/gov/noaa/nws/ncep/edex/common/metparameters/SignificantWaveHeight.java new file mode 100644 index 0000000000..52a252c51e --- /dev/null +++ b/ncep/gov.noaa.nws.ncep.edex.common/src/gov/noaa/nws/ncep/edex/common/metparameters/SignificantWaveHeight.java @@ -0,0 +1,59 @@ +package gov.noaa.nws.ncep.edex.common.metparameters; + +import gov.noaa.nws.ncep.edex.common.metparameters.MetParameterFactory.DeriveMethod; +import gov.noaa.nws.ncep.edex.common.metparameters.parameterconversion.PRLibrary; +import gov.noaa.nws.ncep.edex.common.metparameters.parameterconversion.PRLibrary.InvalidValueException; + +import javax.measure.quantity.Dimensionless; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlRootElement; + +import com.raytheon.uf.common.serialization.ISerializableObject; +import com.raytheon.uf.common.serialization.annotations.DynamicSerialize; +import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement; + +/** + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date         Ticket#      Engineer    Description
+ * ------------ ----------   ----------- --------------------------
+ * Sep 26, 2014 Redmine 4318 srussell    Initial creation
+ * 
+ * 
+ * + * @author srussell + * @version 1.0 + */ +@XmlRootElement +@XmlAccessorType(XmlAccessType.NONE) +@DynamicSerialize +public class SignificantWaveHeight extends AbstractMetParameter implements + Dimensionless, ISerializableObject { + + @DynamicSerializeElement + private static final long serialVersionUID = 1L; + + public SignificantWaveHeight() { + super(UNIT); + } + + @DeriveMethod + public SignificantWaveHeight derive(WindWaveHeight w, + PredomSwellWaveHeight p) throws InvalidValueException, + NullPointerException { + + if (w.hasValidValue() && p.hasValidValue()) { + Amount swh = PRLibrary.prSGHT(w, p); + this.setValue(swh); + } else { + this.setValueToMissing(); + } + + return this; + } + +} \ No newline at end of file diff --git a/ncep/gov.noaa.nws.ncep.edex.common/src/gov/noaa/nws/ncep/edex/common/metparameters/parameterconversion/PRLibrary.java b/ncep/gov.noaa.nws.ncep.edex.common/src/gov/noaa/nws/ncep/edex/common/metparameters/parameterconversion/PRLibrary.java index a841044b5a..7251dfca5d 100644 --- a/ncep/gov.noaa.nws.ncep.edex.common/src/gov/noaa/nws/ncep/edex/common/metparameters/parameterconversion/PRLibrary.java +++ b/ncep/gov.noaa.nws.ncep.edex.common/src/gov/noaa/nws/ncep/edex/common/metparameters/parameterconversion/PRLibrary.java @@ -42,7 +42,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prAltp(Amount pres, Amount selv) throws InvalidValueException, NullPointerException { + public static final Amount prAltp(Amount pres, Amount selv) + throws InvalidValueException, NullPointerException { // System.out.println("From prAltp:"); // System.out.println(" pres = " + pres.doubleValue()); // System.out.println(" selv = " + selv.doubleValue()); @@ -53,8 +54,10 @@ public final class PRLibrary { selv = checkAndConvertInputAmountToExpectedUnits(selv, SI.METER); pres = checkAndConvertInputAmountToExpectedUnits(pres, NcUnits.MILLIBAR); double seaLevelTempInKelvin = GempakConstants.TMCK + 15; - double hgtk = selv.getUnit().getConverterTo(SI.KILOMETER).convert(selv.doubleValue()); - double exponent = -(GempakConstants.GRAVTY / (GempakConstants.GAMUSD * GempakConstants.RDGAS) * 1000); + double hgtk = selv.getUnit().getConverterTo(SI.KILOMETER) + .convert(selv.doubleValue()); + double exponent = -(GempakConstants.GRAVTY + / (GempakConstants.GAMUSD * GempakConstants.RDGAS) * 1000); // double base = pres * ( 1.0f - ( hgtk * GempakConstants.GAMUSD / // seaLevelTempInKelvin ) ); // float altm = (float) Math.pow( base, Math.exp( exponent ) ); @@ -76,7 +79,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prCmsl(Amount ceil, Amount selv) throws InvalidValueException, NullPointerException { + public static final Amount prCmsl(Amount ceil, Amount selv) + throws InvalidValueException, NullPointerException { // System.out.println("From prCmsl:"); // System.out.println(" ceil = " + ceil.doubleValue()); // System.out.println(" selv = " + selv.doubleValue()); @@ -86,9 +90,12 @@ public final class PRLibrary { if (!checkNullOrInvalidValue(ceil) || !checkNullOrInvalidValue(selv)) return new Amount(NcUnits.HUNDREDS_OF_FEET); - selv = checkAndConvertInputAmountToExpectedUnits(selv, NcUnits.HUNDREDS_OF_FEET); - ceil = checkAndConvertInputAmountToExpectedUnits(ceil, NcUnits.HUNDREDS_OF_FEET); - return (new Amount(selv.doubleValue() + ceil.doubleValue(), NcUnits.HUNDREDS_OF_FEET)); + selv = checkAndConvertInputAmountToExpectedUnits(selv, + NcUnits.HUNDREDS_OF_FEET); + ceil = checkAndConvertInputAmountToExpectedUnits(ceil, + NcUnits.HUNDREDS_OF_FEET); + return (new Amount(selv.doubleValue() + ceil.doubleValue(), + NcUnits.HUNDREDS_OF_FEET)); } /** @@ -104,7 +111,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prDrct(Amount uX, Amount vX) throws InvalidValueException, NullPointerException { + public static final Amount prDrct(Amount uX, Amount vX) + throws InvalidValueException, NullPointerException { // System.out.println("From prDrct:"); // System.out.println(" uX = " + uX.doubleValue()); // System.out.println(" vX = " + vX.doubleValue()); @@ -116,8 +124,10 @@ public final class PRLibrary { double vXVal = Double.NaN; double uXVal = Double.NaN; - if (uX.getUnit() != vX.getUnit() && uX.getUnit().isCompatible(vX.getUnit())) { - vXVal = vX.getUnit().getConverterTo(uX.getUnit()).convert(vX.doubleValue()); + if (uX.getUnit() != vX.getUnit() + && uX.getUnit().isCompatible(vX.getUnit())) { + vXVal = vX.getUnit().getConverterTo(uX.getUnit()) + .convert(vX.doubleValue()); vX = new Amount(vXVal, uX.getUnit()); } uXVal = uX.doubleValue(); @@ -145,7 +155,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prDden(Amount pres, Amount tmpc) throws InvalidValueException, NullPointerException { + public static final Amount prDden(Amount pres, Amount tmpc) + throws InvalidValueException, NullPointerException { // System.out.println("From prDden:"); // System.out.println(" pres = " + pres.doubleValue()); // System.out.println(" tmpc = " + tmpc.doubleValue()); @@ -163,7 +174,8 @@ public final class PRLibrary { double tmpcVal = tmpc.doubleValue(); if (tmpcVal < -GempakConstants.TMCK) { - System.out.println("From prDden: temperature must be greater than or equal to -273.15 "); + System.out + .println("From prDden: temperature must be greater than or equal to -273.15 "); return new Amount(VolumetricDensity.UNIT); // throw new // InvalidRangeException("From prDden: temperature must be greater than or equal to -273.15 "); @@ -187,7 +199,8 @@ public final class PRLibrary { * both tmpx and dwpx are valid values */ - public static final Amount prDdep(Amount tmpx, Amount dwpx) throws InvalidValueException, NullPointerException { + public static final Amount prDdep(Amount tmpx, Amount dwpx) + throws InvalidValueException, NullPointerException { // System.out.println("From prDdep:"); // System.out.println(" tmpx = " + tmpx.doubleValue()); // System.out.println(" dwpx = " + dwpx.doubleValue()); @@ -221,7 +234,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prDmax(Amount t00x, Amount t06x, Amount tdxc) throws InvalidValueException, NullPointerException { + public static final Amount prDmax(Amount t00x, Amount t06x, Amount tdxc) + throws InvalidValueException, NullPointerException { // System.out.println("From prDmax:"); // System.out.println(" t00x = " + t00x.doubleValue()); // System.out.println(" t06x = " + t06x.doubleValue()); @@ -238,16 +252,20 @@ public final class PRLibrary { if (tdxc != null && tdxc.doubleValue() > -9999) { tdxc = checkAndConvertInputAmountToExpectedUnits(tdxc, SI.CELSIUS); - double[] tempArray = { t00x.doubleValue(), t06x.doubleValue(), tdxc.doubleValue() }; + double[] tempArray = { t00x.doubleValue(), t06x.doubleValue(), + tdxc.doubleValue() }; Arrays.sort(tempArray); - double newTemp = SI.CELSIUS.getConverterTo(NonSI.FAHRENHEIT).convert(tempArray[2]); + double newTemp = SI.CELSIUS.getConverterTo(NonSI.FAHRENHEIT) + .convert(tempArray[2]); return (new Amount(newTemp, NonSI.FAHRENHEIT)); } else { double t00xVal = t00x.doubleValue(); double t06xVal = t06x.doubleValue(); - Amount dmax = (t00xVal > t06xVal ? checkAndConvertInputAmountToExpectedUnits(t00x, NonSI.FAHRENHEIT) - : checkAndConvertInputAmountToExpectedUnits(t06x, NonSI.FAHRENHEIT)); + Amount dmax = (t00xVal > t06xVal ? checkAndConvertInputAmountToExpectedUnits( + t00x, NonSI.FAHRENHEIT) + : checkAndConvertInputAmountToExpectedUnits(t06x, + NonSI.FAHRENHEIT)); return dmax; } @@ -270,7 +288,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prDmin(Amount t12n, Amount t18n) throws InvalidValueException, NullPointerException { + public static final Amount prDmin(Amount t12n, Amount t18n) + throws InvalidValueException, NullPointerException { // System.out.println("From prDmin:"); // System.out.println(" t12n = " + t12n.doubleValue()); // System.out.println(" t18n = " + t18n.doubleValue()); @@ -281,8 +300,10 @@ public final class PRLibrary { t12n = checkAndConvertInputAmountToExpectedUnits(t12n, SI.CELSIUS); t18n = checkAndConvertInputAmountToExpectedUnits(t18n, SI.CELSIUS); - Amount minValue = (t12n.doubleValue() < t18n.doubleValue() ? t12n : t18n); - return (checkAndConvertInputAmountToExpectedUnits(minValue, NonSI.FAHRENHEIT)); + Amount minValue = (t12n.doubleValue() < t18n.doubleValue() ? t12n + : t18n); + return (checkAndConvertInputAmountToExpectedUnits(minValue, + NonSI.FAHRENHEIT)); } @@ -300,7 +321,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prDwdp(Amount tmpx, Amount dpdx) throws InvalidValueException, NullPointerException { + public static final Amount prDwdp(Amount tmpx, Amount dpdx) + throws InvalidValueException, NullPointerException { // System.out.println("From prDwdp:"); // System.out.println(" tmpx = " + tmpx.doubleValue()); // System.out.println(" dpdx = " + dpdx.doubleValue()); @@ -313,12 +335,15 @@ public final class PRLibrary { Unit tempUnits = (Unit) tmpx.getUnit(); Unit dewpointDepUnits = (Unit) dpdx.getUnit(); - if (!tempUnits.equals(dewpointDepUnits) && tempUnits.isCompatible(dewpointDepUnits)) { - double dewpointDepValue = (double) dewpointDepUnits.getConverterTo(tempUnits).convert(dpdx.doubleValue()); + if (!tempUnits.equals(dewpointDepUnits) + && tempUnits.isCompatible(dewpointDepUnits)) { + double dewpointDepValue = (double) dewpointDepUnits.getConverterTo( + tempUnits).convert(dpdx.doubleValue()); dpdx = new Amount(dewpointDepValue, tempUnits); } - Amount dewpointTemperature = new Amount(tmpx.doubleValue() - dpdx.doubleValue(), tempUnits); + Amount dewpointTemperature = new Amount(tmpx.doubleValue() + - dpdx.doubleValue(), tempUnits); return dewpointTemperature; } @@ -335,7 +360,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prDwpt(Amount rmix, Amount pres) throws InvalidValueException, NullPointerException { + public static final Amount prDwpt(Amount rmix, Amount pres) + throws InvalidValueException, NullPointerException { // System.out.println("From prDwpt:"); // System.out.println(" rmix = " + rmix.doubleValue()); // System.out.println(" pres = " + pres.doubleValue()); @@ -350,7 +376,8 @@ public final class PRLibrary { double mixingRatioValue = rmix.doubleValue(); double pressureValue = pres.doubleValue(); if (mixingRatioValue <= 0) { - System.out.println("From prDwpt() - mixing ratio must be greater than 0"); + System.out + .println("From prDwpt() - mixing ratio must be greater than 0"); return new Amount(SI.CELSIUS); // throw new // InvalidRangeException("From prDwpt() - mixing ratio must be greater than 0"); @@ -368,10 +395,12 @@ public final class PRLibrary { double vaporPressure = (pressureValue * ratio) / (0.62197 + ratio); /* Correct vapor pressure */ - vaporPressure = vaporPressure / (1.001 + ((pressureValue - 100.0) / 900) * .0034); + vaporPressure = vaporPressure + / (1.001 + ((pressureValue - 100.0) / 900) * .0034); /* Calculate dewpoint */ - double dewPointValue = (double) (Math.log(vaporPressure / 6.112) * 243.5 / (17.67 - Math.log(vaporPressure / 6.112))); + double dewPointValue = (double) (Math.log(vaporPressure / 6.112) * 243.5 / (17.67 - Math + .log(vaporPressure / 6.112))); prDwpt = new Amount(dewPointValue, SI.CELSIUS); return prDwpt; } @@ -390,7 +419,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prFosb(Amount tmpc, Amount relh, Amount sped) throws InvalidValueException, NullPointerException { + public static final Amount prFosb(Amount tmpc, Amount relh, Amount sped) + throws InvalidValueException, NullPointerException { // System.out.println("From prFosb:"); // System.out.println("Temperature ( in K ) is: " + tmpc.doubleValue()); // System.out.println("Relative Humidity is: " + relh.doubleValue()); @@ -398,18 +428,22 @@ public final class PRLibrary { // checkNullOrInvalidValue( tmpc ); // checkNullOrInvalidValue( relh ); // checkNullOrInvalidValue( sped ); - if (!checkNullOrInvalidValue(tmpc) || !checkNullOrInvalidValue(relh) || !checkNullOrInvalidValue(sped)) + if (!checkNullOrInvalidValue(tmpc) || !checkNullOrInvalidValue(relh) + || !checkNullOrInvalidValue(sped)) return new Amount(Unit.ONE); tmpc = checkAndConvertInputAmountToExpectedUnits(tmpc, SI.CELSIUS); relh = checkAndConvertInputAmountToExpectedUnits(relh, NonSI.PERCENT); - sped = checkAndConvertInputAmountToExpectedUnits(sped, SI.METERS_PER_SECOND); + sped = checkAndConvertInputAmountToExpectedUnits(sped, + SI.METERS_PER_SECOND); /* Change temperature to degrees Fahrenheit */ - double tf = tmpc.getUnit().getConverterTo(NonSI.FAHRENHEIT).convert(tmpc.doubleValue()); + double tf = tmpc.getUnit().getConverterTo(NonSI.FAHRENHEIT) + .convert(tmpc.doubleValue()); /* Convert wind speed from meters/second to knots */ - double smph = sped.getUnit().getConverterTo(NonSI.MILES_PER_HOUR).convert(sped.doubleValue()); + double smph = sped.getUnit().getConverterTo(NonSI.MILES_PER_HOUR) + .convert(sped.doubleValue()); double A = 0.03229; double B = 0.281073; @@ -476,7 +510,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prHeat(Amount tmpf, Amount relh) throws InvalidValueException, NullPointerException { + public static final Amount prHeat(Amount tmpf, Amount relh) + throws InvalidValueException, NullPointerException { // System.out.println("From prHeat:"); // System.out.println(" tmpf = " + tmpf.doubleValue()); // System.out.println(" relh = " + relh.doubleValue()); @@ -491,32 +526,45 @@ public final class PRLibrary { relh = checkAndConvertInputAmountToExpectedUnits(relh, NonSI.PERCENT); double tmpfVal = tmpf.doubleValue(); double relhVal = relh.doubleValue(); - /* If the temperature is less than 40 degrees, set the heat index to the - * temperature */ + /* + * If the temperature is less than 40 degrees, set the heat index to the + * temperature + */ if (tmpfVal <= 40) prheat = tmpfVal; else { - /* Compute a simple heat index. If the value is less than 80 deg F - * use it */ + /* + * Compute a simple heat index. If the value is less than 80 deg F + * use it + */ prheat = (float) (61 + (tmpfVal - 68) * 1.2 + relhVal * 0.094); prheat = (float) ((tmpfVal + prheat) * 0.5); /* Else compute the full regression value */ if (prheat >= 80.0) { double t2 = tmpfVal * tmpfVal; double r2 = relhVal * relhVal; - prheat = (float) (-42.379 + 2.04901523 * tmpfVal + 10.14333127 * relhVal - 0.22475541 * tmpfVal * relhVal - 0.00683783 * t2 - 0.05481717 * r2 + 0.00122874 * t2 - * relhVal + 0.00085282 * tmpfVal * r2 - 0.00000199 * t2 * r2); - /* Adjust for high regression at low relative humidity for - * temperatures above 80 degrees F. */ - if ((relhVal <= 13.0) && ((tmpfVal >= 80.0) && (tmpfVal <= 112.0))) { + prheat = (float) (-42.379 + 2.04901523 * tmpfVal + 10.14333127 + * relhVal - 0.22475541 * tmpfVal * relhVal - 0.00683783 + * t2 - 0.05481717 * r2 + 0.00122874 * t2 * relhVal + + 0.00085282 * tmpfVal * r2 - 0.00000199 * t2 * r2); + /* + * Adjust for high regression at low relative humidity for + * temperatures above 80 degrees F. + */ + if ((relhVal <= 13.0) + && ((tmpfVal >= 80.0) && (tmpfVal <= 112.0))) { float adj1 = (float) ((13. - relhVal) / 4); - float adj2 = (float) (Math.sqrt((17 - Math.abs(tmpfVal - 95)) / 17)); + float adj2 = (float) (Math.sqrt((17 - Math + .abs(tmpfVal - 95)) / 17)); float adj = adj1 * adj2; prheat -= adj; } - /* Adjust for low regression at high relative humidity and - * temperatures in the mid-80s */ - else if ((relhVal > 85) && ((tmpfVal >= 80.0) && (tmpfVal <= 87.0))) { + /* + * Adjust for low regression at high relative humidity and + * temperatures in the mid-80s + */ + else if ((relhVal > 85) + && ((tmpfVal >= 80.0) && (tmpfVal <= 87.0))) { float adj1 = (float) ((relhVal - 85.0) / 10.0); float adj2 = (float) ((87.0 - tmpfVal) / 5); float adj = adj1 * adj2; @@ -542,7 +590,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prHmtr(Amount tmpf, Amount dwpf) throws InvalidValueException, NullPointerException { + public static final Amount prHmtr(Amount tmpf, Amount dwpf) + throws InvalidValueException, NullPointerException { // System.out.println("From prHmtr:"); // System.out.println(" tmpf = " + tmpf.doubleValue()); // System.out.println(" dwpf = " + dwpf.doubleValue()); @@ -554,7 +603,8 @@ public final class PRLibrary { tmpf = checkAndConvertInputAmountToExpectedUnits(tmpf, NonSI.FAHRENHEIT); dwpf = checkAndConvertInputAmountToExpectedUnits(dwpf, NonSI.FAHRENHEIT); - Amount dwpc = checkAndConvertInputAmountToExpectedUnits(dwpf, SI.CELSIUS); + Amount dwpc = checkAndConvertInputAmountToExpectedUnits(dwpf, + SI.CELSIUS); Amount vapr = prVapr(dwpc); if (!checkNullOrInvalidValue(vapr)) return new Amount(Unit.ONE); @@ -585,7 +635,8 @@ public final class PRLibrary { * * @throws InvalidRangeException */ - public static final Amount prIgro(Amount tmpc, Amount sstc, Amount sped) throws InvalidValueException, NullPointerException { + public static final Amount prIgro(Amount tmpc, Amount sstc, Amount sped) + throws InvalidValueException, NullPointerException { // System.out.println("From prIgro:"); // System.out.println(" tmpc = " + tmpc.doubleValue()); // System.out.println(" sstc = " + sstc.doubleValue()); @@ -596,7 +647,8 @@ public final class PRLibrary { // checkNullOrInvalidValue( sstc ) ; // checkNullOrInvalidValue( sped ) ; - if (!checkNullOrInvalidValue(tmpc) || !checkNullOrInvalidValue(sstc) || !checkNullOrInvalidValue(sped)) + if (!checkNullOrInvalidValue(tmpc) || !checkNullOrInvalidValue(sstc) + || !checkNullOrInvalidValue(sped)) return new Amount(NcUnits.INCHES_PER_THREE_HOURS); checkAndConvertInputAmountToExpectedUnits(tmpc, SI.CELSIUS); @@ -612,13 +664,15 @@ public final class PRLibrary { if (spedVal < 0 || spedVal > 50) { // throw new // InvalidRangeException("The wind speed must lie between 0 and 50. Both limits inclusive"); - System.out.println("The wind speed must lie between 0 and 50. Both limits inclusive"); + System.out + .println("The wind speed must lie between 0 and 50. Both limits inclusive"); return new Amount(NcUnits.INCHES_PER_THREE_HOURS); } if (tmpcVal < -20 || tmpcVal > 0) { // throw new // InvalidRangeException("The observed surface air temperature must lie between -20 and 0. Both limits inclusive"); - System.out.println("The observed surface air temperature must lie between -20 and 0. Both limits inclusive"); + System.out + .println("The observed surface air temperature must lie between -20 and 0. Both limits inclusive"); return new Amount(NcUnits.INCHES_PER_THREE_HOURS); } if (sstcVal < -1.7f || sstcVal > 12) { @@ -638,7 +692,8 @@ public final class PRLibrary { if (prigro < 0) { // throw new // InvalidRangeException("The rate of ice growth must be greater than or equal to 0"); - System.out.println("The rate of ice growth must be greater than or equal to 0"); + System.out + .println("The rate of ice growth must be greater than or equal to 0"); return new Amount(NcUnits.INCHES_PER_THREE_HOURS); } return (new Amount(prigro, NcUnits.INCHES_PER_THREE_HOURS)); @@ -656,7 +711,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prLhvp(Amount tmpc) throws InvalidValueException, NullPointerException { + public static final Amount prLhvp(Amount tmpc) + throws InvalidValueException, NullPointerException { // System.out.println("From prLhvp:"); // System.out.println(" tmpc = " + tmpc.doubleValue()); @@ -666,7 +722,8 @@ public final class PRLibrary { return new Amount(NcUnits.JOULES_PER_KILOGRAM); tmpc = checkAndConvertInputAmountToExpectedUnits(tmpc, SI.CELSIUS); - double latentHeatOfVapr = (float) ((2.500 - 0.00237 * tmpc.doubleValue()) * 1000000); + double latentHeatOfVapr = (float) ((2.500 - 0.00237 * tmpc + .doubleValue()) * 1000000); return (new Amount(latentHeatOfVapr, NcUnits.JOULES_PER_KILOGRAM)); } @@ -686,7 +743,8 @@ public final class PRLibrary { * * @throws InvalidRangeException */ - public static final Amount prLtmp(Amount thta, Amount thte, Amount pres) throws InvalidValueException, NullPointerException { + public static final Amount prLtmp(Amount thta, Amount thte, Amount pres) + throws InvalidValueException, NullPointerException { // System.out.println("From prLtmp:"); // System.out.println(" thta = " + thta.doubleValue()); // System.out.println(" thte = " + thte.doubleValue()); @@ -697,7 +755,8 @@ public final class PRLibrary { // checkNullOrInvalidValue(thte); // checkNullOrInvalidValue(pres); - if (!checkNullOrInvalidValue(thta) || !checkNullOrInvalidValue(thte) || !checkNullOrInvalidValue(pres)) + if (!checkNullOrInvalidValue(thta) || !checkNullOrInvalidValue(thte) + || !checkNullOrInvalidValue(pres)) return new Amount(SI.CELSIUS); thta = checkAndConvertInputAmountToExpectedUnits(thta, SI.KELVIN); @@ -711,9 +770,11 @@ public final class PRLibrary { Amount tmpd = prTmpk(pres, thta); checkNullOrInvalidValue(tmpe); checkNullOrInvalidValue(tmpd); - /* ( Non-Javadoc ) The correct parcel temperature is the warmer of the + /* + * ( Non-Javadoc ) The correct parcel temperature is the warmer of the * temperature on the dry adiabat and the temperature on the moist - * adiabat. */ + * adiabat. + */ double tmpeVal = tmpe.doubleValue(); double tmpdVal = tmpd.doubleValue(); @@ -738,7 +799,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prMobs(Amount cmsl, Amount otval) throws InvalidValueException, NullPointerException { + public static final Amount prMobs(Amount cmsl, Amount otval) + throws InvalidValueException, NullPointerException { // System.out.println("From prMobs:"); // System.out.println(" cmsl = " + cmsl.doubleValue()); // System.out.println(" otval = " + otval.doubleValue()); @@ -749,9 +811,12 @@ public final class PRLibrary { if (!checkNullOrInvalidValue(cmsl) || !checkNullOrInvalidValue(otval)) return new Amount(Unit.ONE); - cmsl = checkAndConvertInputAmountToExpectedUnits(cmsl, NcUnits.HUNDREDS_OF_FEET); - otval = checkAndConvertInputAmountToExpectedUnits(otval, NcUnits.HUNDREDS_OF_FEET); - return (cmsl.doubleValue() < otval.doubleValue() ? new Amount(1, Unit.ONE) : new Amount(1, Unit.ONE)); + cmsl = checkAndConvertInputAmountToExpectedUnits(cmsl, + NcUnits.HUNDREDS_OF_FEET); + otval = checkAndConvertInputAmountToExpectedUnits(otval, + NcUnits.HUNDREDS_OF_FEET); + return (cmsl.doubleValue() < otval.doubleValue() ? new Amount(1, + Unit.ONE) : new Amount(1, Unit.ONE)); } /** @@ -795,15 +860,19 @@ public final class PRLibrary { vapr = checkAndConvertInputAmountToExpectedUnits(vapr, NcUnits.MILLIBAR); double pressureValue = pres.doubleValue(); double vaporPressureValue = vapr.doubleValue(); - /* (Non-Javadoc) corr is a correction to the vapor pressure since the - * atmosphere is not an ideal gas. */ + /* + * (Non-Javadoc) corr is a correction to the vapor pressure since the + * atmosphere is not an ideal gas. + */ double corr = (double) (1.001 + ((pressureValue - 100) / 900) * 0.0034); double e = corr * vaporPressureValue; /* Test for unphysical case of large E at low PRES */ if (e <= (0.5 * pressureValue)) { /* Calculate mixing ratio */ - prmixr = new Amount((double) (0.62197 * (e / (pressureValue - e)) * 1000), NcUnits.GRAMS_PER_KILOGRAM); + prmixr = new Amount( + (double) (0.62197 * (e / (pressureValue - e)) * 1000), + NcUnits.GRAMS_PER_KILOGRAM); } return prmixr; } @@ -819,7 +888,8 @@ public final class PRLibrary { * */ // TODO : remove it to make it a part of display options or let it stay? - public static final Amount prP03c(Amount p03d) throws InvalidValueException, NullPointerException { + public static final Amount prP03c(Amount p03d) + throws InvalidValueException, NullPointerException { // System.out.println("From prP03c:"); // System.out.println(" p03d = " + p03d.doubleValue()); @@ -853,7 +923,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prP03CAbsVal(Amount p03cav, Amount ptsy) throws InvalidValueException, NullPointerException { + public static final Amount prP03CAbsVal(Amount p03cav, Amount ptsy) + throws InvalidValueException, NullPointerException { double p03c = 0.0d; if (!checkNullOrInvalidValue(p03cav) || !checkNullOrInvalidValue(ptsy)) { @@ -888,6 +959,27 @@ public final class PRLibrary { } + /** + * Redmine 4318 + * + */ + public static final Amount prSGHT(Amount howw, Amount hosw) + throws InvalidValueException, NullPointerException { + + if (!checkNullOrInvalidValue(howw) || !checkNullOrInvalidValue(hosw)) { + return new Amount(SI.METER); + } + + double w = howw.doubleValue(); + double s = hosw.doubleValue(); + double sght = 0.0d; + + sght = Math.sqrt(((Math.pow(w, 2)) + (Math.pow(s, 2)))); + + return new Amount(sght, SI.METER); + + } + /** * Computes station pressure from altimeter and station elevation using the * equation PALT = ALTM * ( 1 - ( SELK * GAMUSD / To ) ) ** expo where SELK @@ -902,7 +994,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prPalt(Amount altm, Amount selv) throws InvalidValueException, NullPointerException { + public static final Amount prPalt(Amount altm, Amount selv) + throws InvalidValueException, NullPointerException { // System.out.println("From prPalt:"); // System.out.println(" altm = " + altm.doubleValue()); // System.out.println(" selv = " + selv.doubleValue()); @@ -915,13 +1008,16 @@ public final class PRLibrary { altm = checkAndConvertInputAmountToExpectedUnits(altm, NcUnits.MILLIBAR); selv = checkAndConvertInputAmountToExpectedUnits(selv, SI.METER); - double hgtk = selv.getUnit().getConverterTo(SI.KILOMETER).convert(selv.doubleValue()); + double hgtk = selv.getUnit().getConverterTo(SI.KILOMETER) + .convert(selv.doubleValue()); /* Calculate the exponent */ - double expo = (GempakConstants.GRAVTY / (GempakConstants.GAMUSD * GempakConstants.RDGAS) * 1000.0f); + double expo = (GempakConstants.GRAVTY + / (GempakConstants.GAMUSD * GempakConstants.RDGAS) * 1000.0f); /* Calculate pressure */ - double prpalt = (altm.doubleValue() * Math.pow((1 - (hgtk * GempakConstants.GAMUSD / (GempakConstants.TMCK + 15))), expo)); + double prpalt = (altm.doubleValue() * Math.pow((1 - (hgtk + * GempakConstants.GAMUSD / (GempakConstants.TMCK + 15))), expo)); return (new Amount(prpalt, NcUnits.MILLIBAR)); } @@ -943,7 +1039,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prPlcl(Amount tmpc, Amount pres, Amount tlcl) throws InvalidValueException, NullPointerException { + public static final Amount prPlcl(Amount tmpc, Amount pres, Amount tlcl) + throws InvalidValueException, NullPointerException { double prplcl = GempakConstants.RMISSD; // System.out.println("From prPlcl:"); // System.out.println(" tmpc = " + tmpc.doubleValue()); @@ -953,7 +1050,8 @@ public final class PRLibrary { // checkNullOrInvalidValue(tmpc); // checkNullOrInvalidValue(pres); // checkNullOrInvalidValue(tlcl); - if (!checkNullOrInvalidValue(tmpc) || !checkNullOrInvalidValue(pres) || !checkNullOrInvalidValue(tlcl)) + if (!checkNullOrInvalidValue(tmpc) || !checkNullOrInvalidValue(pres) + || !checkNullOrInvalidValue(tlcl)) return new Amount(NcUnits.MILLIBAR); tmpc = checkAndConvertInputAmountToExpectedUnits(tmpc, SI.CELSIUS); @@ -963,7 +1061,8 @@ public final class PRLibrary { double tclValue = tlcl.doubleValue(); double tmpkValue = tmpk.doubleValue(); double presValue = pres.doubleValue(); - prplcl = (double) (presValue * Math.pow((tclValue / tmpkValue), (1 / GempakConstants.RKAPPA))); + prplcl = (double) (presValue * Math.pow((tclValue / tmpkValue), + (1 / GempakConstants.RKAPPA))); return new Amount(prplcl, NcUnits.MILLIBAR); } @@ -989,7 +1088,8 @@ public final class PRLibrary { * * @throws InvalidRangeException */ - public static final Amount prPmsl(Amount pres, Amount tmpc, Amount dwpc, Amount selv) throws InvalidValueException, NullPointerException { + public static final Amount prPmsl(Amount pres, Amount tmpc, Amount dwpc, + Amount selv) throws InvalidValueException, NullPointerException { // System.out.println("From prPmsl:"); // System.out.println(" tmpc = " + tmpc.doubleValue()); // System.out.println(" pres = " + pres.doubleValue()); @@ -999,7 +1099,9 @@ public final class PRLibrary { // checkNullOrInvalidValue( tmpc ); // checkNullOrInvalidValue( dwpc ); // checkNullOrInvalidValue( selv ); - if (!checkNullOrInvalidValue(tmpc) || !checkNullOrInvalidValue(pres) || !checkNullOrInvalidValue(dwpc) || !checkNullOrInvalidValue(selv)) + if (!checkNullOrInvalidValue(tmpc) || !checkNullOrInvalidValue(pres) + || !checkNullOrInvalidValue(dwpc) + || !checkNullOrInvalidValue(selv)) return new Amount(NcUnits.MILLIBAR); pres = checkAndConvertInputAmountToExpectedUnits(pres, NcUnits.MILLIBAR); @@ -1014,7 +1116,8 @@ public final class PRLibrary { double selvVal = selv.doubleValue(); double deltaV = selvVal * GempakConstants.GAMUSD / 1000; double tVave = tv.doubleValue() + (deltaV / 2); - double mathFormula = (GempakConstants.GRAVTY * selvVal) / (GempakConstants.RDGAS * tVave); + double mathFormula = (GempakConstants.GRAVTY * selvVal) + / (GempakConstants.RDGAS * tVave); double prpmsl = (pres.doubleValue() * Math.exp(mathFormula)); return (new Amount(prpmsl, NcUnits.MILLIBAR)); @@ -1037,7 +1140,8 @@ public final class PRLibrary { * */ - public static final Amount prPr6x(Amount p01, Amount p02, Amount p03, Amount p04) throws InvalidValueException, NullPointerException { + public static final Amount prPr6x(Amount p01, Amount p02, Amount p03, + Amount p04) throws InvalidValueException, NullPointerException { // System.out.println("From prPr6x:"); // System.out.println(" p01 = " + p01.doubleValue()); // System.out.println(" p02 = " + p02.doubleValue()); @@ -1052,7 +1156,8 @@ public final class PRLibrary { } if (thisAmount.getUnit() != NonSI.INCH) { - thisAmount = checkAndConvertInputAmountToExpectedUnits(thisAmount, NonSI.INCH); + thisAmount = checkAndConvertInputAmountToExpectedUnits( + thisAmount, NonSI.INCH); tempArray[index] = thisAmount; } tempDblArray[index] = thisAmount.doubleValue(); @@ -1080,7 +1185,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prPr24(Amount p01, Amount p02, Amount p03, Amount p04) throws InvalidValueException, NullPointerException { + public static final Amount prPr24(Amount p01, Amount p02, Amount p03, + Amount p04) throws InvalidValueException, NullPointerException { // System.out.println("From prPr24:"); // System.out.println(" p01 = " + p01.doubleValue()); // System.out.println(" p02 = " + p02.doubleValue()); @@ -1092,7 +1198,9 @@ public final class PRLibrary { // checkNullOrInvalidValue( p03 ); // checkNullOrInvalidValue( p04 ); - if (!checkNullOrInvalidValue(p01) || !checkNullOrInvalidValue(p02) || !checkNullOrInvalidValue(p03) || !checkNullOrInvalidValue(p04)) + if (!checkNullOrInvalidValue(p01) || !checkNullOrInvalidValue(p02) + || !checkNullOrInvalidValue(p03) + || !checkNullOrInvalidValue(p04)) return new Amount(NonSI.INCH); Amount[] tempArray = { p01, p02, p03, p04 }; @@ -1124,7 +1232,8 @@ public final class PRLibrary { if (p24Val < 0) { // throw new // InvalidRangeException("From prPr24: the total 24 hour precipitation amount cannot be less than 0 inches"); - System.out.println("From prPr24: the total 24 hour precipitation amount cannot be less than 0 inches"); + System.out + .println("From prPr24: the total 24 hour precipitation amount cannot be less than 0 inches"); return new Amount(NonSI.INCH); } return (new Amount(p24Val, NonSI.INCH)); @@ -1144,7 +1253,8 @@ public final class PRLibrary { * * @throws InvalidRangeException */ - public static final Amount prPres(Amount tmpc, Amount thta) throws InvalidValueException, NullPointerException { + public static final Amount prPres(Amount tmpc, Amount thta) + throws InvalidValueException, NullPointerException { // System.out.println("From prPres:"); // System.out.println(" tmpc = " + tmpc.doubleValue()); // System.out.println(" thta = " + thta.doubleValue()); @@ -1162,17 +1272,21 @@ public final class PRLibrary { if (tmpcVal <= -GempakConstants.TMCK) { // throw new // InvalidRangeException("From prPres: the temperature must be greater than -273.15"); - System.out.println("From prPres: the temperature must be greater than -273.15"); + System.out + .println("From prPres: the temperature must be greater than -273.15"); return new Amount(NcUnits.MILLIBAR); } if (thtaVal <= 0) { // throw new // InvalidRangeException("From prPres: the potential temperature must be greater than 0"); - System.out.println("From prPres: the potential temperature must be greater than 0"); + System.out + .println("From prPres: the potential temperature must be greater than 0"); return new Amount(NcUnits.MILLIBAR); } - double tmpkVal = tmpc.getUnit().getConverterTo(SI.KELVIN).convert(tmpcVal); - double prpres = (float) (1000 * Math.pow(tmpkVal / thtaVal, 1 / GempakConstants.RKAPPA)); + double tmpkVal = tmpc.getUnit().getConverterTo(SI.KELVIN) + .convert(tmpcVal); + double prpres = (float) (1000 * Math.pow(tmpkVal / thtaVal, + 1 / GempakConstants.RKAPPA)); return (new Amount(prpres, NcUnits.MILLIBAR)); } @@ -1189,7 +1303,8 @@ public final class PRLibrary { */ // TODO add it to the Met Parameters or remove it and make it part of the // display options instead? - public static final Amount prPtsy(Amount p03d) throws InvalidValueException, NullPointerException { + public static final Amount prPtsy(Amount p03d) + throws InvalidValueException, NullPointerException { // System.out.println("From prPtsy:"); // System.out.println(" p03d = " + p03d.doubleValue()); @@ -1219,7 +1334,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prRelh(Amount tmpc, Amount dwpc) throws InvalidValueException, NullPointerException { + public static final Amount prRelh(Amount tmpc, Amount dwpc) + throws InvalidValueException, NullPointerException { // System.out.println("From prRelh:"); // System.out.println(" tmpc = " + tmpc.doubleValue()); // System.out.println(" dwpc = " + dwpc.doubleValue()); @@ -1268,7 +1384,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prRhdp(Amount tmpc, Amount relh) throws InvalidValueException, NullPointerException { + public static final Amount prRhdp(Amount tmpc, Amount relh) + throws InvalidValueException, NullPointerException { // System.out.println("From prRhdp:"); // System.out.println(" tmpc =" + tmpc.doubleValue()); // System.out.println(" relh = " + relh.doubleValue()); @@ -1297,14 +1414,18 @@ public final class PRLibrary { double prrhdp = -191; Amount dewpointAmount = null; if (vapr >= (Math.pow(Math.E, -30))) {// legacy checks for 1.E-30 - prrhdp = (double) (243.5 * (Math.log(6.112) - Math.log(vapr)) / (Math.log(vapr) - Math.log(6.112) - 17.67)); + prrhdp = (double) (243.5 * (Math.log(6.112) - Math.log(vapr)) / (Math + .log(vapr) - Math.log(6.112) - 17.67)); - /* If the dew-point is less than -190 degrees C, it is treated as + /* + * If the dew-point is less than -190 degrees C, it is treated as * missing data Note: Legacy documents it but does not implement it. - * However, in CAVE, it was decided to implement it. */ + * However, in CAVE, it was decided to implement it. + */ if (prrhdp < -190) { - System.out.println(" From prRhdp: dewpoint is less than -190 C"); + System.out + .println(" From prRhdp: dewpoint is less than -190 C"); return new Amount(SI.CELSIUS); } } @@ -1384,7 +1505,9 @@ public final class PRLibrary { * @throws NullPointerException * */ - public void prRzll(Amount instltdg, Amount instlndg, Amount inrange, Amount inazim, Amount inhght) throws InvalidValueException, NullPointerException { + public void prRzll(Amount instltdg, Amount instlndg, Amount inrange, + Amount inazim, Amount inhght) throws InvalidValueException, + NullPointerException { // System.out.println("From prRzll:"); // System.out.println(" instltdg = " + instltdg.doubleValue()); // System.out.println(" instlndg = " + instlndg.doubleValue()); @@ -1398,15 +1521,23 @@ public final class PRLibrary { // checkNullOrInvalidValue(inazim); // checkNullOrInvalidValue(inhght); - if (!checkNullOrInvalidValue(instltdg) || !checkNullOrInvalidValue(instlndg) || !checkNullOrInvalidValue(inrange) || !checkNullOrInvalidValue(inazim) + if (!checkNullOrInvalidValue(instltdg) + || !checkNullOrInvalidValue(instlndg) + || !checkNullOrInvalidValue(inrange) + || !checkNullOrInvalidValue(inazim) || !checkNullOrInvalidValue(inhght)) return; - instltdg = checkAndConvertInputAmountToExpectedUnits(instltdg, NonSI.DEGREE_ANGLE); - instlndg = checkAndConvertInputAmountToExpectedUnits(instlndg, NonSI.DEGREE_ANGLE); - inrange = checkAndConvertInputAmountToExpectedUnits(inrange, SI.KILOMETER); - inazim = checkAndConvertInputAmountToExpectedUnits(inazim, SI.RADIAN); - inhght = checkAndConvertInputAmountToExpectedUnits(inhght, SI.KILOMETER); + instltdg = checkAndConvertInputAmountToExpectedUnits(instltdg, + NonSI.DEGREE_ANGLE); + instlndg = checkAndConvertInputAmountToExpectedUnits(instlndg, + NonSI.DEGREE_ANGLE); + inrange = checkAndConvertInputAmountToExpectedUnits(inrange, + SI.KILOMETER); + inazim = checkAndConvertInputAmountToExpectedUnits(inazim, + SI.RADIAN); + inhght = checkAndConvertInputAmountToExpectedUnits(inhght, + SI.KILOMETER); this.stltdg = new Amount(instltdg.doubleValue(), NonSI.DEGREE_ANGLE); this.stlndg = new Amount(instlndg.doubleValue(), NonSI.DEGREE_ANGLE); @@ -1420,11 +1551,14 @@ public final class PRLibrary { double radp = GempakConstants.RMISSD; /* Convert the station lat/lon to radians */ - Amount stlat = checkAndConvertInputAmountToExpectedUnits(stltdg, NonSI.DEGREE_ANGLE); - Amount stlon = checkAndConvertInputAmountToExpectedUnits(stlndg, NonSI.DEGREE_ANGLE); + Amount stlat = checkAndConvertInputAmountToExpectedUnits(stltdg, + NonSI.DEGREE_ANGLE); + Amount stlon = checkAndConvertInputAmountToExpectedUnits(stlndg, + NonSI.DEGREE_ANGLE); /* Get the elevation angle */ - hdr = (range.doubleValue() == 0.0f ? 0.0f : hght.doubleValue() / range.doubleValue()); + hdr = (range.doubleValue() == 0.0f ? 0.0f : hght.doubleValue() + / range.doubleValue()); // elev = (float) ( Math.abs(hdr) < 1.0f ? Math.asin(hdr) : 0.0f ); elev = (Math.abs(hdr) <= 1.0f ? Math.asin(hdr) : 0.0f); @@ -1445,7 +1579,8 @@ public final class PRLibrary { if (elev > 0.2618f) dist = (double) (rangeVal * Math.cos(elev)); else { - mathFormula1 = (double) ((1 - (Math.pow(elev, 2) / 2)) - rangeVal * elev / radp); + mathFormula1 = (double) ((1 - (Math.pow(elev, 2) / 2)) - rangeVal + * elev / radp); dist = rangeVal * mathFormula1; } @@ -1459,13 +1594,17 @@ public final class PRLibrary { // xlat = ( float ) ( stlat + ( cy / rad ) - ( Math.pow(cx, 2) / // mathFormula2 ) ); double stlatVal = stlat.doubleValue(); - mathFormula2 = (double) ((Math.pow(cx, 2) / (2 * Math.pow(rad, 2)) * Math.tan(stlatVal))); + mathFormula2 = (double) ((Math.pow(cx, 2) / (2 * Math.pow(rad, 2)) * Math + .tan(stlatVal))); double xlatVal = (double) (stlatVal + (cy / rad) - mathFormula2); - double xlonVal = (double) (stlon.doubleValue() + (cx / (rad * Math.cos(xlat.doubleValue())))); + double xlonVal = (double) (stlon.doubleValue() + (cx / (rad * Math + .cos(xlat.doubleValue())))); /* Change lat/lon to degrees */ - xlatVal = SI.RADIAN.getConverterTo(NonSI.DEGREE_ANGLE).convert(xlatVal); - xlonVal = SI.RADIAN.getConverterTo(NonSI.DEGREE_ANGLE).convert(xlonVal); + xlatVal = SI.RADIAN.getConverterTo(NonSI.DEGREE_ANGLE).convert( + xlatVal); + xlonVal = SI.RADIAN.getConverterTo(NonSI.DEGREE_ANGLE).convert( + xlonVal); this.xlat = new Amount(xlatVal, NonSI.DEGREE_ANGLE); this.xlon = new Amount(xlonVal, NonSI.DEGREE_ANGLE); @@ -1484,7 +1623,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prSped(Amount uWnd, Amount vWnd) throws InvalidValueException, NullPointerException { + public static final Amount prSped(Amount uWnd, Amount vWnd) + throws InvalidValueException, NullPointerException { // System.out.println("From prSped:"); // System.out.println(" uWnd = " +uWnd.doubleValue()); // System.out.println(" vWnd = " + vWnd.doubleValue()); @@ -1497,10 +1637,12 @@ public final class PRLibrary { Unit uWndUnits = uWnd.getUnit(); Unit vWndUnits = vWnd.getUnit(); if (uWndUnits != vWndUnits && uWndUnits.isCompatible(vWndUnits)) { - double vWndVal = vWndUnits.getConverterTo(uWndUnits).convert(vWnd.doubleValue()); + double vWndVal = vWndUnits.getConverterTo(uWndUnits).convert( + vWnd.doubleValue()); vWnd = new Amount(vWndVal, uWndUnits); } - double prsped = (Math.sqrt((Math.pow(uWnd.doubleValue(), 2) + Math.pow(vWnd.doubleValue(), 2)))); + double prsped = (Math.sqrt((Math.pow(uWnd.doubleValue(), 2) + Math.pow( + vWnd.doubleValue(), 2)))); return new Amount(prsped, uWndUnits); } @@ -1518,7 +1660,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static Amount prThta(Amount tmpc, Amount pres) throws InvalidValueException, NullPointerException { + public static Amount prThta(Amount tmpc, Amount pres) + throws InvalidValueException, NullPointerException { checkNullOrInvalidValue(tmpc); checkNullOrInvalidValue(pres); @@ -1536,10 +1679,12 @@ public final class PRLibrary { } /* Change temperature in degrees Celsius to Kelvin. */ - double temperatureInKelvin = (double) tmpc.getUnit().getConverterTo(SI.KELVIN).convert(tmpc.doubleValue()); + double temperatureInKelvin = (double) tmpc.getUnit() + .getConverterTo(SI.KELVIN).convert(tmpc.doubleValue()); /* Calculate theta using Poisson's equation */ - double prthta = (double) (temperatureInKelvin * Math.pow((1000 / pres.doubleValue()), GempakConstants.RKAPPA)); + double prthta = (double) (temperatureInKelvin * Math.pow( + (1000 / pres.doubleValue()), GempakConstants.RKAPPA)); return new Amount(prthta, SI.KELVIN); } @@ -1572,11 +1717,13 @@ public final class PRLibrary { // checkNullOrInvalidValue(pres); // checkNullOrInvalidValue(tmpc); // checkNullOrInvalidValue(dwpc); - if (!checkNullOrInvalidValue(tmpc) || !checkNullOrInvalidValue(pres) || !checkNullOrInvalidValue(dwpc)) + if (!checkNullOrInvalidValue(tmpc) || !checkNullOrInvalidValue(pres) + || !checkNullOrInvalidValue(dwpc)) return new Amount(SI.KELVIN); if (pres.doubleValue() <= 0) { - System.out.println("From prThte() - Input pressure must be greater than 0 "); + System.out + .println("From prThte() - Input pressure must be greater than 0 "); return new Amount(SI.KELVIN); // throw new // InvalidRangeException("From prThte() - Input pressure must be greater than 0 "); @@ -1608,7 +1755,8 @@ public final class PRLibrary { return new Amount(SI.KELVIN); double lclTemp = tlcl.doubleValue(); - e = ((3.376f / lclTemp) - 0.00254f) * (mixingRatioVal * (1 + 0.81f * 0.001f * mixingRatioVal)); + e = ((3.376f / lclTemp) - 0.00254f) + * (mixingRatioVal * (1 + 0.81f * 0.001f * mixingRatioVal)); double prthte = (double) (thtam * Math.exp(e)); Amount equivPotentialTempAmount = new Amount(prthte, SI.KELVIN); return equivPotentialTempAmount; @@ -1633,7 +1781,8 @@ public final class PRLibrary { * * @throws InvalidRangeException */ - public static final Amount prThwc(Amount pres, Amount tmpc, Amount dwpc) throws InvalidValueException, NullPointerException { + public static final Amount prThwc(Amount pres, Amount tmpc, Amount dwpc) + throws InvalidValueException, NullPointerException { // System.out.println(" PRLibrary/prThwc:"); // System.out.println(" PRLibrary/prThwc. press = " + // pres.doubleValue()); @@ -1645,7 +1794,8 @@ public final class PRLibrary { // checkNullOrInvalidValue( tmpc ); // checkNullOrInvalidValue( dwpc ); - if (!checkNullOrInvalidValue(tmpc) || !checkNullOrInvalidValue(pres) || !checkNullOrInvalidValue(dwpc)) + if (!checkNullOrInvalidValue(tmpc) || !checkNullOrInvalidValue(pres) + || !checkNullOrInvalidValue(dwpc)) return new Amount(SI.CELSIUS); pres = checkAndConvertInputAmountToExpectedUnits(pres, NcUnits.MILLIBAR); @@ -1664,7 +1814,8 @@ public final class PRLibrary { // .println(" PRLibrary/prThwc. press 3 = " + pres.doubleValue()); if (presVal <= 0) { - System.out.println("From prThwc: Pressure must be greater than 0 mb"); + System.out + .println("From prThwc: Pressure must be greater than 0 mb"); return new Amount(SI.CELSIUS); // throw new // InvalidRangeException("From prThwc: Pressure must be greater than 0 mb"); @@ -1679,7 +1830,8 @@ public final class PRLibrary { return new Amount(SI.CELSIUS); /* Compute the parcel temperature (in Kelvin) */ - Amount prthwc = prTmst(thte, new Amount(1000, NcUnits.MILLIBAR), new Amount(0, SI.KELVIN)); + Amount prthwc = prTmst(thte, new Amount(1000, NcUnits.MILLIBAR), + new Amount(0, SI.KELVIN)); // System.out.println(" PRLibrary/prThwc. prthwc (K) 5 = " // + prthwc.doubleValue()); @@ -1719,15 +1871,18 @@ public final class PRLibrary { if (!checkNullOrInvalidValue(tmpc) || !checkNullOrInvalidValue(dwpc)) return new Amount(SI.KELVIN); - if (tmpc.doubleValue() < -GempakConstants.TMCK || dwpc.doubleValue() < -GempakConstants.TMCK) { - System.out.println("From prTlcl: Input temperature cannot be less than -273.15"); + if (tmpc.doubleValue() < -GempakConstants.TMCK + || dwpc.doubleValue() < -GempakConstants.TMCK) { + System.out + .println("From prTlcl: Input temperature cannot be less than -273.15"); return new Amount(SI.KELVIN); } Amount tmpk = checkAndConvertInputAmountToExpectedUnits(tmpc, SI.KELVIN); Amount dwpk = checkAndConvertInputAmountToExpectedUnits(dwpc, SI.KELVIN); double tempVal = tmpk.doubleValue(); double dewpointVal = dwpk.doubleValue(); - double lclTemp = (double) ((800 * (dewpointVal - 56) / (800 + (dewpointVal - 56) * Math.log(tempVal / dewpointVal))) + 56); + double lclTemp = (double) ((800 * (dewpointVal - 56) / (800 + (dewpointVal - 56) + * Math.log(tempVal / dewpointVal))) + 56); Amount prtlcl = new Amount(lclTemp, SI.KELVIN); return prtlcl; @@ -1747,7 +1902,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prTmpk(Amount pres, Amount thta) throws InvalidValueException, NullPointerException { + public static final Amount prTmpk(Amount pres, Amount thta) + throws InvalidValueException, NullPointerException { // System.out.println("From prTmpk:"); // System.out.println(" pres = " + pres.doubleValue()); // System.out.println("thta = " + thta.doubleValue()); @@ -1762,11 +1918,13 @@ public final class PRLibrary { double pressureValue = pres.doubleValue(); double thtaValue = thta.doubleValue(); if (pressureValue >= 0) { - double temperature = (double) (thtaValue * (Math.pow(pressureValue / 1000f, GempakConstants.RKAPPA))); + double temperature = (double) (thtaValue * (Math.pow( + pressureValue / 1000f, GempakConstants.RKAPPA))); prtmpk = new Amount(temperature, SI.KELVIN); return prtmpk; } else { - System.out.println("From prTmpk() - pressure cannot be less than 0 mb"); + System.out + .println("From prTmpk() - pressure cannot be less than 0 mb"); return new Amount(SI.KELVIN); // throw new // InvalidRangeException("From prTmpk() - pressure cannot be less than 0 mb"); @@ -1807,7 +1965,8 @@ public final class PRLibrary { // pres.doubleValue()); // System.out.println(" PRLibrary/prTmst. tguess = " // + tguess.doubleValue()); - if (!checkNullOrInvalidValue(pres) || !checkNullOrInvalidValue(thte) || !checkNullOrInvalidValue(tguess)) { + if (!checkNullOrInvalidValue(pres) || !checkNullOrInvalidValue(thte) + || !checkNullOrInvalidValue(tguess)) { return new Amount(SI.KELVIN); } // checkNullOrInvalidValue( thte ); @@ -1821,17 +1980,20 @@ public final class PRLibrary { double tguessVal = tguess.doubleValue(); if (thteVal <= 0) { - System.out.println(" From prTmst(): Potential temperature must be greater than 0"); + System.out + .println(" From prTmst(): Potential temperature must be greater than 0"); return new Amount(SI.KELVIN); // throw new // InvalidRangeException(" From prTmst(): Potential temperature must be greater than 0"); } else if (presVal <= 0) { - System.out.println(" From prTmst(): Pressure must be greater than 0"); + System.out + .println(" From prTmst(): Pressure must be greater than 0"); return new Amount(SI.KELVIN); // throw new // InvalidRangeException(" From prTmst(): Pressure must be greater than 0"); } else if (tguessVal < 0) { - System.out.println(" From prTmst(): First guess temperature must be greater than or equal to 0"); + System.out + .println(" From prTmst(): First guess temperature must be greater than or equal to 0"); return new Amount(SI.KELVIN); // throw new // InvalidRangeException(" From prTmst(): First guess temperature must be greater than 0"); @@ -1846,15 +2008,18 @@ public final class PRLibrary { if (tg == 0) { double diffVar = thte.doubleValue() - 270; double mathFormula1 = (double) (diffVar > 0 ? diffVar : 0.0); - tg = (double) ((thte.doubleValue() - .5f * (Math.pow(mathFormula1, 1.05f))) * (Math.pow(pres.doubleValue() / 1000.0f, 0.2f))); + tg = (double) ((thte.doubleValue() - .5f * (Math.pow(mathFormula1, + 1.05f))) * (Math.pow(pres.doubleValue() / 1000.0f, 0.2f))); } /* Set convergence and initial guess in degrees Celsius */ double epsi = 0.01f; double tgnu = SI.KELVIN.getConverterTo(SI.CELSIUS).convert(tg); - /* Set a limit of 100 iterations. Compute tenu,tenup, the thte's at one - * degree above the guess temperature. */ + /* + * Set a limit of 100 iterations. Compute tenu,tenup, the thte's at one + * degree above the guess temperature. + */ int index = 0; while (index < 100) { double tgnup = tgnu + 1; @@ -1893,7 +2058,8 @@ public final class PRLibrary { if ((cor < epsi) && (-cor < epsi)) { /* return on convergence */ - prtmst = tgnuAmount.getUnit().getConverterTo(SI.KELVIN).convert(tgnu); + prtmst = tgnuAmount.getUnit().getConverterTo(SI.KELVIN) + .convert(tgnu); // System.out.println(" PRLibrary/prTmst. prtmst 7 = " + // prtmst); @@ -1931,7 +2097,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prTmwb(Amount tmpk, Amount rmix, Amount pres) throws InvalidValueException, NullPointerException { + public static final Amount prTmwb(Amount tmpk, Amount rmix, Amount pres) + throws InvalidValueException, NullPointerException { // System.out.println("From prTmwb:"); // System.out.println(" tmpk = " + tmpk.doubleValue()); // System.out.println(" rmix = " + rmix.doubleValue()); @@ -1942,16 +2109,18 @@ public final class PRLibrary { // checkNullOrInvalidValue( tmpk ); // checkNullOrInvalidValue( rmix ); // checkNullOrInvalidValue( pres ); - if (!checkNullOrInvalidValue(pres) || !checkNullOrInvalidValue(tmpk) || !checkNullOrInvalidValue(rmix)) { + if (!checkNullOrInvalidValue(pres) || !checkNullOrInvalidValue(tmpk) + || !checkNullOrInvalidValue(rmix)) { return new Amount(SI.KELVIN); } tmpk = checkAndConvertInputAmountToExpectedUnits(tmpk, SI.KELVIN); - rmix = checkAndConvertInputAmountToExpectedUnits(rmix, NcUnits.GRAMS_PER_KILOGRAM); + rmix = checkAndConvertInputAmountToExpectedUnits(rmix, + NcUnits.GRAMS_PER_KILOGRAM); pres = checkAndConvertInputAmountToExpectedUnits(pres, NcUnits.MILLIBAR); double presVal = pres.doubleValue(); if (presVal <= 0) { // System.out - // .println("From prTmwb - pressure value must be greater than 0 "); + // .println("From prTmwb - pressure value must be greater than 0 "); return new Amount(SI.KELVIN); // throw new // InvalidRangeException("From prTmwb - pressure value must be greater than 0 "); @@ -2024,7 +2193,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prTvrk(Amount tmpc, Amount dwpc, Amount pres) throws InvalidValueException, NullPointerException { + public static final Amount prTvrk(Amount tmpc, Amount dwpc, Amount pres) + throws InvalidValueException, NullPointerException { // System.out.println("From prTvrk:"); // System.out.println(" tmpc = " + tmpc.doubleValue()); // System.out.println(" dwpc = " + dwpc.doubleValue()); @@ -2045,18 +2215,21 @@ public final class PRLibrary { else { /* Change temperature to Kelvin. */ - Amount tmpk = checkAndConvertInputAmountToExpectedUnits(tmpc, SI.KELVIN); + Amount tmpk = checkAndConvertInputAmountToExpectedUnits(tmpc, + SI.KELVIN); /* Find mixing ratio in g/kg; if missing, return temperature */ Amount rmix = prMixr(dwpc, pres); double virtualTemp; if (rmix.doubleValue() == GempakConstants.RMISSD) - virtualTemp = (double) tmpc.getUnit().getConverterTo(SI.KELVIN).convert(tmpc.doubleValue()); + virtualTemp = (double) tmpc.getUnit().getConverterTo(SI.KELVIN) + .convert(tmpc.doubleValue()); else { double mixingRatioVal = rmix.doubleValue(); double temp = tmpk.doubleValue(); - virtualTemp = (double) (temp * (1 + 0.001 * mixingRatioVal / 0.62197) / (1 + 0.001 * mixingRatioVal)); + virtualTemp = (double) (temp + * (1 + 0.001 * mixingRatioVal / 0.62197) / (1 + 0.001 * mixingRatioVal)); } prtvrk = new Amount(virtualTemp, SI.KELVIN); @@ -2075,15 +2248,18 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prUwnd(Amount sped, Amount drct) throws InvalidValueException, NullPointerException { + public static final Amount prUwnd(Amount sped, Amount drct) + throws InvalidValueException, NullPointerException { // System.out.println("From prUwnd:"); // System.out.println(" sped = " + sped.doubleValue()); // System.out.println(" drct = " + drct.doubleValue()); if (!checkNullOrInvalidValue(drct) || !checkNullOrInvalidValue(sped)) { return new Amount(SI.METERS_PER_SECOND); } - drct = checkAndConvertInputAmountToExpectedUnits(drct, NonSI.DEGREE_ANGLE); - double pruwnd = ((-Math.sin(drct.doubleValue() * GempakConstants.DTR)) * sped.doubleValue()); + drct = checkAndConvertInputAmountToExpectedUnits(drct, + NonSI.DEGREE_ANGLE); + double pruwnd = ((-Math.sin(drct.doubleValue() * GempakConstants.DTR)) * sped + .doubleValue()); return new Amount(pruwnd, sped.getUnit()); // TODO :verify the units } @@ -2098,15 +2274,18 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prVwnd(Amount sped, Amount drct) throws InvalidValueException, NullPointerException { + public static final Amount prVwnd(Amount sped, Amount drct) + throws InvalidValueException, NullPointerException { // System.out.println("From prVwnd:"); // System.out.println(" sped = " + sped.doubleValue()); // System.out.println(" drct = " + drct.doubleValue()); if (!checkNullOrInvalidValue(drct) || !checkNullOrInvalidValue(sped)) { return new Amount(SI.METERS_PER_SECOND); } - drct = checkAndConvertInputAmountToExpectedUnits(drct, NonSI.DEGREE_ANGLE); - double prvwnd = ((-Math.cos(drct.doubleValue() * GempakConstants.DTR)) * sped.doubleValue()); + drct = checkAndConvertInputAmountToExpectedUnits(drct, + NonSI.DEGREE_ANGLE); + double prvwnd = ((-Math.cos(drct.doubleValue() * GempakConstants.DTR)) * sped + .doubleValue()); return new Amount(prvwnd, sped.getUnit()); // TODO :verify the units } @@ -2131,11 +2310,13 @@ public final class PRLibrary { dwpc = checkAndConvertInputAmountToExpectedUnits(dwpc, SI.CELSIUS); double dewpointValue = dwpc.doubleValue(); if (dewpointValue >= -240.0f) - return (new Amount((6.112 * (Math.exp((17.67 * dewpointValue) / (dewpointValue + 243.5)))), NcUnits.MILLIBAR)); + return (new Amount((6.112 * (Math.exp((17.67 * dewpointValue) + / (dewpointValue + 243.5)))), NcUnits.MILLIBAR)); else { // throw new // InvalidRangeException("Exception from prVapr() - dewpoint cannot be less than -240 "); - System.out.println("From prVapr() - dewpoint cannot be less than -240 "); + System.out + .println("From prVapr() - dewpoint cannot be less than -240 "); return new Amount(NcUnits.MILLIBAR); } } @@ -2175,7 +2356,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prWceq(Amount tmpf, Amount sknt) throws InvalidValueException, NullPointerException { + public static final Amount prWceq(Amount tmpf, Amount sknt) + throws InvalidValueException, NullPointerException { // System.out.println("From prWceq:"); // System.out.println(" tmpf = " + tmpf.doubleValue()); // System.out.println(" sknt = " + sknt.doubleValue()); @@ -2186,23 +2368,32 @@ public final class PRLibrary { } /* Convert input variables to Celsius and meters/second. */ - Amount tmpc = checkAndConvertInputAmountToExpectedUnits(tmpf, SI.CELSIUS); - Amount sped = checkAndConvertInputAmountToExpectedUnits(sknt, SI.METERS_PER_SECOND); + Amount tmpc = checkAndConvertInputAmountToExpectedUnits(tmpf, + SI.CELSIUS); + Amount sped = checkAndConvertInputAmountToExpectedUnits(sknt, + SI.METERS_PER_SECOND); if (sped.doubleValue() <= 1.34) - /* If the wind speed does not exceed 1.34 m/s ( not much wind to + /* + * If the wind speed does not exceed 1.34 m/s ( not much wind to * contribute to the wind chill), return the input temperature as - * the wind chill temperature */ - prwceq = tmpc.getUnit().getConverterTo(NonSI.FAHRENHEIT).convert(tmpc.doubleValue()); + * the wind chill temperature + */ + prwceq = tmpc.getUnit().getConverterTo(NonSI.FAHRENHEIT) + .convert(tmpc.doubleValue()); else { - /* Compute the wind chill temp if the inputs are not missing and and + /* + * Compute the wind chill temp if the inputs are not missing and and * the wind speed is greater than 1.34 m/s. Equations for wind chill * computation from R. Falconer, * "Windchill, A Useful Wintertime Weather Variable", Weatherwise, - * Dec 1968. */ + * Dec 1968. + */ if (sped.getUnit() == SI.METERS_PER_SECOND) { - float windChill = (float) (33.0 - ((33.0 - tmpc.doubleValue()) * wci(sped.doubleValue()) / wci(1.34f))); - prwceq = tmpc.getUnit().getConverterTo(NonSI.FAHRENHEIT).convert(windChill); + float windChill = (float) (33.0 - ((33.0 - tmpc.doubleValue()) + * wci(sped.doubleValue()) / wci(1.34f))); + prwceq = tmpc.getUnit().getConverterTo(NonSI.FAHRENHEIT) + .convert(windChill); } } @@ -2260,7 +2451,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prWcht(Amount tmpf, Amount sknt) throws InvalidValueException, NullPointerException { + public static final Amount prWcht(Amount tmpf, Amount sknt) + throws InvalidValueException, NullPointerException { // System.out.println("From prWcht:"); // System.out.println(" tmpf = " + tmpf.doubleValue()); // System.out.println(" sknt = " + sknt.doubleValue()); @@ -2270,19 +2462,26 @@ public final class PRLibrary { } /* Convert the speed to miles per hour */ - Amount smph = checkAndConvertInputAmountToExpectedUnits(sknt, NonSI.MILES_PER_HOUR); + Amount smph = checkAndConvertInputAmountToExpectedUnits(sknt, + NonSI.MILES_PER_HOUR); - /* If the inputs are not missing , check if the wind speed is <= 3 miles - * per hour */ + /* + * If the inputs are not missing , check if the wind speed is <= 3 miles + * per hour + */ double smphVal = smph.doubleValue(); double tmpfVal = tmpf.doubleValue(); if (smphVal <= 3) prwrcht = tmpfVal; else { - /* Compute the wind-chill temperature for wind speeds that exceed 3 - * miles per hour */ - float wcht = (float) (35.74 + 0.6215 * tmpfVal - 35.75 * Math.pow(smphVal, 0.16) + 0.4275 * tmpfVal * Math.pow(smphVal, 0.16)); + /* + * Compute the wind-chill temperature for wind speeds that exceed 3 + * miles per hour + */ + float wcht = (float) (35.74 + 0.6215 * tmpfVal - 35.75 + * Math.pow(smphVal, 0.16) + 0.4275 * tmpfVal + * Math.pow(smphVal, 0.16)); prwrcht = (wcht > tmpfVal ? tmpfVal : wcht); } return (new Amount(prwrcht, NonSI.FAHRENHEIT)); @@ -2303,7 +2502,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prWcmp(Amount drct, Amount sped, Amount dcmp) throws InvalidValueException, NullPointerException { + public static final Amount prWcmp(Amount drct, Amount sped, Amount dcmp) + throws InvalidValueException, NullPointerException { // System.out.println("From prWcmp:"); // System.out.println(" sped = " + sped.doubleValue()); // System.out.println(" drct = " + drct.doubleValue()); @@ -2312,16 +2512,22 @@ public final class PRLibrary { // checkNullOrInvalidValue( drct ); // checkNullOrInvalidValue( sped ); // checkNullOrInvalidValue( dcmp ); - if (!checkNullOrInvalidValue(drct) || !checkNullOrInvalidValue(sped) || !checkNullOrInvalidValue(dcmp)) { + if (!checkNullOrInvalidValue(drct) || !checkNullOrInvalidValue(sped) + || !checkNullOrInvalidValue(dcmp)) { return new Amount(SI.METERS_PER_SECOND); } - drct = checkAndConvertInputAmountToExpectedUnits(drct, NonSI.DEGREE_ANGLE); - dcmp = checkAndConvertInputAmountToExpectedUnits(dcmp, NonSI.DEGREE_ANGLE); - sped = checkAndConvertInputAmountToExpectedUnits(sped, SI.METERS_PER_SECOND); + drct = checkAndConvertInputAmountToExpectedUnits(drct, + NonSI.DEGREE_ANGLE); + dcmp = checkAndConvertInputAmountToExpectedUnits(dcmp, + NonSI.DEGREE_ANGLE); + sped = checkAndConvertInputAmountToExpectedUnits(sped, + SI.METERS_PER_SECOND); /* Calculate wind speed toward specified direction */ - double prwcmp = sped.doubleValue() * (-Math.cos((drct.doubleValue() - dcmp.doubleValue()) * GempakConstants.DTR)); + double prwcmp = sped.doubleValue() + * (-Math.cos((drct.doubleValue() - dcmp.doubleValue()) + * GempakConstants.DTR)); return new Amount(prwcmp, SI.METERS_PER_SECOND); } @@ -2344,7 +2550,8 @@ public final class PRLibrary { * * @throws InvalidRangeException */ - public static final Amount prWnml(Amount drct, Amount sped, Amount dcmp) throws InvalidValueException, NullPointerException { + public static final Amount prWnml(Amount drct, Amount sped, Amount dcmp) + throws InvalidValueException, NullPointerException { // System.out.println("From prWnml:"); // System.out.println(" sped = " + sped.doubleValue()); // System.out.println(" drct = " + drct.doubleValue()); @@ -2352,21 +2559,28 @@ public final class PRLibrary { // checkNullOrInvalidValue(sped); // checkNullOrInvalidValue(drct); // checkNullOrInvalidValue(dcmp); - if (!checkNullOrInvalidValue(drct) || !checkNullOrInvalidValue(sped) || !checkNullOrInvalidValue(dcmp)) { + if (!checkNullOrInvalidValue(drct) || !checkNullOrInvalidValue(sped) + || !checkNullOrInvalidValue(dcmp)) { return new Amount(SI.METERS_PER_SECOND); } - drct = checkAndConvertInputAmountToExpectedUnits(drct, NonSI.DEGREE_ANGLE); - dcmp = checkAndConvertInputAmountToExpectedUnits(dcmp, NonSI.DEGREE_ANGLE); - sped = checkAndConvertInputAmountToExpectedUnits(sped, SI.METERS_PER_SECOND); + drct = checkAndConvertInputAmountToExpectedUnits(drct, + NonSI.DEGREE_ANGLE); + dcmp = checkAndConvertInputAmountToExpectedUnits(dcmp, + NonSI.DEGREE_ANGLE); + sped = checkAndConvertInputAmountToExpectedUnits(sped, + SI.METERS_PER_SECOND); if ((dcmp.doubleValue() < 0) && (dcmp.doubleValue() > 360)) { // throw new // InvalidRangeException("From prWnml - the wind direction 'dcmp' mus be greater than or equal to 0 and less than or equal to 360"); - System.out.println("From prWnml - the wind direction 'dcmp' mus be greater than or equal to 0 and less than or equal to 360"); + System.out + .println("From prWnml - the wind direction 'dcmp' mus be greater than or equal to 0 and less than or equal to 360"); return new Amount(SI.METERS_PER_SECOND); } /* Calculate wind speed 90 degrees to left of given direction. */ - double prwnml = (float) (sped.doubleValue() * (-Math.cos((drct.doubleValue() - dcmp.doubleValue() - 90) * GempakConstants.DTR))); + double prwnml = (float) (sped.doubleValue() * (-Math.cos((drct + .doubleValue() - dcmp.doubleValue() - 90) + * GempakConstants.DTR))); return (new Amount(prwnml, SI.METERS_PER_SECOND)); } @@ -2407,7 +2621,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prWxvf(Amount xvfr, Amount txvf) throws InvalidValueException, NullPointerException { + public static final Amount prWxvf(Amount xvfr, Amount txvf) + throws InvalidValueException, NullPointerException { // System.out.println("From prWxvf:"); // System.out.println(" xvfr = " + xvfr.doubleValue()); // System.out.println(" txvf = " + txvf.doubleValue()); @@ -2418,13 +2633,16 @@ public final class PRLibrary { double xvfrVal = xvfr.doubleValue(); double txvfVal = txvf.doubleValue(); - if (txvfVal != GempakConstants.RMISSD && xvfrVal != GempakConstants.RMISSD) + if (txvfVal != GempakConstants.RMISSD + && xvfrVal != GempakConstants.RMISSD) prwxvf = (xvfrVal < txvfVal ? xvfrVal : txvfVal); - else if (xvfrVal == GempakConstants.RMISSD && txvfVal != GempakConstants.RMISSD) + else if (xvfrVal == GempakConstants.RMISSD + && txvfVal != GempakConstants.RMISSD) prwxvf = xvfrVal; - else if (txvfVal != GempakConstants.RMISSD && xvfrVal != GempakConstants.RMISSD) + else if (txvfVal != GempakConstants.RMISSD + && xvfrVal != GempakConstants.RMISSD) prwxvf = txvfVal; } @@ -2446,7 +2664,8 @@ public final class PRLibrary { * @throws NullPointerException * */ - public static final Amount prXvfr(Amount ceil, Amount vsby) throws InvalidValueException, NullPointerException { + public static final Amount prXvfr(Amount ceil, Amount vsby) + throws InvalidValueException, NullPointerException { // System.out.println("From prXvfr:"); // System.out.println(" ceil = " + ceil.doubleValue()); // System.out.println(" vsby = " + vsby.doubleValue()); @@ -2459,7 +2678,8 @@ public final class PRLibrary { if (!checkNullOrInvalidValue(ceil)) return new Amount(Unit.ONE); - ceil = checkAndConvertInputAmountToExpectedUnits(ceil, NcUnits.HUNDREDS_OF_FEET); + ceil = checkAndConvertInputAmountToExpectedUnits(ceil, + NcUnits.HUNDREDS_OF_FEET); vsby = checkAndConvertInputAmountToExpectedUnits(vsby, NonSI.MILE); /* Compute categorical flight rules */ @@ -2477,7 +2697,8 @@ public final class PRLibrary { vc = 1; else if (ceilVal <= 30) vc = 2; - else if ((vsbyVal > 5) || (vsbyVal < 0) || (vsbyVal == GempakConstants.RMISSD)) { + else if ((vsbyVal > 5) || (vsbyVal < 0) + || (vsbyVal == GempakConstants.RMISSD)) { prxvfr = 3; } @@ -2524,7 +2745,8 @@ public final class PRLibrary { * * @throws InvalidRangeException */ - public static final Amount prZalt(Amount altm, Amount pres) throws InvalidValueException, NullPointerException { + public static final Amount prZalt(Amount altm, Amount pres) + throws InvalidValueException, NullPointerException { // System.out.println("From prZalt:"); // System.out.println(" altm = " + altm.doubleValue()); // System.out.println(" pres = " + pres.doubleValue()); @@ -2571,16 +2793,21 @@ public final class PRLibrary { */ private static double wci(double d) { - /* from R. Falconer, "Windchill, A Useful Wintertime Weather Variable", - * Weatherwise, Dec 1968. */ + /* + * from R. Falconer, "Windchill, A Useful Wintertime Weather Variable", + * Weatherwise, Dec 1968. + */ return ((double) (10 * Math.sqrt(d) + 10.45 - d)); } - public static final Amount checkAndConvertInputAmountToExpectedUnits(Amount amountIn, Unit expectedUnit) { + public static final Amount checkAndConvertInputAmountToExpectedUnits( + Amount amountIn, Unit expectedUnit) { Amount amountOut = null; - if (!amountIn.getUnit().equals(expectedUnit) && amountIn.getUnit().isCompatible(expectedUnit)) { - double newValue = amountIn.getUnit().getConverterTo(expectedUnit).convert(amountIn.doubleValue()); + if (!amountIn.getUnit().equals(expectedUnit) + && amountIn.getUnit().isCompatible(expectedUnit)) { + double newValue = amountIn.getUnit().getConverterTo(expectedUnit) + .convert(amountIn.doubleValue()); amountOut = new Amount(newValue, expectedUnit); } else // throw new ConversionException("Unable to convert " + @@ -2680,7 +2907,8 @@ public final class PRLibrary { * @throws InvalidRangeException */ - public static Amount prPmst(Amount thte, Amount tmpk) throws InvalidValueException, NullPointerException { + public static Amount prPmst(Amount thte, Amount tmpk) + throws InvalidValueException, NullPointerException { // checkNullOrInvalidValue(thte); // checkNullOrInvalidValue(tmpk); @@ -2693,7 +2921,7 @@ public final class PRLibrary { if (thte.getValue().doubleValue() <= 0) { // System.out - // .println("From prPmst(): The equivalent potential temperature must be greater than 0"); + // .println("From prPmst(): The equivalent potential temperature must be greater than 0"); return new Amount(SI.KELVIN); // throw new // InvalidRangeException("The equivalent potential temperature must be greater than 0"); @@ -2702,13 +2930,15 @@ public final class PRLibrary { /* Set convergence and initial guess of pressure. */ double epsi = 0.01; Amount tmpc = new Amount(tmpk.getValueAs(SI.CELSIUS), SI.CELSIUS); - double tempVal = 1000 * Math.pow(tmpk.getValue().doubleValue() / thte.getValue().doubleValue(), GempakConstants.AKAPPA); + double tempVal = 1000 * Math.pow(tmpk.getValue().doubleValue() + / thte.getValue().doubleValue(), GempakConstants.AKAPPA); Amount pgdn = new Amount(tempVal, NcUnits.MILLIBAR); boolean done = false; int i = 1; while (!done) { // Amount pgdn = new Amount ( tempVal, NcUnits.MILLIBAR ); - Amount pgup = new Amount(pgdn.getValueAs(NcUnits.MILLIBAR).doubleValue() + 1, NcUnits.MILLIBAR); + Amount pgup = new Amount(pgdn.getValueAs(NcUnits.MILLIBAR) + .doubleValue() + 1, NcUnits.MILLIBAR); Amount tedn = prThte(pgdn, tmpc, tmpc); Amount teup = prThte(pgup, tmpc, tmpc); @@ -2717,8 +2947,10 @@ public final class PRLibrary { return prpmst; /* Compute the correction; return on convergence. */ - double cor = (thte.getValueAs(SI.KELVIN).doubleValue() - tedn.getValueAs(SI.KELVIN).doubleValue()) - / (teup.getValueAs(SI.KELVIN).doubleValue() - tedn.getValueAs(SI.KELVIN).doubleValue()); + double cor = (thte.getValueAs(SI.KELVIN).doubleValue() - tedn + .getValueAs(SI.KELVIN).doubleValue()) + / (teup.getValueAs(SI.KELVIN).doubleValue() - tedn + .getValueAs(SI.KELVIN).doubleValue()); double pgdnVal = (pgdn.getValueAs(NcUnits.MILLIBAR).doubleValue() + cor); pgdn = new Amount(pgdnVal, NcUnits.MILLIBAR); diff --git a/ncep/gov.noaa.nws.ncep.viz.localization/localization/ncep/PlotModels/PlotParameters/plotParameters_obs.xml b/ncep/gov.noaa.nws.ncep.viz.localization/localization/ncep/PlotModels/PlotParameters/plotParameters_obs.xml index cdb79ac79b..7c1c9d864c 100644 --- a/ncep/gov.noaa.nws.ncep.viz.localization/localization/ncep/PlotModels/PlotParameters/plotParameters_obs.xml +++ b/ncep/gov.noaa.nws.ncep.viz.localization/localization/ncep/PlotModels/PlotParameters/plotParameters_obs.xml @@ -22,7 +22,7 @@ - + @@ -235,7 +235,8 @@ don't think this is needed here plotLookupTable="wx_symbol_trans.txt" There are 2 alternatives : First we can add/implement the arrayIndex="0" attribute to display other values and Second we can use the prioritySelectTable="wx_sym_select.txt". This is currently - only configured to rank all values the same so to prioritize it would need the ranking set --> + only configured to rank all values the same so to prioritize it would need the ranking set + RedMine 4230 --> + + + +