Compare commits
	
		
			No commits in common. "131b01640c1475581e74825eeaaae4b4286fab17" and "f90220170206734cc8cb0607596ffee8ab4f369e" have entirely different histories.
		
	
	
		
			131b01640c
			...
			f902201702
		
	
		
					 2 changed files with 21 additions and 35 deletions
				
			
		| 
						 | 
				
			
			@ -33,13 +33,13 @@ for path in getattr(args, 'raob-sounding-file'):
 | 
			
		|||
        if station is not None:
 | 
			
		||||
            sounding.station = station.code
 | 
			
		||||
 | 
			
		||||
        if not args.dry_run:
 | 
			
		||||
        if args.dry_run:
 | 
			
		||||
            continue
 | 
			
		||||
 | 
			
		||||
        db.add(sounding)
 | 
			
		||||
 | 
			
		||||
        for sample in sounding.samples:
 | 
			
		||||
            sample.sounding_id = sounding.id
 | 
			
		||||
 | 
			
		||||
            if not args.dry_run:
 | 
			
		||||
            db.add(sample)
 | 
			
		||||
 | 
			
		||||
if not args.dry_run:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -111,32 +111,26 @@ class RAOBObs():
 | 
			
		|||
 | 
			
		||||
        return None
 | 
			
		||||
 | 
			
		||||
    def calc_1000mb_height(self, value: float) -> float:
 | 
			
		||||
        if value >= 500:
 | 
			
		||||
            return 0 - (value - 500)
 | 
			
		||||
    def calc_1000mb_height(self, height: float) -> float:
 | 
			
		||||
        if height >= 500:
 | 
			
		||||
            return 0 - (height - 500)
 | 
			
		||||
 | 
			
		||||
        return value
 | 
			
		||||
        return height
 | 
			
		||||
 | 
			
		||||
    def calc_850mb_height(self, value: float) -> float:
 | 
			
		||||
        return 1000.0 + value
 | 
			
		||||
    def calc_850mb_height(self, height: float) -> float:
 | 
			
		||||
        return 1000.0 + height
 | 
			
		||||
 | 
			
		||||
    def calc_700mb_height(self, value: float) -> float:
 | 
			
		||||
        if value >= 500:
 | 
			
		||||
            return 2000.0 + value
 | 
			
		||||
    def calc_500mb_height(self, height: float) -> float:
 | 
			
		||||
        return 10.0 * height
 | 
			
		||||
 | 
			
		||||
    def calc_250mb_height(self, height: float) -> float:
 | 
			
		||||
        if height >= 500:
 | 
			
		||||
            return height * 10
 | 
			
		||||
        else:
 | 
			
		||||
            return 3000.0 + value
 | 
			
		||||
            return 10.0 * (1000.0 + height)
 | 
			
		||||
 | 
			
		||||
    def calc_500mb_height(self, value: float) -> float:
 | 
			
		||||
        return 10.0 * value
 | 
			
		||||
 | 
			
		||||
    def calc_250mb_height(self, value: float) -> float:
 | 
			
		||||
        if value >= 500:
 | 
			
		||||
            return value * 10
 | 
			
		||||
        else:
 | 
			
		||||
            return 10.0 * (1000.0 + value)
 | 
			
		||||
 | 
			
		||||
    def calc_100mb_height(self, value: float) -> float:
 | 
			
		||||
        return 10.0 * (1000.0 + value)
 | 
			
		||||
    def calc_100mb_height(self, height: float) -> float:
 | 
			
		||||
        return 10.0 * (1000.0 + height)
 | 
			
		||||
 | 
			
		||||
    def parse_height_pressure(self, token: str):
 | 
			
		||||
        code = token[0:2]
 | 
			
		||||
| 
						 | 
				
			
			@ -160,10 +154,8 @@ class RAOBObs():
 | 
			
		|||
            return None
 | 
			
		||||
        elif pressure == 1000:
 | 
			
		||||
            height = self.calc_1000mb_height(float(num))
 | 
			
		||||
        elif pressure <= 850 and pressure > 700:
 | 
			
		||||
        elif pressure <= 850 and pressure > 500:
 | 
			
		||||
            height = self.calc_850mb_height(float(num))
 | 
			
		||||
        elif pressure <= 700 and pressure > 500:
 | 
			
		||||
            height = self.calc_700mb_height(float(num))
 | 
			
		||||
        elif pressure <= 500 and pressure > 250:
 | 
			
		||||
            height = self.calc_500mb_height(float(num))
 | 
			
		||||
        elif pressure <= 250 and pressure > 100:
 | 
			
		||||
| 
						 | 
				
			
			@ -262,12 +254,6 @@ class RAOBObs():
 | 
			
		|||
            if len(self.tokens) < i+3 or self.tokens[i][-1] == '=':
 | 
			
		||||
                break
 | 
			
		||||
 | 
			
		||||
            #
 | 
			
		||||
            # Stop parsing tokens at the tropopause.
 | 
			
		||||
            #
 | 
			
		||||
            if self.tokens[i][0:2] == '88':
 | 
			
		||||
                break
 | 
			
		||||
 | 
			
		||||
            sample = self.parse_sample_tokens(self.tokens[i:i+3])
 | 
			
		||||
 | 
			
		||||
            if sample is None:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		
		Reference in a new issue