Jiggle Magnitude Properties To jiggle.props info
To Jiggle install
To magnitude engine properties
--- Magnitude Methods and Database Views ---

NOTE: In the database schema the JASI_CONFIG_VIEW typically joins the Applications and AppChannels tables. The Applications's table PROGID numeric key is mapped to a string "name", and this name must match either the method's internal name (in table below) or the string specified by the method's "appChannelsName=name" property.

Type Java Class Name Name
Md org.trinet.jasi.magmethods.TN.HypoinvMdMagMethod HypoinvMd
Md org.trinet.jasi.magmethods.TN.LeeMdMagMethod LeeMd
Ml org.trinet.jasi.magmethods.TN.MlMagMethod RichterMl
Ml org.trinet.jasi.magmethods.TN.CISNmlMagMethod2 CISNml2
Ml org.trinet.jasi.magmethods.TN.HirooMlMagMethod HirooMl
Ml org.trinet.jasi.magmethods.TN.NoCalRediMlMagMethod NoCalRediMl
Ml org.trinet.jasi.magmethods.TN.SoCalMlMagMethod SoCalMl

The name's associated PROGID is mapped to the set of channels acceptable for processing by the magnitude method in the view. If the view has no rows mapped to the method, or the view's lookup is disabled by setting the method's property disableAppchannelsMap=true, then the channels accepted for magnitude calculations are those that match any "seedchan" template specified by the method's acceptChan property; however when this property is undefined and the view lookup has been disabled, then any channel is acceptable for a channel magnitude calculation.
For a channel's magnitude to contribute to the summary magnitude statistic, the channel's AppChannels table row for a Md method should have its CONFIG column value set to '1', and for a Ml method its CONFIG value is set to '1' for HH_ or EH_ seedchan types (high-gain), and set to '2' for HN_, HL_, or HG_ types (low-gain). Setting a row's CONFIG column value to either NULL or '0' will still allow a channel to be accepted for a channel magnitude calculation, however, it will not contribute to the summary magnitude if there are any other rows associated with the method name with a CONFIG value of '1' or '2'. If all CONFIG values are set to '0' or NULL, then if the summaryChan property declares seedchan types, only those types are accepted for the summary magnitude calculation, however, if this property is undefined or "" then all accepted channel magnitudes are used for the summary magnitude statistic (for example, see CISNml2 example below).


--- Generic Magnitude Method Properties for all Ml and Md Subtypes ---

Property Name Description Value
appChannelsName in lieu of method name use this name to associate with channels in JASI_CONFIG_VIEW
see above NOTE.
myName (when property is absent, default is method's internal name)
acceptChan list of seedchan codes acceptable for a channel magnitude calculation
when no channels are associated in JASI_CONFIG_VIEW
see above NOTE.
EHZ SHZ ELZ EHE EHN HHZ
channelDbLookUp repeatedly query db for missing data (lat,lon,correction) else use existing data, ignore missing true (default)
deleteByDistanceTrim channel magnitudes at ranges exceeding cutoff distance are not saved with summary magnitude. false (default)
deleteByResidualTrim channel magnitudes with residuals exceeding trimResidual are not saved with summary magnitude. false (default)
disableAppChannelsMap Disable using JASI_CONFIG_VIEW to obtain list of the acceptable channels.
Instead use seedchan templates defined by the acceptChan, summaryChan properties.
see above NOTE.
false (default)
filterChan list of seedchan codes to apply waveform conditioning filter before channel mag calc scan HHZ (Md default)
filterCopiesWf apply filter to a copy of the loaded timeseries (for Jiggle viewer set true) true (default)
globalMagCorr magnitude correction to apply to all components 0. (default)
includedReadingTypes Amp/Coda type descriptor (methods hard-wired, coda method does allows adding type here) Pd (Md default) WA WAU WAC WAS(Ml)
maxChannels if specified, maximum number of channel magnitudes to calculate (in distance sorted order) 999999 (default)
maxDistance skip calculation for channels at distances > this km 600. (default 600., method implementation magnitude scaled for some)
minDistance always channel magnitudes at distances > this km 20. (Ml default, mag method implementation specific)
minValidReadings minimum non-zero wt channel magnitudes to require for statistical summary mag 1 (default)
requireCorrection require a site magnitude correction from database to use channelmag in summary statistics false (default)
summaryChan list of seedchan codes to accept for a summary magnitude calculation EHZ (Md default)
summaryMagValueStatType Type of summary magnitude statistic returned mean (mean, average, median (default), wmedian (weightedmedian))
scanEnergyWindow start waveform scan at the predicted traveltime vs. first sample time true (default), always true for Md
sumMagStatTrim chauvenetTrim channel magnitude outliers from summary stats true (default)
trimResidual reject channel magnitude with residual > value from summary mag statistic. 1. (default)
useAssignedWts use existing Coda, Amp, quality values, else false, all weights 1. into summary calc true (default)

--- Extra HirooMl Magnitude Method Properties ---

minSNR minimum SNR to accept for an peak amplitude magnitude 8.(default)
cutoffDistIntercept reject channel from summary statistic when its distance > slope*MLsummary - intercept -205. (default)
cutoffDistSlope reject channel from summary statistic when its distance > slope*MLsummary - intercept 170. (default)
disableMagnitudeDistanceCutoff if true, don't reject channels by distance/magnitude relation false (default)
hiroo.A0.c c in Ml distance correction formula:
-log(c)+log(r**n)+log(e**(k*r))
0.3173 (default)
hiroo.A0.k k in Ml distance correction formula:
-log(c)+log(r**n)+log(e**(k*r))
-0.00505 (default)
hiroo.A0.n n in Ml distance correction formula:
-log(c)+log(r**n)+log(e**(k*r))
-1.14 (default)

--- Added Md Magnitude Method Properties ---

codaBiasLTASecs secs used to calculate bias as well as the starting and ending lta. 10. (default)
codaGeneratorParmsType parameter values to use for waveform coda scanning algorithm NC (CI default)
codaGeneratorType only CI or NC are accepted values here NC (CI default)
codaPrePTimeBiasOffsetSecs secs to shift end of noise bias window (demean) from the predicted time of P arrival energy 2. (default)
codaStartOffsetSecs if >0. seconds to add to velocity model S time for start of coda windowing 1. (default, if 0 then use secs = 1.1 * SmP )
disableMagnitudeDistanceCutoff if true, don't reject channels by distance/magnitude relation false (default)
filter filter waveforms of type in filterChan list (Butterworth) true (default)
filterCornerHighFreq high cut Hz for Butterworth bandpass type only (default not defined)
filterCornerLowFreq low cut Hz of Butterworth high-pass or bandpass types) true (default)
filterOrder order of Butterworth filter 4 (default)
filterReversed run filter over timeseries both forward and backwards true (default)
filterType Butterworth filter type HIGHPASS or BANDPASS HIGHPASS (default)
logCodaCalc print details of each channel waveform coda windowing fit false (default)
maxGoodWindowsToTerminateCoda terminate scan at specified good window count when no end of coda by cutoff 60 (CI default) 23 (NC default)
minGoodWindowsToTerminateCoda scan terminates upon clipping, if resetOnClipping=true and min not reached, reset start and continue scan 2 (default)
minSNRatioCodaCutoff coda scan ended if signal below estimated background noise threshold 1.0 (default)
minSNRatioForCodaStart min threshold to accept for the first valid window at the start of coda scan 1.0 (default)
passThruNSRatio maximum of current/last (avg abs amp window values) allowed for coda scan to continue 1.8 (default)
resetOnClipping if true, restarts coda windowing past the clipped window false (default)
scanAllWaveformsForMag scan all waveforms or only those associated with arrivals false (Md default, only picked) true (Ml default)
useZeroQualityPick Scan waveforms having 4 weight, 0 quality picks for coda duration true (default)
velocityModelClassName name of velocity model java class
NOTE:Applications using multiple properties files
should declare velocity model properties only in one
(e.g. only in jiggle.props)
org.trinet.util.velocitymodels.USGS_NC_VelocityModel (optional)
velocityModel.DEFAULT.modelName Name of velocity model to use if model list has more than one model. abc123 (optional, see NOTE)
velocityModel.abc123.psRatio Vp/Vs ratio of velocity model. 1.75 (optional, see NOTE)
velocityModel.abc123.depths List top of model layer depths. 0. 5. 15. 30. (optional, see NOTE)
velocityModel.abc123.velocities List of model layer velocities. 4.0 6.0 6.5 7.9 (optional, see NOTE)
velocityModelList List defined velocity model names. abc123 nocal (optional, see NOTE)
waveformLoadWaitMillis if waveforms loaded in separate thread, loop wait time to recheck load status 2000 (default)
maxLoadingWaits if waveforms loaded in separate thread, maximum number of rechecks for waveform load 15 (default)
waveformCacheSize number of waveforms to load in separate thread 100 (default, set size < 2 to disable separate thread loading)

--- Added HypoinvMd Magnitude Method Properties ---

fmagDistZParms see hypoinverse doc for values 0.005 40. 0.0005 350. 0.014 10.
(dcofm1 dbrkm1 dcofm2 dbrkm2 zcofm zbrkm)
fmagDurParms see hypoinverse doc for values -.81 2.22 0. 0.0011 0. 0. 0. 0. 0. 0. 9999.
(fma1 fmb1 fmz1 fmd1 fmf1 fma2 fmb2 fmz2 fmd2 fmf2 fmbrk)
fmagLogA0RelationType see hypoinverse doc EATON (default)

--- Example of a CISNml2 Magnitude Method Properties File ---

#
#                                            mlMagMeth2.props
#
#In database Applications table
#PROGID NAME         
#------ --------
#  9100 CISNml2      
#
#In database AppChannels table, config=1 for (highgain), config=2 for (lowgain) channels mapped to application
#PROGID NET      STA    SEE LO CONFIG ONDATE              OFFDATE            
#------ -------- ------ --- -- ------ ------------------- -------------------
#  9100 AZ       BZN    HGE -- 2      1900-01-01 00:00:00 3000-01-01 00:00:00
#  9100 AZ       BZN    HGN -- 2      1900-01-01 00:00:00 3000-01-01 00:00:00
#  9100 AZ       BZN    HHE -- 1      1900-01-01 00:00:00 3000-01-01 00:00:00
#  9100 AZ       BZN    HHN -- 1      1900-01-01 00:00:00 3000-01-01 00:00:00
#
#Set true to disable use of AppChannels table mapping of magmethod's progid (e.g. 9100)
disableAppChannelsMap = false
#
#When disableAppChannelsMap=true, use acceptChan seedchan as declared below for channel mag calc
acceptChan=HHE HHN HLN HLE HNN HNE HGE HGN
#
#When disableAppChannelsMap=true, use summaryChan seedchan declared below for summary mag calc
#to be used the seedchan template listed  must be a subset of acceptChan list template
#both HH and HL are used if included (unlike map option, where HL is culled when site HH is present)
summaryChan=HHE HHN HLN HLE HNN HNE HGE HGN
#
#Type of Butterworth secondary filter to apply to filter microseisms from low amp signals
bwFilterType=BANDPASS
#
#Set bwFilterOrder =0 to skip secondary BW bandpass filtering
bwFilterOrder=6
bwFilterLoFreq=0.5
bwFilterHiFreq=20.0
#When below true, bwFilterHiFreq reduced by distance =1./max(minPeriod, 0.05*exp(.0015*slantDist))
bwFilterScalePassBandByDistance=true
#Do not apply secondary filter if channel mag > bwMicroseismMaxMag
bwMicroseismMaxMag=4.5
#apply secondary filter if WAS amp < bwMicroseismMinAmp cm
bwMicroseismMinAmp=0.025
#
#WAS amp rejected or its derivation from waveform skipped when channel distance exceeds cutoff km
#Used to be if (magValue <= 2.0) max(minDistance(), (66.0*magValue - 2.0))
#else (magValue > 2.) cutoffKm = max(minDistance(), (cutoffDistSlope * magValue) - cutoffDistIntercept)
#cutoffDistIntercept=270.0
#cutoffDistSlope=200.0
#Now code states:
#Pivot at ML=2 (600+200)/200=4.0 (600+174/182)=4.25 (600+222/191)=4.3 (600+270)/200=4.35 (600+205)/170=4.74
# if (magValue <= cutoffPivotMag) {
#  cutoffKm = max(minDistance, ((cutoffPivotMagKm-cutoffMag0Km)*magValue/cutoffPivotMag + cutoffMag0Km))
# }
# else {
#  cutoffDistSlope = (cutoffMaxMagKm-cutoffPivotMagKm)/(cutoffMaxMag-cutoffPivotMag) 
#  cutoffDistIntercept = cutoffPivotMagKm - (cutoffDistSlope * cutoffPivotMag) 
#  cutoffKm = max(minDistance, (cutoffDistSlope * magValue + cutoffDistIntercept))
# }
cutoffMag0Km=-2
cutoffPivotMag=2
cutoffPivotMagKm=130
cutoffMaxMag=4.35
cutoffMaxMagKm=600
#
#deleteInvalid WAS amp failing clipping, SNR, or period tests not saved to db 
deleteInvalid=true
#delete all rejected WAS for any reason (eg. seedchan type, no correction) not saved to db
deleteRejected=false
#deleteByDistanceTrim WAS amp exceeding maxDistance not saved to db
deleteByDistanceTrim=false
#deleteByResidualTrim WAS amp exceeding trimResidual not saved to db
deleteByResidualTrim=false
#
#disableMagnitudeDistanceCutoff distance rejection not scaled by event magnitude
disableMagnitudeDistanceCutoff=false
#filterCopiesWf true for jiggle, for hypomag false
filterCopiesWf=true
#globalMagCorr not used in Ml
globalMagCorr=0.0
#acceptable WA amp types for Ml
includedReadingTypes=WAS WASF WA WAU WAC 
#
#default HH WAS clipping amp cm, amp > maxVelAmp reject/delete
maxVelAmp=100.0
#default HH noise floor cm, amp < minAccAmp reject/delete 
minVelAmp=0.0010
#default HL WAS clipping amp cm, amp > maxAccAmp reject/delete
maxAccAmp=12000.0
#default HL noise floor cm, amp < minAccAmp reject/delete 
minAccAmp=0.0010
#
#WAS amp slantDist > maxDistance reject/delete 
#Note: a0(r) calibrated only r=500 im, so maxDistance=500 is set in code
#set method delete options to not delete distance trimmed/rejected amps
#to enable saving amps with slantDist > 500 for future A0 calibration
maxDistance=600.0
#
#WAS amp period < minPeriod always reject/delete 
minPeriod=0.040
#WAS amp period > maxPeriod always reject/delete
maxPeriod=5.0
#coefs for WAS period rejection scaled by distance
#do secondary microseism filter if WAS per > maxPeriodC1*exp(maxPeriodC2*wfSlantDist)
#if filtered WAS period > maxPeriodC1*exp(maxPeriodC2*slantDist) reject from summary
maxPeriodC1=0.70
maxPeriodC2=0.0022
#coefs for WAS period rejection scaled by distance, reject per < minPeriodC1*exp(minPeriodC2*slantDist)
minPeriodC1=0.040
minPeriodC2=0.0050
#
#When screening by distance(magnitude), don't reject WAS amp slantDist < minDistance
minDistance=20.0
#
#min SNR=(peakAmp/avgPreEventNoisePeak) acceptable for a channel mag calc
#where minSNR  < = minSummarySNR
minSNR=3.0
#
#min WAS SNR=(peakAmp/avgPreEventNoisePeak) acceptable for event summary mag calc
#where minSummarySNR  >= minSNR
minSummarySNR=5.0
#
#min valid readings needed for event summary mag calculation (channel mag count)
minValidReadings=5
#
#reject/delete WAS whose channel mag resid > trimResidual
trimResidual=1.0
#useAssignedWts=true,WAS amp inWgt = ampQuality*ml_magparms_view.summary_wgt,  else inWgt=1.
useAssignedWts=true
#simple_response gain required for calculation
requireGain=false
#filterChan not used for Ml only Md 
filterChan=
#maxChannels to use for event summary mag
maxChannels=999999
#lookup any missing channel metadata (corrections etc.) in db
channelDbLookUp=true
#use default value 0.5
chauvenetTrimValue=0.5
#require channel magcorr for summary mag calculation, set false if network has no corrections
requireCorrection=true
#scanAllWaveformsForMag=true always true for Ml, usually false for Md (only picked)
scanAllWaveformsForMag=true
#Don't scan entire trace for peak amplitude, only predicted energy window
scanEnergyWindow=true
#reject/delete WAS amp using summary magnitude statistics (ie. Chauvenet)
sumMagStatTrim=true
#velocity model used for determining energy window
velocityModelClassName=org.trinet.util.velocitymodel.HK_SoCalVelocityModel
#
#output for debugging 
debug=false
#detailed output of calculations
verbose=true

-- Magnitude Engine Properties --

channelDbLookUp query db for missing channel lat,lon, or correction data true (default)
logMagResiduals logs details of channel magnitude residuals false (default)
makePreferredMag make calculated summary magnitude the event preferred true (default)
addMagToMagList add new summary magnitude to solution's magnitude list false (default false except for event preferred)
recalcChanMagsForSumMag recalculate channel magnitudes (default) or use values as is, for summary mag calc true (default)
useExistingData use existing magnitude associated readings loaded from db rather than create new ones from a waveform scan. false (default)
defaultChannelListComponents create new cached channel list derived from db query for listed components (property not used)

-- Magnitude Engine Properties Available for Batch Applications (not for Jiggle, see jiggle.props) --

magMethod name of magnitude method Java Class used by engine org.trinet.jasi.magmethods.myMagMethod
magMethodProp default property filename for the magnitude method class myMagMethod.props (default, use engine properties)

To jiggle.props information
To Jiggle install
To top of page