Tides and current format (TCF) header definition
Tides and currents format (TCF) is an internal format for the application used to measure tides and currents in the regions. This application is called Tides, Currents and Water Levels Tools (TCWL Tools), which is survey software for creating tide predictions. The regions, in particular, use the TCF file format for the exchange of tidal harmonic constituents and predictions (extremes and 15 min).
The Canadian Hydrographic Service also sends monthly water level observations in this format to the Marine Environmental Data Service for the Pacific Region. The format will still be used in the new water level system. The format is also used for the water current constituents.
The header can contain information about the datum and any changes made to the data.
Water level time series
The dates and time are expected to be:
- in sequential order
- separated by a fixed time interval which matches what’s recorded in the header
Padded height records are marked with a value of 999.999.
The generic format description follows yyyy/mm/dd hh:mm xxx.xxx, where:
- yyyy is the 4 digit year
- mm is the number of the month (January is 1)
- dd is the day of the month
- hh is the hour (24-hour clock)
- mm is minutes
- xxx.xxx is the height in metres
Example
An example of a TCF header is as follows.
TCF Header version 2 ''''/''''1''''/''''2''''/''''3''''/''''4''''/''''5''''/''''6''''/''''7''''/'''' DataType....... Index GeographicalName.................... DpthIm YYYY/MM/DD|| SOb/Pr/Com DD MM.MMMMN DDD MM.MMMMW PstnkmA FixMethod..... +TZ.. hhmm:ss || NumbRec... ####days ###.#% T TimeComments........................ hhmm:ss Ch|| Scientist............. ProjectID............. CruiseID.. IDAcA WDAcA DpthWm|| FreeFieldForTemporaryStorage............................................. VCL|| hhmm:ss Cut.Offday Offs.ettdbp1 Fld Ebb HorDat VertlDatum Bm_Name... BmElevmm|| 01 Parameter Descriptor Accry Qulty #A 07 Parameter Descriptor Accry Qulty #A|| 02 .................... ..... ..... .. 08 .................... ..... ..... ..|| 03 .................... ..... ..... .. 09 .................... ..... ..... ..|| 04 .................... ..... ..... .. 10 .................... ..... ..... ..|| 05 .................... ..... ..... .. 11 .................... ..... ..... ..|| 06 .................... ..... ..... .. 12 .................... ..... ..... ..|| Agency................... Platform................. InstrumentType....Serial#|| FileName................. ProcessingFileName....... ParentFile...............|| Comments.....................................................................|| .............................................................................|| .............................................................................|| .............................................................................|| .............................................................................|| .............................................................................|| .............................................................................|| .............................................................................|| .............................................................................|| .............................................................................|| ''''/''''1''''/''''2''''/''''3''''/''''4''''/''''5''''/''''6''''/''''7''''/'''' The following is full description of the format by line number: field position,field length : definition. If field position is not defined it is to be left blank. Line 1: col 01-15 15 : Type of data [See standard list] [File may contain other parameters] 17-21 5 : Station ID or Index number [no blanks] 23-58 36 : Geographical name [may include parenthetical remarks, ie (xxx)] 61-65 5 : Depth of instrument below chart datum [no blanks] 66-66 1 : Units of depth [m:metres, f:feet] 68-71 4 : Date (Year) of first data record 72-72 1 : '/' 73-74 2 : Date (Month) of first data record 75-75 1 : '/' 76-77 2 : Date (Day) of first data record Line 2: col 01-01 1 : Archive status !:CHS is primary archivist &:CHS is secondary archivist, primary archive elsewhere ?:Unknown 02-10 9 : 'Observed ', 'Predicted' or 'Computed ' 14-15 2 : Latitude (Degrees) 17-23 7 : Latitude (Minutes up to 4 places of decimal) 24-24 1 : 'N' or 'S' 26-28 3 : Longitude (Degrees) 30-36 7 : Longitude (Minutes up to 4 places of decimal) 37-37 1 : 'W' or 'E' 39-42 4 : Position accuracy 43-44 2 : Position accuracy units (m, km, etc) 45-45 1 : Position quality flag 47-60 14 : Fix method,eg GPS, DGPS, Radar Range, etc 62-66 5 : Time Zone [# of hours to add to determine UTC] [always include + or -] [always left justify, then there is space for Nfld time. ie +03.5] 68-69 2 : Time (Hour) of first data record 70-71 2 : Time (Minute) of first data record 72-72 1 : ':' 73-74 2 : Time (Second) of first data record Line 3: col 01-10 10 : Number of Records to follow header 12-15 4 : Elapsed time in days 16-19 4 : 'days' 21-25 5 : Percentage of primary data (DataType) not padded with nulls. Any parameter can be padded to account for missing or poor data. The padded value depends upon the file format, where Null = 9999999999 for ASCII data Null = 32767 for 16 bit binary [(2**15)-1] Null = 2147483647 for 32 bit binary [(2**31)-1] 26-26 1 : '%' 28-28 1 : Time Flag [See standard list] 30-65 36 : Time Comments [See standard list for suggestions] If time accuracy is needed then the time accuracy is written at the end of the time comments. The time accuracy must be preceded by a sign (- or +) to be recognized. The units of time accuracy will be seconds/day with at least one decimal place, ie +1.0 is 1 second/day. 68-69 2 : Sampling interval (Hours) 70-71 2 : Sampling interval (Minutes) 72:72 1 : ':' 73-74 2 : Sampling interval (Seconds) 76-77 2 : Number of Parameters in a record [up to 12] Line 4: 01-22 22 : Name of scientist [See standard list] 24-45 22 : Project ID [See standard list] 47-56 10 : Cruise ID [See list of suggested entries] 59-62 4 : Instrument Depth accuracy number, real number with moving decimal always in units of the depth 63-63 1 : Instrument Depth accuracy code 66-69 4 : Water Depth accuracy number, real number with moving decimal always in units of the depth 70-70 1 : Water Depth accuracy code 72-76 5 : Depth of water below chart datum [no blanks] 77-77 1 : Units of depth [m:metres, f:feet] Line 5: 01-73 70 : Free field for program scratch or temporary storage (see below for information of use of scratch area by tide and current table software) 75-77 3 : Number of variable comments lines added. Variable comments lines are still 77 characters long with || at the end. Maximum number of variable comment lines is 999. Line 6: Col 01-07 7 : Sampling interval of original measurements before subsampling/ interpolation. 09-15 7 : Cut-off for the filter, with decimals possible 16-18 3 : Units of the cut-off: yr, day, hr, min, sec 20-27 8 : Offset (this includes the usual pressure gauge Removed Mean) - format is ddd.ddd. 28-29 2 : Offset units, usually db (dbars) 30-31 2 : Parameter offset is from. 33-35 3 : Flood direction(deg. T) 37-39 3 : Ebb direction(deg. T) 41-46 6 : Horizontal Datum, eg NAD-83 48-57 10 : Vertical Datum, eg GVSD91 59-68 10 : Bench Mark Name 70-75 6 : Bench Mark Elevation 76-77 2 : Units of BM Elevation [mm:millimetres,hf:ft*100] Line 7 to Line 12: 01-02 2 : Parameter Number 40-41 2 : " " 04-23 20 : Parameter Descriptors [See standard list] 43-62 20 : " " " " 25-29 5 : Parameter Accuracy [uncertainty, using same number 64-68 5 : " " of decimal places as in c37 or c76] 31-35 5 : Flags to describe parameter quality, degree of editing, and if applicable type of datum and filters applied. 70-74 5 : Same flags as c31-c35 [See standard list] 37-37 1 : Number of decimal places or 'T' if text 76-76 1 : " " " " " " " " 38-38 1 : Data Format where A = ASCII [10 bytes/parameter] 77-77 1 : " " [The following are S = (16 bits Integer Binary) for internal use, L = (32 bits Integer Binary) that is, not for V = (16 bits VAX Int Binary) interchange X = (32 bits VAX Int Binary)] Line 13: 01-25 25 : Data set Agency [See standard list] 27-51 25 : Platform used for measurements [See standard list] 53-70 18 : Instrument Type [See standard list] 71-77 7 : Instrument Serial Number Line 14: 01-25 25 : File Name [Name of present file with extension] 27-51 25 : Processing File Name [Log file,could be paper] 53-77 25 : Parent File Name [Source file name with extension] Line 15 to Line 24: 01-77 77 : Comments Line 25 to Line ??? 01-77 77 : Variable length Comments - each line must be a full line with a maximum of 999 lines. Note: All header lines are terminated by '||' and an End-of-Line character(s). This means each header line has a length of 79 characters plus EOL character(s). If data format is ASCII the record length will be 10 bytes * number of parameters plus end of line. If data format is binary the record length will be 2 or 4 bytes * number of parameters and no end of line. The scratch field is used in various programs. See later documentation for specific format definitions. The Tide and Current table software makes use of the free area (scratch field) to hold specific information with a specific format. This definition is described below. ''''/''''1''''/''''2''''/''''3''''/''''4''''/''''5''''/''''6''''/''''7''''/'''' DataType....... Index GeographicalName.................... DpthIm YYYY/MM/DD|| SOb/Pr/Com DD MM.MMMMN DDD MM.MMMMW PstnkmA FixMethod..... +TZ.. hhmm:ss || NumbRec... ####days ###.#% T TimeComments........................ hhmm:ss Ch|| Scientist............. ProjectID............. CruiseID.. IDAcA WDAcA DpthWm|| PrdctType vx.x pgn SpdT mi.n ma.x dh tmx VCL|| hhmm:ss Cut.Offday Offs.ettdbp1 Fld Ebb HorDat VertlDatum Bm_Name... BmElevmm|| Explanation: vx.x - version number of the data. Where each x is a number. SpFn - speed type of station (i.e. FAST or NORM ) or Foot note number ( i.e. FTN1 which is the foot note for Grondines) pgn - page number of the first page this data will appear on in the tide table PrdctType - type of prediction - either Reference, Secondary, or Other tmx - max time span of a series of 3 small changes in minutes mi.n - minimum waterlevel value (in metres) for the calendar plots ma.x - maximum waterlevel value (in metres) for the calendar plots (max - min must be divisible with one decimal place by 5, ie 6 - 0 works, 6 - 0.25 will not work). dh - Water levels xx amplitiude of a small change in cm (ie less than 99 cm) in automatic editing Currents do not use central time in calculation in automatic editing Currents CT use central time calculation in automatic editing and make it marked for attention Currents CF use central time calculation in automatic editing and make it active Maximum and minimum waterlevel values used in the Tide and Current Tables Volume Minimim Maximum 2 0.0 2.0 5 0.0 4.0 6 0.0 6.0