Principal Structures
In the iscloc program variables are passed
between functions using structures or arrays of structures. There are
5 structures used and these are defined in iscloc.h and the members are
listed here:
phase
amplitude
event
hypocentre
solution
phase
- hypid - numerical ID of hypocentre that reporter associated this phase with.
- phid - numerical ID of phase.
- rdid - numerical ID of reading.
- pref_rd
- preferred reading ID.
- init
- flag set to 1 if this phases is the initial phase in its reading.
- rep_phase
- code for phase assigned by the reporter.
- phase
- internal phase code.
- net - network code of station.
- sta - station code.
- sta_lat
- latitude of station (degrees).
- sta_lon
- longitude of station (degrees).
- sta_elev
- elevation of station (m).
- dircos
- array of direction cosines giving station location.
- time
- arrival time of phase (seconds since epoch).
- slow - slowness at station measured for phase (seconds/degree).
- azim - azimuth at station measured for phase (degrees).
- esaz
- azimuth between current solution and station (degrees).
- delta
- distance between station and current solution (degrees).
- numamps
- number of amplitudes measured for this phase and stored in the array a.
- a
- array of structures containing amplitude information.
- comp - seismometer component that this phase was picked on.
- sp_fm - short period first motion.
- detchar - [i]mpulsive or [e]mergent
- weight
- phase weight.
- weight_factor
- 1 for fully weighted phase. 0 for unwanted phase.
- purged
- flag set to 1 for phase to be excluded from subsequent iterations.
- duplicate
- flag set to 1 for all but one of a set of exact duplicates.
- ttime
- travel time (seconds).
- dtdd
- derivative of time with delta (seconds/degree).
- dtdh
- derivative of time with depth (seconds/km).
- resid
- residual (seconds).
- pP_weight
- depth phase weight.
- pP_resid
- depth phase residual (seconds).
- pP_dtdh
- depth phase derivative of time with depth (seconds/km).
- pP_P_time
- time between P and pP arrivals (seconds)
- bodymag
- station body wave magnitude calculated using this phase.
- surfmag
- station surface wave magnitude calculated using this phase.
amplitude
- amp
- amplitude in nm.
- per
- period in seconds.
- logat
- log10 of of amplitude divided by period if this is the value reported.
- comp
- component that amplitude was measured on.
event
- evid
- numerical ID of event.
- prime - hypid of prime hypocentre for this event in the ISC database.
- isc_hypid - hypid of the ISC hypocentre for this event.
- etype
- event type.
- numhyps - number of hypocentres in this event.
- numphas - number of phases associated with hypocentres in this event.
- seed_agency
- instruction to use this agency's hypocentre as the first starting point.
- depth_agency
- instruction to fix solution depth to that of this agency's hypocentre.
- location_agency
- instruction to fix solution latitude and longitude to that of this agency's hypocentre.
- time_agency
- instruction to fix solution time to that of this agency's hypocentre.
- fixed_depth
- value of depth that solution will be fixed to.
- fixed_lat
- value of latitude that solution will be fixed to.
- fixed_lon
- value of longitude that solution will be fixed to.
- fixed_time
- value of time that solution will be fixed to.
- reid_phase
- instruction to reidentify phases that don't fit the model being used. Defaults to 1 or on.
- purge_phase
- instruction to purge phases that have large residuals after a first convergence. Defaults to 1 or on.
- fix_on_depdp
- instruction to calculate a depth phase depth for each seed hypocentre and then fix on it. Defaults to 0 or off.
hypocentre
- hypid - numerical ID of hypocentre.
- time - source time (seconds since epoch).
- lat - source latitude (degrees).
- lon - source longitude (degrees).
- dircos - array of direction cosines giving source location.
- depth - depth of source (km).
- nsta
- number of stations with associated phases.
- ndefsta
- number of stations with defining phases.
- nass
- number of associated phases.
- ndef
- number of defining phases.
- mindist
- distance to closest station (degrees).
- maxdist - distance to furthest station (degrees). Not used or effected
by program - just input and output as part of this hypocentre.
- azimgap
- maximum azimuthal gap between stations (degrees).
- etype - reported event type.
- agency - code of agency that reported this hypocentre.
- sdobs - reported measure of misfit. Not used or effected by program - just input and output as part of this hypocentre.
- stime - reported error in source time. Not used or effected by program - just input and output as part of this hypocentre.
- sdepth - reported error in source depth. Not used or effected
by program - just input and output as part of this hypocentre.
- minax - reported minor axis of error ellipse. Not used or effected
by program - just input and output as part of this hypocentre.
- majax - reported major axis of error ellipse. Not used or effected
by program - just input and output as part of this hypocentre.
- theta - reported azimuth of error ellipse. Not used or effected
by program - just input and output as part of this hypocentre.
- depfix - depth fixed flag. Not used or effected by program - just input and output as part of this hypocentre.
- epifix - epicentre fixed flag. Not used or effected by program - just input and output as part of this hypocentre.
- timfix - time fixed flag. Not used or effected by program - just input and output as part of this hypocentre.
- rank
- number indicating suitability of hypocentre to act as starting point for
solution. Higher ranked hypocentres get used as seeds first.
solution
- iteration
- number of current iteration.
- converged
- 0/1. 1 if solution has converged.
- diverging
- 0/1. 1 if solution is diverging.
- number_of_unknowns
- number of unknowns for the current option.
- weighting_type
- weighting function in use.
- numphas - number of phases associated with this solution.
- phases_purged
- 0/1. 1 if phase purging has already been done or is not required at all.
- hypid - numerical ID assigned to the final solution before it is output.
- time
- source time (seconds since epoch).
- lat
- source latitude (degrees).
- lon
- source longitude (degrees).
- dircos
- array of direction cosines giving source location.
- depth
- depth of source (km).
- depdp
- depth phase depth (km).
- depdp_error
- standard error in depth phase depth (km).
- alpha
- measure of average weighted residual
- prev_alpha
- alpha from previous iteration.
- sigma
- measure of deviation of weighted residuals.
- prev_sigma
- sigma from previous iteration.
- covar
- covariance matrix for solution.
- error
- array of standard errors for solution.
- majax
- major axis of error ellipse (km).
- minax
- minor axis of error ellipse (km).
- theta
- azimuth of error ellipse.
- sdobs
- measure of standard deviation of weighted residuals.
- mindist
- distance to closest station (degrees).
- maxdist
- distance to furthest station (degrees).
- azimgap
- maximum azimuthal gap between stations (degrees).
- nsta
- number of stations with associated phases.
- ndefsta
- number of stations with defining phases.
- nass
- number of associated phases.
- ndef
- number of defining phases.
- bodymag
- network body wave magnitude.
- surfmag
- network surface wave magnitude.
- nsta_mb
- number of stations contributing to body wave magnitude.
- nsta_ms
- number of stations contributing to surface wave magnitude.
- mb_id
- numerical ID for body wave magnitude, assigned for writing to database.
- ms_id
- numerical ID for surface wave magnitude, assigned for writing to database.