Thread: SAC libraries - more detail & more complication

Started: 2008-03-10 22:09:57
Last activity: 2008-03-10 22:58:44
Topics: SAC Help
Fiona Darbyshire
2008-03-10 22:09:57
Dear All,

I think I have identified the issues regarding the SAC input/output
associated with the cross-correlation program, but that has raised more
questions before I can actually solve the problem.
Some of the libraries called by the program are fairly standard ones that
appear in the regular "sacio.a" (and in Computer Programs in Seismology...)
- namely get*hv, set*hv, rsac*, wsac*. However, there are still 4
outstanding subroutine calls that are a problem.

I downloaded the most recent version of the SAC binaries and source code to
try to track them down. I was able to find 3 of the 4; they are "kidate",
"xapiir" and "getfil". As far as I could understand from the SAC Makefile,
these codes go into "libsac.a" (sac.a?) but not into "sacio.a" and further
reading of the Makefile suggested that "libsac.a" is not installed in the
standard compilation process. The Makefile is orders of magnitude more
complicated than anything I have dealt with before, so could someone help me
with finding out how to install libsac.a so that I can access these three
library subroutines?

The fourth subroutine was "rsach(name,nerr)". This subroutine appears to
exist in the libraries of sac10.6d (I have an old copy but it doesn't work
on my system; I just happened to have kept it) but I have not been able to
find any reference to it in the current version of SAC. Has it been replaced
by something else? If so, what?

Please let me know what I can do to solve this problem; I am working on
somewhat limited time for resolving this issue and hence using the
traveltime code.

Many thanks,

Fiona Darbyshire.

PS. Anyone any idea about my other question - getting SAC files into
PITSA-ASCII?

  • Robert Casey
    2008-03-10 19:47:34

    Hi Fiona-

    From what I can gather from the documentation, neither PITSA nor
    JPITSA supports reading of SAC files. It looks like SAC support was
    planned for JPITSA, but is not currently available.

    Someone else familiar with PITSA, please feel free to correct me.

    -Rob

    On Mar 10, 2008, at 12:09 PM, Fiona Darbyshire wrote:

    PS. Anyone any idea about my other question - getting SAC files into
    PITSA-ASCII?


  • Brian Savage
    2008-03-10 22:58:44
    Fiona

    There are old version of libsac.a floating around, these are
    generally 10.6d(f) versions.
    The older library should include the kidate, xapiir, and getfil.

    The libraries included with the most recent versions of SAC do not
    include these subroutines.
    What is included is only routines which read and write portions of
    sac and blackboard variable files.
    These function include, as you have stated: get*hv, set*hv, rsac* and
    wsac*.

    The functionality of rsach should be available through the rsac*
    command. The rsach command only read
    in the SAC header and not the data. If you can live with reading in
    the data as well as the header, you can change
    to this function. The function rsach does not exist in the current
    SAC source code.

    Access to the kidate, xapiir, and getfil is not simple and not
    supported under the current state of the SAC code base.

    Cheers
    Brian Savage


    On Mar 10, 2008, at 3:09 PM , Fiona Darbyshire wrote:

    Dear All,

    I think I have identified the issues regarding the SAC input/output
    associated with the cross-correlation program, but that has raised
    more questions before I can actually solve the problem.
    Some of the libraries called by the program are fairly standard
    ones that appear in the regular "sacio.a" (and in Computer Programs
    in Seismology...) - namely get*hv, set*hv, rsac*, wsac*. However,
    there are still 4 outstanding subroutine calls that are a problem.

    I downloaded the most recent version of the SAC binaries and source
    code to try to track them down. I was able to find 3 of the 4; they
    are "kidate", "xapiir" and "getfil". As far as I could understand
    from the SAC Makefile, these codes go into "libsac.a" (sac.a?) but
    not into "sacio.a" and further reading of the Makefile suggested
    that "libsac.a" is not installed in the standard compilation
    process. The Makefile is orders of magnitude more complicated than
    anything I have dealt with before, so could someone help me with
    finding out how to install libsac.a so that I can access these
    three library subroutines?

    The fourth subroutine was "rsach(name,nerr)". This subroutine
    appears to exist in the libraries of sac10.6d (I have an old copy
    but it doesn't work on my system; I just happened to have kept it)
    but I have not been able to find any reference to it in the current
    version of SAC. Has it been replaced by something else? If so, what?

    Please let me know what I can do to solve this problem; I am
    working on somewhat limited time for resolving this issue and hence
    using the traveltime code.

    Many thanks,

    Fiona Darbyshire.

    PS. Anyone any idea about my other question - getting SAC files
    into PITSA-ASCII?


06:48:30 v.22510d55