The stand alone (SeisGram2K) version of SeisGram2K is launched from the command line on a local system. It requires the latest version of Java (http://www.java.com), and that "SeisGram2K<version>.jar" or the path to the SeisGram2K classes is included in the CLASSPATH environment variable or in the "-cp" switch to the "java" command. For more information, consult the Java documentation or the SeisGram2K installation documentation (http://www.alomax.net/seisgram -> Download and Installation).
_______________________
The "applet" (SeisGram2KApp) version of SeisGram2K is launched from an HTML web page in any recent browser that has Java enabled, and requires the latest version of Java (http://www.java.com) on your system. Consult the SeisGram2K installation documentation (http://www.alomax.net/seisgram) for information on installing and configuring SeisGram2KApp on a web server.
_______________________
SeisGram2K is invoked with optional arguments specifying channel files and other program parameters:
Usage: java [-cp <classpath>] net.alomax.seisgram2k.SeisGram2K [-help] [[-<parameter>=<value>]...]
-help prints this usage and argument list
argument pairs (* indicates defaults):
-browser.url=<Default trace browser URL>
-bud.browser.url=<Default BUD directory browser URL>
-bud.browser.open=<Flag", "Open BUD browser at startup (YES | NO*)>
-channel.N=<Data channel N (FileURL[#groupIndex[#inclination[#azimuth]]][[#parameter%value]...])>
-channel.binarytype=<Binary data byte order (BIG_ENDIAN* | SUN_UNIX* | LITTLE_ENDIAN | PC_INTEL)>
-channel.concatenate=<Concantenate channel on read (YES | NO*)>
-channel.dump.coordinates=,Dump coordinates in NonLinLoc format for each channel read (YES | NO*)>
-channel.format=<Channel data format (SAC_BINARY* | SAC_ALPHA | SG2K_ASCII | FULL_SEED | MINI_SEED | MINI_SEED_BUD | GSE21 | WAV | QCNLIVE_CSV | MEL_CSV | USGS_SMC | NIED_KNET | CDMG_CSMIP | PEPP | TITAN | FVGN | DEPREM_ASCII | SEESLO)>
-channel.format.write=<Channel data format for writing (SAC_BINARY | SG2K_ASCII | MINI_SEED | WAV | KIKUCHI)>
-channel.gapmode=<Fill gaps with last valid data value on read (YES* | NO)>
-channel.groupmode=<Channel group association mode (AUTO_HEADER* | AUTO_FILENAME,<nchar>,<pos_start>,<pos_end> | EACH_IN_OWN_GROUP | ALL_IN_SAME_GROUP)>
-channel.merge.sg2kascii=<Attempt to merge meta-data (header fields) from file <FileURL>.sg2k for each channel <FileURL> read (YES | NO*)>
-channel.merge.fdsn_station=<Attempt to merge meta-data (header fields) from fdsn station web service (YES | NO*)>
-channel.merge.fdsn_station.file|host=<Host name of fdsn station web service or fdsn-station XML file name (service.iris.edu*)>
-channel.response.units.before=<Units before application of response, if not specified in response file (nm|micron|mm|cm|dm|m*|volts|amps|counts)>
-channel.response.units.after=<Units after application of response, if not specified in response file (nm|micron|mm|cm|dm|m|volts|amps|counts*)>
-channel.response.ext=<Default instrument response file name extension>
-channel.response.file=<Default instrument response file name, or RDSEED_SAC_PZ for rdseed pole-zero files with default names>
-channel.response.path=<Default path to instrument response files (<data directory>*)>
-channel.response.path.net=<Append network code as subdirectory to channel.response.path (YES | NO*)>
-channel.response.type=<Default instrument response file type (POLE_ZERO* | GSE)>
-color.seis.z|y|x=<Seismogram Z or Y or X component color in R,G,B (0-255,0-255,0-255)>
-color.seis.z|y|x.grayscale=<Seismogram Z or Y or X component color for grayscale in R,G,B (0-255,0-255,0-255)>
-dir.open=<Default directory for opening data files (./)>
-dir.save=<Default directory for saving data files> (./)>
-dir.save.autoname=<Auto filename type for saving data files (INDEX* | ID )>
-display=<Show SeisGram2K main window, use NO for batch processing (YES* | NO)>
-display.align=<Group window alignment at startup (NONE* | ACTIVE | GLOBAL | START | OTIME | LAST_DATA | REALTIME)>
-display.amplitude.auto=<Automatic amplitude scaling (PEAK | SMART*)>
-display.amplitude.zerocenter=<Keep zero amplitude centered for automatic amplitude scaling (YES | NO*)>
-display.analysistoolbar=<Show analysis toolbar at startup (YES* | NO)>
-display.beep.error=<Sound system beep for errors (ON* | OFF)>
-display.beep.warning=<Sound system beep for warnings (ON | OFF*)>
-display.font=<Font for trace-group display window (<size factor>, BOLD | ITALIC | PLAIN*)>
-display.greyscale=<Set colors to greyscale (YES | NO*)>
-display.group.antialias=<Apply rendering anti-aliasing (smoothing) in trace-group window (YES | NO*)>
-display.group.id=<Display trace-group id text (YES* | NO)>
-display.group.id.short=<Display short version of group id text (YES | NO*)>
-display.group.selectpanel=<Draw selection panel to the right of each group (YES* | NO)>
-display.group.separator=<Draw separator lines between groups (YES* | NO)>
-display.helicorder=<Helicorder mode display (YES | NO*, number of trace rows per group (24*), row length (sec) (3600*))>
-display.helicorder.cyclecolors=<Cycle colors for each trace row in helicorder mode display (YES* | NO)>
-display.invertcolors=<Set colors to inverted/reverse (YES | NO*)>
-display.lockalignment=<Lock group windows to common time base at startup (YES | NO*; YES* with seedlink)>
-display.maxvisible=<Maximum number of groups to display without scrolling (6*)>
-display.messagewindow=<Show message window at startup (YES* | NO)>
-display.monitor=<Monitor mode display (YES | NO*, number of trace rows per group, auto full window delay (sec))>
-display.navigator=<Show trace-group navigator at startup (YES | NO*)>
-display.position=<Main window, upper left corner position at startup as horizontal, vertical fraction of screen size (left-center*)>
-display.realtimetoolbar=<Show realtimetoolbar toolbar at startup (YES* | NO)>
-display.ring=<Ring mode display (YES | NO*, direction (-1,+1*), update interval (sec))>
-display.overlay=<Overlay group traces at startup (YES | NO*)>
-display.size=<Main window size at startup as horizontal, vertical fraction of screen size (0.75,0.75*)>
-display.sort.type=<Sort type (NONE* | ID=net-sta-instN-chan-comp-event | DATE | GCARC | AZ | BAZ | PHA)>
-display.timeaxes=<Show group window time axes at startup (YES* | NO)>
-display.trace.comp=<Display trace component text (YES* | NO)>
-display.trace.id=<Display trace id text (YES* | NO)>
-display.trace.id.short=<Display short version of trace id text (YES | NO*)>
-display.viewingtoolbar=<Show viewing toolbar at startup (YES* | NO)>
-commands =<List of commands to apply after reading all channels (<command>;...)>
-commands.onread =<List of commands to apply on reading channels (<command>;...)>
-commands.preset =<List of commands for Presets menu (description1,command1a,command1b,...;...)>
-edur.coeff=<Coefficient for energy-duration calculation (1.55e10*)>
-edur.power=<Power for energy-duration calculation (1.5*)>
-edur.result=<Result type, value or pseudo Mw = 2/3(log10(value)+9.1 (VALUE* | MAGNITUDE )>
-event.id=<Unique event identification number>
-event.info=<Event information string, use \n for line breaks>
-event.url=<Name of remote process or URL to send picks>
-event.protocol=<Protocol for event/readings communications (NON_LIN_LOC_XML* | XML_STANDARD | CGI_BIN_EARTHWORM)>
-event.sendall=<Send all picks, otherwise send only new picks (YES* | NO)>
-file.filters=<List of filename filter substrings for Open File Dialog (<filterString1>,<description1>[;...])>
-freq.convolve.master.index=<Convolution mater reference trace index (0*)>
-freq.convolve.master.ref=<Feature on mater reference trace index to use as reference time (WINDOW_CENTER* | WINDOW_START | 0-P_max | <label>)>
-freq.convolve.type=<Convolution type (CONVOLUTION* | DECONVOLUTION)>
-freq.convolve.waterlevel=<Convolution water level in dB (-1.0*)>
-freq.rattenuation.fmax=<Maximum frequency at which to remove attenuation (10*dt*)>
-freq.spectrum.mode=<Default mode for spectrum display (LogLog* | LogLin | LinLog | LinLin | EquiLogLog)>
-freq.spectrum.type=<Default type for spectrum display (Magnitude* | Phase | Real | Imaginary | SpectralDensity)>
-freq.spectrogram.colors=<Default color scalte for spectrogram display (Rainbow* | Greyscale | Hot | Cool | Green)>
-freq.spectrogram.method=<Default filter method for spectral display (Gaussian* | Butterworth | Amplitude)>
-freq.spectrogram.maxsizefft=<Maximum size for spectrogram trace segment FFT (2048*)>
-freq.spectrogram.mode=<Default frequency axis mode for spectrogram display (LinFreq* | LogFreq)>
-freq.spectrogram.taper.percent=<Percentage cosine taper to apply to each end of spectrogram trace segments before FFT (10*)>
-freq.taper.percent=<Percentage cosine taper to apply to each end of trace before FFT (5*)>
-header.ampunits=<Set header amplitude units, overrides value in channel data file header>
-help.url=<URL for help web page, will open in external browser>
-help.html=<Generate help information in HTML format in working directory when Help->Help menu itme is selected (YES | NO*)>
-help.create_java_help_files=<Generate help file set in Java Help format in working directory. (YES | NO*)>
-hodo.addphases=<Hodochrone tool: additional phases to display (pP,sP,PcP,PP,SS,Pdiff,Sdiff,PKP,PKiKP,PKIKP,R2,R3,G2,G3*)>
-hodo.display.seismograms=<Hodochrone tool: Enable display of seismogram traces over hodochrone (YES* | NO)>
-hodo.global=<Hodochrone tool: Enable global/spherical mode display and set relevant parameters (allow_edit=YES&vel_model=GLOBAL)>
-hodo.global.distmax=<Hodochrone tool: maximum distance in deg (GLOBAL) for distance axis comma separated list corresponding to each model (95*)>
-hodo.grad_layer_halfspace=<Hodochrone tool: Enable flat earth mode display and set relevant parameters (allow_edit=YES&distmax=300&num_time_decimals=1&vel_model_name=Europe&vel_model=GRAD_LAYER_HALFSPACE&hodo.vel_p=4.5&hodo.vel_s=2.5&hodo.vel_p_lower_crust=6.8&hodo.vel_s_lower_crust=3.8&hodo.vel_p_mantle=8.0&hodo.vel_s_mantle=4.5&hodo.moho_depth=35)>
-hodo.grad_layer_halfspace.distmax=<Hodochrone tool: maximum distance in km (GRAD_LAYER_HALFSPACE) for distance axis; comma separated list corresponding to each model (300*)>
-hodo.display.LrMinusTp=<Hodochrone tool: Display Lr - To time (YES* | NO)>
-hodo.display.TpMinusTo=<Hodochrone tool: Display Tp - To time (YES* | NO)>
-hodo.taup.model=<Hodochrone tool: TauP model name or FileURL (Current SG2K TauP model*)>
-iopath=<local filesystem path for (certain) processing i/o>
-livechannel.N=<LiveSeis data channel N (FileTemplateURL[#groupIndex[#inclination[#azimuth]]])>
-liveseis[.M]=<LiveSeis [groupIndex M] (numSegments#numSegmentsDisplay#waitTime[#minPeakToPeakAmplitude[#maxPeakToPeakAmplitude[#title]]])>
-locale=<Language/locale (en_US | fr_FR | it_IT | pt_BR | tr_TR | zh)>
-mag.percentile=<Percentile robust statistics to use for preferred magnitudes, 10->10-90% (10.0*)>
-messages.pull=<Enables message pull from file/URL (MessageSourceURL, check interval (ms), maximum interval (ms))>
-messages.push.heartbeat=<Enables heartbeat message sending to file/URL (HeartbeatDestinationURL, send interval (ms))>
-mode=<Display mode (DEFAULT* | SCHOOL | ECOLE)>
-mode.expert=<Enable school expert mode at startup (YES | NO*)>
-multicomp.align.sample=<Align multi-comp data by sample instead of by time (YES | NO*)>
-multicomp.polarisation.width=<Default polarization analysis window width in samples (10*)>
-multicomp.polarisation.type=<Default polarization analysis type (COHERENCY* | COVARIANCE)>
-ndecimal=<Number of decimals for display of time seconds (3*)>
-pick.cumulative.value=<Fraction f of maximum amplitude to set pick (0.95*)>
-pick.cumulative.width=<Width unc to determine cumulative pick uncertainty: difference in times where amplitude is f+unc and f-unc (0.025*)>
-pick.file=<FileURL for readings i/o>
-pick.file.autoupdate=<Check every 2 sec for updates to readings file (YES | NO*)>
-pick.format=<Format of readings file (NON_LIN_LOC* | NON_LIN_LOC_SNCL | HYPO71 )>
-pick.sorttype=<Sorting type for readings file (STA_TIME* | TIME | STATION)>
-pick.source.pickfile=<Get readings from readings file (YES* | NO)>
-pick.source.channelfiles=<Get readings from channel files (YES* | NO)>
-pick.phases=<List of phase labels for pick tool pop-up menu (onset,phase,first motion,quality,(Set);...)>
-pick.p2pmax.windowlen=<Length in seconds of sliding window, use a neg value for full trace length (0.8*)>
-pick.qual2err=<Comma separated list of pick errors in seconds corresponding to imported pick qualities 0,1,2,3,4,.. (0.1,0.2,0.5,1.0,99999.9*)>
-planet=<Planet name for TauP and geographic calculations (EARTH* | MOON | MARS)>
-predictedphases.file=<FileURL for predicted phases i/o>
-predictedphases.format=<Format of predicted phases file (NON_LIN_LOC_PRED*)>
-print.font.size=<Printer font size (24*)>
-print.resolution=<Printer resolution in dots per inch (150*)>
-properties=<Properties file URL>
-realtime.update=<Realtime scrolling update interval in seconds (1.0*)>
-seedlink=<SeedLink Aquisition (host1:port#stream1,stream2,...[#windowLength(sec)|yr,mo,dy,hr,mn,sec-length(sec)[#minPeakToPeakAmplitude[#maxPeakToPeakAmplitude[#title[#multiplier[#commands_onread]]]]]][;host2...])>
-seedlink.backfill=<read data from now-windowLength to now to back fill view window with data (YES | NO*)>
-seedlink.clocktype=<Time source for estimating realtime base (SEEDLINK_INFO* | SYSTEM)>
-seedlink.groupchannels=<SeedLink channel group mode (YES* | NO)>
-seedlink.status.latency.limits=<Comma separated list of maximum latency times in sec for green->red panel color (t1,t2,...)>
-seedlink.status.dump=<Dump latency values to console (YES | NO*)>
-seedlink.status.dump.interval=<Min time delay in sec between dump of latency values to console (0*)>
-seedlink.status.ndecimal=<Number of decimals for display of numbers in SeedLink status panel (0*)>
-seedlink.status.show=<Show SeedLink status panel (YES* | NO)>
-seedlink.dialog.networks=<Comma separated list of network codes to display in Open SeedLink dialog>
-seedlink.dialog.stations=<Comma separated list of station codes to display in Open SeedLink dialog>
-seedlink.dialog.locations=<Comma separated list of location codes to display in Open SeedLink dialog>
-seedlink.dialog.channels=<Comma separated list of channel codes to display in Open SeedLink dialog>
-sseedlink.dialog.server_channels=<Semi-colon (;) separated list of host:port@FDSNWS_station_web_wervice_URI to display in Open SeedLink dialog>
-sound.ratefactor=<Realtime playback rate factor for sound file output (1000.0*dt*)>
-source.mechanism=<Source double-couple mechanism as phi (strike), delta (dip), lamda (rake or slip) in radians as defined in Aki & Richards Fig. 4.20 (strike,dip,rake)>
-stroke.seis=<Seismogram line (width (1.0+); type (SOLID|DASHED|DOTTED|DASHDOT)>
-taup.dist.min=<Minimin distance in degrees to active TauP/Phases for each gather (0.0*)>
-taup.firstonly=<Show only first phase of each type (YES | NO*)>
-taup.model=<TauP model name or FileURL (1066a | ak135* | alfs | herrin | iasp91 | jb | prem | pwdk | qdt | sp6)>
-taup.phases=<List of phases for TauP/Phases display (<phs1>,<phs2>,...)>
-taup.source=<Initial source time/dist for TauP/Phases display (yr,mo,dy,hr,mn,sec,depth,dist,distUnits)>
-taup.velocity.rayleigh|love|twave|t1wave=<Wave velocities in km/s for extra TauP/Phases display (vel)>
-timedom.filterpick.filtw=<Default filter picker Filter Window (200*dt*)>
-timedom.filterpick.ltw=<Default filter picker Long-term Window (500*dt*)>
-timedom.filterpick.thres1=<Default filter picker Threshold 1 (10*)>
-timedom.filterpick.thres2=<Default filter picker Threshold 2 (10*)>
-timedom.filterpick.tupevt=<Default filter picker Time up event tUpEvent (20dt*)>
-timedom.peakwindow.threshold=<Default time domain peak window threshold (INF*)>
-timedom.peakwindow.width=<Default time domain peak widnow width in seconds (1.0*)>
-timedom.smooth.halfwidth=<Default time domain smoothing half-width in samples (50*)>
-timedom.smooth.type=<Default time domain smoothing type (TRIANGLE* | BOXCAR)>
-titanlivechannel.N=<TitanLive data channel N (FileTemplateURL[#gatherIndex[#inclination[#azimuth]]]>
-titanlive[.M]=<TitanLive [groupIndex M] (unused#numSegmentsDisplay#waitTime[#minPeakToPeakAmplitude[#maxPeakToPeakAmplitude[#title]]])>
-titanlive.contig=<TitanLive segments are contiguous (YES* | NO)>
-title=<Window title>
-waveserver=<Waveserver Aquisition (host1:port#stream1,stream2,...[#windowLength(sec)][;host2...]>
-waveserver.groupchannels=<Waveserver channel group mode (YES* | NO)>
-waveserver.status.latency.limits=<Comma separated list of maximum latency times in sec for green->red panel color (t1,t2,...)>
-waveserver.status.show=<Show Waveserver status panel (YES* | NO)>
-waveserver.type=<Waveserver type (SCNL* | SCN)>
The periods "." in the parameter names are optional.
The stand alone version of SeisGram2K also loads these program parameters from a defaults file named ".sg2kdefaults" or "sg2kdefaults", first from the user's home directory, then from the current directory, if either or both of these files exist. The format of an entry in a default file is:
seisgram2k.<parameter> = <value>
where <parameter> and <value> are any valid SeisGram2K name-value argument pairs listed above. A parameter specified as a command line argument will superceed the same parameter in the defaults file.
_______________________
Specifying individual data channel (channel.N) parameters:
Each channel is specified by:
FileURL[#groupIndex[#inclination[#azimuth]]][[#<parameter>%<value>]...]
where FileURL is the path and filename or the Internet Uniform Resource Locator (i.e. http://<host>/<filename>) for a data channel, groupIndex (0, 1, ...) is the index of the trace-group to contain the channel, inclination (0-180 deg from vertical up) and azimuth (0 to 360 deg from North) specify the orientation of the channel and will override any orientation specified in the data file.
<parameter> is "group", "inclination", "azimuth", "multiplier", "format", "binarytype", "response", or "source" or the first 2 letters of one of these names; <value> is the corresponing numeric or string value.
If format, byte order or response file are not given in the individual channel specification, the corresponding values specified by the program parameters "channel.binarytype", "channel.format" and "channel.response" will be used.
If a group index is not given in the individual channel specification, the grouping of channels is controlled by the program parameter "channel.groupmode":
ALL - all channels are placed in a single trace-group
SINGLE - each channels is placed in a new trace-group
AUTO,<nchar> - all channels whose FileURL's differ by up to <nchar> characters are placed in a new trace-group
"source" specifies the initial source time/dist for TauP/Phases display for this trace (see "taup.source" for format)
Data files that have been compressed with gzip can be read directly by SeisGram2K, these files must have names ending in ".gz".
When SeisGram2K stand-alone is invoked from the command line, data channel arguments can be specified without the "-channelN=" prefix, and may include wild-card characters "*" and "?".
_______________________
SG2K_ASCII format description:
SeisGram2K reads and writes a simple ASCII format (SG2K_ASCII format) consisting of optional header information and two columns for trace data: time from the trace beginning and amplitude. This format is useful for importing and exporting trace data to spreadsheet, plotting, analysis, or other programs.
The first and last tokens "SG2K_ASCII" and "END_SG2K_ASCII" are optional; these allow SeisGram2K to automatically identify the file format. The optional header fields are specified by tokens of the form <name>=<value>, with no white space between <name>, =, and <value>. Header tokens must be separated by white space, but the use of <newline>'s is optional. Each point of trace data is specified by a value for the time from the beginning of the trace and a value for the amplitude. Trace data values must be separated by white space, but the use of <newline>'s is optional.
Lines beginning with the character #, ! or * are ignored.
When writing SG2K_ASCII format, SeisGram2K puts all header tokens on the first line, and the pair of time/amplitude values for each data point on a separate line.
_______________________
Specifying instrument response files:
The pole-zero instrument responses for a given trace is specified by the first of the following files that is found:
(1) The file specified by the "response" parameter following the data channel file URL specification "-channel.N", or
(2) The file whose name is the data channel file URL concatenated with "." and the string specified by the "channel.response.ext=" program parameter, or
(3) A file with standard rdseed naming (e.g. SAC_PZs_GE_STU_BHZ__2000.001.00.00.00.0000) that matches the net_sta_chan_loc of the trace if "channel.response.file=RDSEED_SAC_PZ" , or
(4) A file whose name is the data channel file URL concatenated with ".pz", ".zp" or ".paz" if "channel.response.file=PAZ", or
(5) A global response file specified in the "channel.response.file=" program parameter
The response files are searched for in the directory specified by "-channel.response.path="
If "-channel.response.type=POLE_ZERO" the pole-zero response file must be in "Omega" format (see e.g. http://www.iris.edu/manuals/sac/SAC_Commands/transfer) and must give the scaling to nanometers of ground displacement unless specified otherwise by the "-channel.response.units.before=" parameter.
If "-channel.response.type=GSE" the pole-zero response file must be in GSE2.0 or GSE2.1 format.
See also the paramters: "-channel.response.*"
_______________________
Specifying Preset menu command (commands.preset) parameters:
The "commands.preset=" program parameter allows the customization of the Presets pull-down menu. This parameter is a semi-colon separated list of comma-separated description and command sets. Each preset command is specified by:
<description>,<command1>,<command2>,...
where description is a string describing the commands, commandN is the keyword and parameters for each command (see Help->Command Line Interaction); the commas must be present.
Setting description to "-" places a horizontal separator line in the pull-down menu.
Example1: "1Hz a-causal Highpass, hp amp n 2 co 1; 10Hz a-causal Lowpass, lp amp n 2 co 10; -; 1Hz Bwrth Highpass, hp bu n 2 co 1; 10Hz Bwrth Lowpass, lp bu n 2 co 10; WA, transfer from this to wa;"
Example2: "WA amps, transfer from this to wa, markz, markp;"
_______________________
Specifying pick tool pop-up menu labels (pick.phases) parameters:
The "pick.phases=" program parameter allows the customization of the pick labels in the pick pop-up menu. This parameter is a semi-colon separated list of comma-separated label elements. Each label is specified by:
<onset>,<phase>,<first motion>,<quality>,(Set)
where all commas must be present.
If (Set) is present, then the pick is labelled and immediately registered when the pop-up item is selected. Otherwise, the pick is labelled but not registered.
Example: "i,P,c,0,(Set);i,P,d,0,(Set);e,P,c;e,P,d;e,S,,,(Set);,_CODA,,,(Set);"
(NOTE: Currently, registered picks are immediately saved to the pick file, this may be changed in the future.)
The pop-up menu is activated in Pick Tool mode by a right mouse click, or other pop-up trigger, over a trace window.
_______________________
For more information see: http://www.alomax.net/seisgram
___