# -*- coding: utf-8 -*-
"""
Created on Mon Feb 11 10:33:18 2019

@author: cpace
"""

import numpy as np

class pnpstdev:
    def __init__(self, a): # a is an object of the pnp class
        self.bestfitlowmatrix = a.getminBestFit(a.data, a.data[:,3].astype(float))
        self.bestfithighmatrix = a.getmaxBestFit(a.data, a.data[:,3].astype(float))
        
        self.upyearminmatrix = a.getminBestFit(a.getupyears(a.data), a.data[:,3].astype(float))
        self.downyearmaxmatrix = a.getmaxBestFit(a.getdownyears(a.data),a.data[:,3].astype(float))
        
        self.bestfitlowdev = np.std(a.data[:,1].astype(float) - self.bestfitlowmatrix)
        self.bestfithighdev = np.std(a.data[:,2].astype(float) - self.bestfithighmatrix)
        
        self.uplowdev = np.std(a.data[:,3].astype(float) - self.upyearminmatrix)
        self.downhighdev = np.std(a.data[:,3].astype(float) - self.downyearmaxmatrix)
        
        self.bestlowplusstd = a.minBestFit + self.bestfitlowdev
        self.besthighminusstd = a.maxBestFit - self.bestfithighdev
        self.downhighminusstd = a.downBestFitHigh - self.downhighdev
        self.uplowplusstd = a.upBestFitLow + self.uplowdev