Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Swiss Camp snow height adjustments #106

Open
jasonebox opened this issue Jan 15, 2023 · 1 comment
Open

Swiss Camp snow height adjustments #106

jasonebox opened this issue Jan 15, 2023 · 1 comment

Comments

@jasonebox
Copy link

It's a mess and like other sites, I think we'll get a better result if working from L0. That of course will be a lot of work. But in that effort, we can eliminate some of the noise that comes from sonic signal reflection from drift snow layer. So, I'll post that as a separate issue.

 if nicknames[0]=='SWC':
        t=datetime(1996, 1, 11)
        df['HS2'][t:]+=0.125
        t=datetime(1999, 1, 11)
        df['HS2'][t:]+=0.62
        t=datetime(2000, 12, 31,8)
        value=-0.75
        df['HS1'][t:]+=value
        df['HS2'][t:]+=value
        t=datetime(2001, 5, 12)
        value=-0.33
        df['HS1'][t:]+=value
        df['HS2'][t:]+=value
        t=datetime(2002, 1, 25)
        df['HS1'][t:]+=1.48
        df['HS2'][t:]+=0.35
        t0=datetime(2001, 10, 1) # filter upward spikes
        t1=datetime(2002, 4, 28)
        df['HS1'][t0:t1][df['HS1'][t0:t1]>0]=np.nan
        df['HS2'][t0:t1][df['HS2'][t0:t1]>0]=np.nan
        t0=datetime(2002, 1, 1) # filter upward spikes
        t1=datetime(2002, 2, 28)
        df['HS1'][t0:t1][df['HS1'][t0:t1]>-0.1]=np.nan
        df['HS2'][t0:t1][df['HS2'][t0:t1]>-0.1]=np.nan
        t0=datetime(2003, 1, 19) # filter short term downward shift
        t1=datetime(2003, 1, 24)
        df['HS1'][t0:t1]+=0.59
        t=datetime(2002, 11, 14) # remove strange shift
        df['HS1'][t:]-=0.12
        t=datetime(2003, 1, 25) # remove strange shift
        df['HS1'][t:]-=0.2
        t=datetime(2003, 4, 26) # remove strange shift
        df['HS1'][t:]+=0.17
        df['HS2'][t:]-=0.25
        t0=datetime(2003, 4, 24) # filter downward spikes
        t1=datetime(2003, 4, 28) 
        df['HS1'][t0:t1][df['HS1'][t0:t1]<-1.35]=np.nan
        df['HS2'][t0:t1][df['HS2'][t0:t1]<-1.45]=np.nan
        t=datetime(2004, 1, 21) 
        df['HS2'][t:]+=0.39
        t0=datetime(2008, 10, 30) # filter short term downward shift
        t1=datetime(2008, 12, 31)
        df['HS2'][t0:t1]-=0.5
        t=datetime(2009, 1, 1) 
        df['HS2'][t:]+=0.18
        t=datetime(2009, 5, 1) 
        df['HS1'][t:]-=0.5
        df['HS2'][t:]+=0.3
        t=datetime(2009, 5, 8) 
        df['HS1'][t:]+=0.6
        t0=datetime(2009, 1, 1) # filter downward spikes
        t1=datetime(2009, 6, 1)
        df['HS1'][t0:t1][df['HS1'][t0:t1]<-0.1]=np.nan
        t0=datetime(2009, 1, 1) # filter upward spikes
        t1=datetime(2009, 6, 1)
        df['HS1'][t0:t1][df['HS1'][t0:t1]>0.5]=np.nan 
        t0=datetime(2009, 10, 1) # filter upward spikes
        t1=datetime(2010, 1, 1)
        df['HS1'][t0:t1][df['HS1'][t0:t1]>0.5]=np.nan 
        t0=datetime(2011, 2, 18) # filter short term downward shift
        t1=datetime(2011, 5, 13)
        df['HS2'][t0:t1]-=2.95
        t=datetime(2011, 2, 18)
        value=-0.95
        df['HS1'][t:]+=value
        df['HS2'][t:]+=value
        t0=datetime(2011, 7, 25) # filter bad few data across large gap
        t1=datetime(2012, 5, 20)
        df['HS1'][t0:t1]=np.nan 
        t=datetime(2012, 5, 1) # reset hS 1,2
        value=-0.95
        df['HS1'][t:]+=value
        df['HS2'][t:]+=value
        t=datetime(2012, 5, 1) # reset hS 1,2
        df['HS1'][t:]+=0.2
        t=datetime(2014, 5, 10) # reset hS 1,2
        value=-0.4
        df['HS1'][t:]+=value
        df['HS2'][t:]+=value
        t0=datetime(2014, 5, 11) # filter short term shift
        t1=datetime(2014, 6, 1)
        df['HS1'][t0:t1]+=0.15
        t0=datetime(2013, 10, 1) # filter upward spikes
        t1=datetime(2014, 7, 1)
        df['HS1'][t0:t1][df['HS1'][t0:t1]>-2.35]=np.nan 
        df['HS2'][t0:t1][df['HS2'][t0:t1]>-2.35]=np.nan 
        t0=datetime(2017, 4, 1) # filter upward spikes
        t1=datetime(2017, 9, 1)
        df['HS1'][t0:t1][df['HS1'][t0:t1]>-2.9]=np.nan 
        t0=datetime(2019, 4, 1) # filter upward spikes
        t1=datetime(2019, 7, 1)
        df['HS2'][t0:t1][df['HS2'][t0:t1]>-2.5]=np.nan 

before
image

after
image

@BaptisteVandecrux
Copy link
Member

Partially solved in the last commit. Leaving open because field notes can help to constrain more annual ablation values.
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants