seasonalnonoverlapDSfreq_a2
type: Argument
arg order: 2
is argument of: flexseasonalnonoverlapDSfreq
optional: false
arg name: monrange
argument type: string
in out: in
arg desc: Seasonal range of interest specified by three-letter month abbreviations separated by a dash

flexseasonalnonoverlapDSfreq
type: Ingrid Procedure
has argument: seasonalnonoverlapDSfreq_a2
func name: flexseasonalnonoverlapDSfreq
has argument: seasonalnonoverlapDSfreq_a1
func desc: Generates multiple-year time series of the frequency of non-overlapping dry spells of a user-selected length for user-selected seasons specified with flexible dates (e.g., (12 Jan - 15 May)), based upon a daily dry day threshold
ingrid code: 5 /flexseasonalnonoverlapDSfreq publicproc: {mystream daterange dslength thold minfrac}inputs mystream a: T daterange minfrac seasonalAverage 0 flagge :a: -999 replaceNaN 0 thold flagrange [T]integral dup T dslength shiftGRID [T]regridLB sub dslength flagge [T]differences 1 flagge T :a: T daterange 0 6 getinterval VALUES T dslength 1 sub shiftGRIDT first cvsunits 0 6 getinterval ( - ) daterange 8 16 getinterval 3 array astore concat nip seasonalAverage T differential_mul T 2 indexT replaceGRID :a mul :publicproc nip
is described by: statistical functions
has argument: seasonalnonoverlapDSfreq_a5
has argument: seasonalnonoverlapDSfreq_a4
has argument: seasonalnonoverlapDSfreq_a3
is described by: Tailored Climate Functions
syntax ex: Description flexseasonalnonoverlapDSfreq accepts an input stream of daily precipitation values, a parameter that designates the fraction of daily values per season that must be non-missing for a season to be considered non-missing, and a date range that designates a season in the format (dd mmm - dd mmm), where dd is day of month and mmm is the month abbreviation and spaces exist before and after the dash ( - ) to define the season of interest, and calculates for each season the frequency of non-overlapping dry spells that are at least as long as a user-determined length, with a user-determined threshold for designating individual dry days. For this function, once a dry spell has been found, no more dry spells are counted until after the next wet day, no matter how long the dry spell may be. For a value to be calculated for a season, the season must have at least "minfrac" fraction (a value between 0. and 1.) of non-missing daily values. Dry spells overlapping with the edges of the season are counted only if a part at least as long as the user-determined length is included in said season. Example SOURCES FUNCEMENordestedailystationPCPN (14 Jan - 20 May) 5 0 0.92 flexseasonalnonoverlapDSfreq This example calculates the number of non-overlapping dry spells of at least five days in length, between January 14 and May 20 of each year, with dry days designated as those that receive 0 mm/day, from the FUNCEME daily precipitation data set. For a value to be calculated for each season, the season must have at least 92% non-missing daily values. Live Example Link

seasonalnonoverlapDSfreq_a1
type: Argument
argument type: dataset or variable
arg desc: Input daily precipitation time series
arg name: prcpvar
optional: false
arg order: 1
in out: in
is argument of: flexseasonalnonoverlapDSfreq

flexseasonalfreqGT
type: Ingrid Procedure
has argument: seasonalfreqGT_a4
ingrid code: 4 /flexseasonalfreqGT publicproc: {mystream daterange thold minfrac}inputs mystream thold flaggt T daterange minfrac seasonalAverage T differential_mul :publicproc nip
has argument: seasonalfreqGT_a1
syntax ex: Description flexseasonalfreqGT accepts an input stream of daily temperature or precipitation values, a date range that designates a season in the format (dd mmm - dd mmm), where dd is day of month and mmm is the month abbreviation and spaces exist before and after the dash ( - ), a parameter that designates the fraction of daily values per season that must be non-missing for a season to be considered non-missing, and a daily threshold value, and calculates the frequency of days with values greater than the threshold for each year in the user-selected series. For a value to be calculated for a season, the season has to have at least "minfrac" fraction (a value between 0. and 1.) of daily values that are non-missing. Examples SOURCESFUNCEMENordestedailystationPCPN (19 Jan - 5 May) 6 0.92 flexseasonalfreqGT This example calculates the number of days in every 19 Jan - 5 May season in which daily precipitation totals from the FUNCEME data set are greater than 6 mm/day. For a value to be calculated for any given season, the season must be composed of 92% non-missing values.
has argument: seasonalfreqGT_a5
is described by: statistical functions
func name: flexseasonalfreqGT
func desc: Calculates the frequency of daily values greater than a user-defined threshold for a user-defined season specified with flexible dates (e.g., (12 Jan - 15 May))
has argument: seasonalfreqGT_a2
is described by: Tailored Climate Functions
has argument: seasonalfreqGT_a3

seasonalfreqGT_a4
type: Argument
argument type: number
in out: in
arg order: 4
arg name: minfrac
optional: false
arg desc: Minimum fraction of non-missing daily values that must exist in each month of the chosen season for the function to return a non-missing value for that season
is argument of: flexseasonalfreqGT

seasonalfreqGT_a1
type: Argument
optional: false
arg desc: Input variable of daily values
in out: in
arg order: 1
argument type: dataset or variable
arg name: var
is argument of: flexseasonalfreqGT

seasonalfreqGT_a5
type: Argument
arg order: 5
is argument of: flexseasonalfreqGT
optional: false
arg name: freq
argument type: variable or constant
in out: out
arg desc: Count of daily values per season that exceed a user-defined threshold

seasonalfreqGT_a2
type: Argument
in out: in
arg order: 2
is argument of: flexseasonalfreqGT
arg name: season
argument type: string
optional: false
arg desc: Seasonal range of interest specified by three-letter month abbreviations separated by a dash

Tailored Climate Functions
type: Keyword
describes: flexseasonalfreqGT
describes: flexseasonalnonoverlapDSfreq
describes: flexseasonalfreqLT
describes: flexseastotAvgFill
describes: flexseasonalmeandailyvalueGT
describes: seastotZeroFill
describes: flexseasonalnonoverlapWSfreq

flexseasonalfreqLT
type: Ingrid Procedure
ingrid code: 4 /flexseasonalfreqLT publicproc: {mystream daterange thold minfrac} inputs mystream thold flaglt T daterange minfrac seasonalAverage T differential_mul :publicproc nip
has argument: seasonalfreqLT_a5
is described by: Tailored Climate Functions
func desc: Multiple-year time series of the frequency of days with precipitation or temperature less than a user-selected threshold for a selected season.
has argument: seasonalfreqLT_a1
is described by: statistical functions
has argument: seasonalfreqLT_a3
has argument: seasonalfreqLT_a2
has argument: seasonalfreqLT_a4
func name: flexseasonalfreqLT
syntax ex: Description flexseasonalfreqLT accepts an input stream of daily temperature or precipitation values, a parameter that designates the fraction of daily values per season that must be non-missing, and a daily threshold value, and calculates the frequency of day with values less than the threshold for each year in the user-selected series. For a value to be calculated for a season, the season has to have at least "minfrac" fraction (a value between 0. and 1.) of non-missing daily values. Example SOURCES FUNCEMENordestedailystationPCPN (16 Jan - 5 May) 6 0.92 flexseasonalfreqLT This example calculates the number of days in every 16 Jan - 5 May season in which daily precipitation totals from the FUNCEME data set are less than 6 mm/day. For a value to be calculated for any given season, each season must be composed of 92% non-missing values.

seasonalfreqLT_a5
type: Argument
argument type: variable or constant
arg desc: Count of daily values per season that fall below a user-defined threshold
optional: false
arg order: 5
in out: out
is argument of: flexseasonalfreqLT

seasonalfreqLT_a1
type: Argument
in out: in
arg order: 1
is argument of: flexseasonalfreqLT
argument type: dataset or variable
arg name: var
optional: false
arg desc: Input variable of daily values

seasonalfreqLT_a3
type: Argument
arg desc: Threshold daily value
in out: in
arg name: thold
argument type: number
optional: false
is argument of: flexseasonalfreqLT
arg order: 3

seasonalfreqLT_a2
type: Argument
arg order: 2
in out: in
is argument of: flexseasonalfreqLT
arg name: season
argument type: string
arg desc: Seasonal range of interest specified by three-letter month abbreviations separated by a dash
optional: false

seasonalfreqLT_a4
type: Argument
is argument of: flexseasonalfreqLT
arg order: 4
in out: in
arg desc: Minimum fraction of non-missing daily values that must exist in each month of the chosen season for the function to return a non-missing value for that season
optional: false
arg name: minfrac
argument type: number

flexseastotAvgFill
type: Ingrid Procedure
func desc: Calculates seasonal totals of daily values, assuming missing values have the mean value of the non-missing values
ingrid code: 3 /flexseastotAvgFill publicproc: {mystream daterange minfrac}inputs mystream T daterange minfrac seasonalAverage T differential_mul :publicproc nip
is described by: statistical functions
has argument: seastotAvgFill_a1
syntax ex: Description flexseastotAvgFill accepts as input a stream of daily precipitation values, a date range defining the season of interest, and a parameter that designates the fraction of daily values that must be non-missing, and calculates the seasonal total precipitation for each year in the user-selected series. For a seasonal total to be calculated, the season must have at least "minfrac" fraction (a value between 0. and 1.) of non-missing daily values. Example SOURCES FUNCEMENordestedailystationPCPN (20 Jan - 14 Mar) 0.92 flexseastotAvgFill This example calculates in every 20 Jan - 14 Mar season the total precipitation for each year in the FUNCEME precipitation data set for every such season in which the season has at least 92% non-missing daily values. Live Example Link
func name: flexseastotAvgFill
has argument: seastotAvgFill_a2
has argument: seastotAvgFill_a4
is described by: Tailored Climate Functions
has argument: seastotAvgFill_a3

seastotAvgFill_a1
type: Argument
is argument of: flexseastotAvgFill
in out: in
arg order: 1
optional: false
arg desc: Input variable of daily values to be totalled
arg name: var
argument type: dataset or variable

seastotAvgFill_a2
type: Argument
in out: in
arg order: 2
is argument of: flexseastotAvgFill
optional: false
arg desc: Seasonal range of interest specified by three-letter month abbreviations separated by a dash
arg name: season
argument type: string

seastotAvgFill_a4
type: Argument
argument type: variable or constant
arg name: seastot
optional: false
arg desc: Total of daily values by user-selected season, assigning the missing daily values in a month the average value of the non-missing values in each month
in out: out
arg order: 4
is argument of: flexseastotAvgFill

seastotAvgFill_a3
type: Argument
arg name: minfrac
optional: false
arg desc: Minimum fraction of non-missing daily values that must exist in each month of the chosen season for the function to return a non-missing value for that season
in out: in
arg order: 3
argument type: number
is argument of: flexseastotAvgFill

flexseasonalmeandailyvalueGT
type: Ingrid Procedure
is described by: Tailored Climate Functions
ingrid code: 4 /flexseasonalmeandailyvalueGT publicproc: {mystream daterange thold minfrac}inputs mystream a: T daterange minfrac seasonalAverage 0 flagge :a: thold maskle T daterange 0.0 seasonalAverage :a mul :publicproc nip
has argument: seasonalmeandailyvalueGT_a3
syntax ex: Description flexseasonalmeandailyvalueGT accepts an input stream of daily precipitation or temperature values, a date range that designates a season in the format (dd mmm - dd mmm), where dd is day of month and mmm is the month abbreviation and spaces exist before and after the dash ( - ), a daily temperature or precipitation threshold, and a parameter that designates the fraction of daily values per season that must be non-missing for a season to be considered non-missing, and calculates for each season the mean value of daily values greater than the user-specified value. For a value to be calculated for a season, the season has to have at least "minfrac" fraction (a value between 0. and 1.) of non-missing daily values. Example SOURCES FUNCEMENordestedailystationPCPN STNID 45 VALUE T (Jan 1973) (May 2002) RANGEEDGES (14 Jan - 20 May) 3 0.92 flexseasonalmeandailyvalueGT This example calculates the mean over a season defined from January 14 to May 20 of the daily precipitation values that are greater than 3 mm/day for station 45 in the FUNCEME daily precipitation dataset, between 1973 and 2002. The seasonal mean is calculated only for those seasons in which the season has at least 92% non-missing daily precipitation values. Live Example Link
is described by: statistical functions
has argument: seasonalmeandailyvalueGT_a1
has argument: seasonalmeandailyvalueGT_a4
has argument: seasonalmeandailyvalueGT_a2
func name: flexseasonalmeandailyvalueGT
has argument: seasonalmeandailyvalueGT_a5
func desc: Produces multiple-year time series of the mean value of daily precipitation or temperature values greater than a user-selected threshold for user-selected seasons specified with flexible dates (e.g., (12 Jan - 15 May))

seasonalmeandailyvalueGT_a3
type: Argument
is argument of: flexseasonalmeandailyvalueGT
arg order: 3
arg desc: Threshold daily value
in out: in
argument type: number
optional: false
arg name: thold

seasonalmeandailyvalueGT_a1
type: Argument
arg order: 1
in out: in
is argument of: flexseasonalmeandailyvalueGT
argument type: dataset or variable
arg name: var
optional: false
arg desc: Input variable of daily values

seasonalmeandailyvalueGT_a4
type: Argument
is argument of: flexseasonalmeandailyvalueGT
arg order: 4
in out: in
arg desc: Minimum fraction of non-missing daily values that must exist in each month of the chosen season for the function to return a non-missing value for that season
optional: false
arg name: minfrac
argument type: number

seasonalmeandailyvalueGT_a2
type: Argument
arg name: season
argument type: string
arg desc: Seasonal range of interest specified by three-letter month abbreviations separated by a dash
optional: false
arg order: 2
in out: in
is argument of: flexseasonalmeandailyvalueGT

seasonalmeandailyvalueGT_a5
type: Argument
argument type: variable or constant
in out: out
arg order: 5
optional: false
arg desc: Seasonal mean of daily values that exceed a user-defined threshold
arg name: mean
is argument of: flexseasonalmeandailyvalueGT

seastotZeroFill
type: Ingrid Procedure
has argument: seastotZeroFill_a4
has argument: seastotZeroFill_a1
is described by: statistical functions
has argument: seastotZeroFill_a2
is described by: Tailored Climate Functions
ingrid code: 3 /flexseastotZeroFill publicproc: {mystream daterange minfrac}inputs mystream dup T daterange minfrac seasonalAverage 0 mul exch 0 replaceNaN T daterange 1. seasonalAverage add T differential_mul :publicproc nip
func desc: Generates a multiple-year time series of total precipitation for a user-selected season, assuming missing values have a value of zero
syntax ex: Description flexseastotZeroFill accepts an input stream of daily precipitation values, the start and end dates of the season of interest, and a parameter that designates the fraction of daily values per season that must be non-missing for a season to be considered non-missing, and calculates the seasonal total precipitation for each year in the user-selected series. For a seasonal total to be calculated, the season must have at least "minfrac" fraction (a value between 0. and 1.) of non-missing daily values. When calculating monthly totals, this function assigns a value of zero to the [(1 - minfrac) * n] missing values. Example SOURCES FUNCEMENordestedailystationPCPN (19 Jan - 29 Mar) 0.92 flexseastotZeroFill This example calculates the 19 January - 29 March seasonal total precipitation for each year in the FUNCEME precipitation data set for every season in which the season has at least 92% non-missing daily values. When calculating a seasonal total, the missing values that exist are assigned a value of zero.
has argument: seastotZeroFill_a3
func name: flexseastotZeroFill

seastotZeroFill_a4
type: Argument
optional: false
argument type: variable or constant
arg name: seastot
in out: out
arg desc: Total of daily values by user-selected season, assigning the missing daily values in a month a zero value
arg order: 4
is argument of: seastotZeroFill

seastotZeroFill_a1
type: Argument
arg desc: Input variable of daily values to be totalled
arg name: var
argument type: dataset or variable
is argument of: seastotZeroFill
arg order: 1
in out: in

seastotZeroFill_a2
type: Argument
is argument of: seastotZeroFill
arg order: 2
in out: in
arg desc: Seasonal range of interest specified by three-letter month abbreviations separated by a dash
arg name: season
optional: false
argument type: string

seastotZeroFill_a3
type: Argument
arg name: minfrac
argument type: number
optional: false
arg desc: Minimum fraction of non-missing daily values that must exist in each month of the chosen season for the function to return a non-missing value for that season
in out: in
arg order: 3
is argument of: seastotZeroFill

flexseasonalnonoverlapWSfreq
type: Ingrid Procedure
has argument: seasonalnonoverlapWSfreq a2
func desc: Generates multiple-year time series of the frequency of non-overlapping wet spells of a user-selected length for user-selected seasons specified with flexible dates (e.g., (12 Jan - 15 May)), based upon a daily wet day threshold
has argument: seasonalnonoverlapWSfreq a3
ingrid code: 5 /flexseasonalnonoverlapWSfreq publicproc: {mystream daterange wslength thold minfrac}inputs mystream a: T daterange minfrac seasonalAverage 0 flagge :a: -999 replaceNaN 0 thold flagnotrange [T]integral dup T wslength shiftGRID [T]regridLB sub wslength flagge [T]differences 1 flagge T :a: T daterange 0 6 getinterval VALUES T wslength 1 sub shiftGRIDT first cvsunits 0 6 getinterval ( - ) daterange 8 16 getinterval 3 array astore concat nip seasonalAverage T differential_mul T 2 indexT replaceGRID :a mul :publicproc nip
is described by: statistical functions
has argument: seasonalnonoverlapWSfreq a4
func name: flexseasonalnonoverlapWSfreq
is described by: Tailored Climate Functions
syntax ex: Description flexseasonalnonoverlapWSfreq accepts an input stream of daily precipitation values, a parameter that designates the fraction of daily values that must be non-missing for a season to be considered non-missing, and a date range that designates a season in the format (dd mmm - dd mmm), where dd is day of month and mmm is the month abbreviation and spaces exist before and after the dash ( - ) to define the season of interest, and calculates for each season the frequency of non-overlapping wet spells that are at least as long as a user-determined length, with a user-determined threshold for designating individual wet days. For this function, once a wet spell has been found, no more wet spells are counted until after the next dry day, no matter how long the wet spell may be. For a value to be calculated for a season, the season must have at least "minfrac" fraction (a value between 0. and 1.) of non-missing daily values. Wet spells overlapping with the edges of the season are counted only if a part at least as long as the user-determined length is included in said season. Example SOURCES FUNCEMENordestedailystationPCPN (14 Jan - 20 May) 5 0 0.92 flexseasonalnonoverlapWSfreq This example calculates the number of non-overlapping wet spells of at least five days in length, between January 14 and May 20 of each year, with wet days designated as those that receive more than 0 mm/day, from the FUNCEME daily precipitation data set. For a value to be calculated for each season, the season must have at least 92% non-missing daily values.
has argument: seasonalnonoverlapWSfreq a5
has argument: seasonalnonoverlapWSfreq a1

seasonalnonoverlapWSfreq a2
type: Argument
argument type: string
is argument of: flexseasonalnonoverlapWSfreq
arg order: 2
in out: in
optional: false
arg name: monrange

seasonalnonoverlapWSfreq a3
type: Argument
in out: in
arg order: 3
optional: false
arg desc: Wet spell length to search for, in terms of number of continuous days with precipitation more than thold
is argument of: flexseasonalnonoverlapWSfreq
arg name: wslength
argument type: number

seasonalnonoverlapWSfreq a4
type: Argument
arg desc: Daily precipitation threshold (in units of precipitation units used in input dataset) used to define individual wet days
optional: false
arg name: thold
arg order: 4
in out: in
argument type: number
is argument of: flexseasonalnonoverlapWSfreq

seasonalnonoverlapWSfreq a5
type: Argument
is argument of: flexseasonalnonoverlapWSfreq
arg name: WSfreq
optional: false
argument type: variable or constant
in out: out
arg desc: Number of wet spells per season
arg order: 5

seasonalnonoverlapWSfreq a1
type: Argument
argument type: dataset or variable
arg name: prcpvar
optional: false
arg order: 1
in out: in
is argument of: flexseasonalnonoverlapWSfreq

seasonalfreqGT_a3
type: Argument
in out: in
arg desc: Threshold daily value
arg order: 3
optional: false
arg name: thold
argument type: number
is argument of: flexseasonalfreqGT

seasonalnonoverlapDSfreq_a5
type: Argument
arg desc: Number of dry spells per season
optional: false
argument type: variable or constant
arg name: DSfreq
is argument of: flexseasonalnonoverlapDSfreq
arg order: 5
in out: out

seasonalnonoverlapDSfreq_a4
type: Argument
arg order: 4
in out: in
arg desc: Daily precipitation threshold (in units of precipitation units used in input dataset) used to define individual dry days
optional: false
argument type: number
arg name: thold
is argument of: flexseasonalnonoverlapDSfreq

seasonalnonoverlapDSfreq_a3
type: Argument
argument type: number
is argument of: flexseasonalnonoverlapDSfreq
arg name: dslength
optional: false
arg desc: Dry spell length to search for, in terms of number of continuous days with precipitation less than or equal to thold
in out: in
arg order: 3

flexseasonalfreqGT_a2
type: Argument
arg order: 2
in out: in
arg name: season
optional: false
arg desc: Seasonal range of interest specified in parentheses in the following format: (dd mmm - dd mmm) , where dd is day of month, mmm is the three-letter month abbreviation, and there are spaces on each side of the dash. For example: (15 Jan - 10 May)
argument type: string

flexseasonalfreqGT_a4
type: Argument
in out: in
arg desc: Minimum fraction of non-missing daily values that must exist in a season for the function to return a non-missing value for that season
optional: false
argument type: number
arg name: minfrac
arg order: 4

flexseasonalfreqGT_a1
type: Argument
argument type: dataset or variable
arg name: var
in out: in
arg order: 1
optional: false
arg desc: Input variable of daily values

flexseasonalfreqGT_a3
type: Argument
arg order: 3
in out: in
arg desc: Threshold daily value
optional: false
arg name: thold
argument type: number

flexseasonalfreqGT_a5
type: Argument
in out: out
arg order: 5
argument type: variable or constant
optional: false
arg name: freq