DOCUMENTATION
SYNOPSIS
PROGRAM NAME: Sucat.pl
Purpose: Concatenate a series files
AUTHOR: Juan M. Lorenzo DEPENDS: on cat from bash
DATE: May 25
Includes access to a simple configuration file
Simple file is called Sucat.config
Access to simple file is via Sucat2_config.pl
Sucat2_config.pl uses Config::Simple (jdhedden)
as well as SeismicUnix and SystemVariables
packages V 2.10
April 9 2018
removed dependency on Config::Simple (CPAN)
DESCRIPTION:
USAGE
Sucat
Needs a local configuration file Sucat.config
GUI will generate a new one if needed one, but will
prefer to use the contents of an existant configuration file.
Example Cases
CASE 1 Use a list, for concatenating iVelan pick files ( Vrms,time pairs) into the correct format
Use a list (file name) WITHOUT values for first 7 parameters (GUI). Only include the output name. The alternative directories are optional. That is, a list can only be used when the values of the prior 7 parameters are blank
Example: first_file_number_in = last_file_number_in = number_of_files_in = output_file_name = input_suffix = input_name_prefix = input_name_extension = list = a file name [found in $PL_SEISMIC] output_file_name = alternative_inbound_directory = [$PL_SEISMIC] alternative_outbound_directory = [$PL_SEISMIC]
The list is expected to be found in $PL_SEISMIC
Internally, the data_type will be determined from the file names in the list
that will contain "velan" etc."
If data_type = velan then the concatenated output file
will automatically be reformatted for input into
sunmo.
---------------------------------------------------------------------------
CASE 2 General concatenation of files with patterns in their names
DO NOT use a list. Instead, include values for at least the first 3 parameters and up to and including values for all the remaining parameters, except the list. An output name is possible but not required.
Example:
first_file_number_in = 1000
last_file_number_in = 1001
number_of_files_in = 2
input_suffix = su
input_name_prefix = cdp
input_name_extension = _clean
list =
output_file_name = 1000_01
alternative_inbound_directory =
alternative_outbound_directory =
The above case will produce
cat DIR1/cdp1000_clean.su DIR1/cdp1001_clean.su > DIR2/1000_01.su
A list CAN NOT be in use when
any value exists for any of the following:
first_file_number_in = 1000
last_file_number_in = 1010
number_of_files_in = 11
input_suffix = su
input_name_prefix = cdp
input_name_extension = _clean
CASE 3
A. If you want to use a list, the list
is a file that contains one-
or multiple nemes of files without an ex
first_file_number_in =
last_file_number_in =
number_of_files_in =
input_suffix =
input_name_prefix =
input_name_extension =
list = cat_list_good_sp;
output_file_name = 'All_good_sp';
alternative_inbound_directory =
alternative_outbound_directory =
CASE 4:
first_file_number_in = 1000
last_file_number_in = 1010
number_of_files_in = 11
input_suffix = _clean.su
input_name_prefix =
input_name_extension =
output_file_name = 1000_10
alternative_inbound_directory =
alternative_outbound_directory =
NOTES
The input and output default directories is $PL_SEISMIC
but these can be overridden by the alternatives
=head2 CHANGES
V 0.1.2 considers empty file_names May 30, 2019; NM
V 0.1.3 includes additional concatenation for:
(1) sorted ivpicks
V 0.1.4 update NOTES 9.9.21
Declare variables
in local memory space
2. Instantiate classes:
Create a new version of the package with a unique name
Get configuration information Establish default variables using a *_spec file and defaults defined hereinf or the location of the list file; in PL_SEISMIC
set global imported variables
set the different parameters
includes variables
correct input format values
3. Consider compatible parameter inputs
3. Declare outout file names and their paths
inbound and outbound directories
are defaulted but can be different
4. create script to concatenate files files may use either a default directory or an alternative directory provided by the user Also consider incompatible as well as compatible parameter inputs
A. DEFINE FLOW(S)
B. RUN FLOW(S)
C. LOG FLOW(S)TO SCREEN AND FILE
1 POD Error
The following errors were encountered while parsing the POD:
- Around line 303:
Unknown directive: =header