2011_07_10/LADCPproc.loadCTD
author A.M. Thurnherr <athurnherr@yahoo.com>
Tue, 17 Apr 2012 18:14:56 +0000
changeset 9 48b2d27aaebf
parent 4 0d31245172fa
permissions -rw-r--r--
after fixing bad magdec bug
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
     1
#======================================================================
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
     2
#                    L A D C P P R O C . L O A D C T D 
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
     3
#                    doc: Thu Dec  9 18:39:01 2010
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
     4
#                    dlm: Sat Jan 22 21:40:12 2011
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
     5
#                    (c) 2010 A.M. Thurnherr
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
     6
#                    uE-Info: 174 0 NIL 0 0 72 2 2 4 NIL ofnI
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
     7
#======================================================================
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
     8
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
     9
# HISTORY:
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    10
#	Dec  9, 2010: - exported from LADCPproc
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    11
#				  - added support for ASCII files
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    12
#	Dec 16, 2010: - BUG cnv read did not work any more
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    13
#	Jan 10, 2011: - added code to skip ANTS header
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    14
#	Jan 22, 2011: - adapted to new -g
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    15
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    16
sub readCTD_ASCII($$)
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    17
{
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    18
	my($fn,$dtaR) = @_;
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    19
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    20
	croak("$fn: unknown pressure field\n")    unless defined($CTD_ASCII_press_field);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    21
	croak("$fn: unknown temperature field\n") unless defined($CTD_ASCII_temp_field);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    22
	croak("$fn: unknown salinity field\n")    unless defined($CTD_ASCII_salin_field);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    23
	unless (numberp($dtaR->{lat})) {
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    24
		croak("$fn: unknown latitude field\n")    unless defined($CTD_ASCII_lat_field);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    25
		croak("$fn: unknown longitude field\n")   unless defined($CTD_ASCII_lon_field);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    26
	}
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    27
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    28
	$CTD_ASCII_badval = 9e99 unless defined($CTD_ASCII_badval);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    29
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    30
	open(F,$fn) || croak("$fn: $!\n");
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    31
	my($sumLat,$sumLon); my($nPos) = 0;
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    32
	my($ds);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    33
	while (chomp($ds = <F>)) {
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    34
		next if ($ds =~ /^#/);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    35
		my(@rec) = split('\s+',$ds);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    36
		push(@{$dtaR->{press}},($rec[$CTD_ASCII_press_field-1] == $CTD_ASCII_badval) ? nan : $rec[$CTD_ASCII_press_field-1]);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    37
		push(@{$dtaR->{temp}}, ($rec[$CTD_ASCII_temp_field-1]  == $CTD_ASCII_badval) ? nan : $rec[$CTD_ASCII_temp_field-1]);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    38
		push(@{$dtaR->{salin}},($rec[$CTD_ASCII_salin_field-1] == $CTD_ASCII_badval) ? nan : $rec[$CTD_ASCII_salin_field-1]);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    39
		unless (!defined($CTD_ASCII_lat_field) || $rec[$CTD_ASCII_lat_field-1] == $CTD_ASCII_badval) {
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    40
			$nPos++;
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    41
			$sumLat += $rec[$CTD_ASCII_lat_field-1];
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    42
			$sumLon += $rec[$CTD_ASCII_lon_field-1];
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    43
		}
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    44
	}
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    45
	close(F);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    46
	
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    47
	if ($nPos > 0) {
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    48
		$dtaR->{lat} = $sumLat / $nPos;
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    49
		$dtaR->{lon} = $sumLon / $nPos;
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    50
	}
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    51
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    52
	$dtaR->{sampint} = 1 / $CTD_ASCII_sampfreq;
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    53
}
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    54
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    55
sub readCTD_CNV($$)
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    56
{
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    57
	my($fn,$dtaR) = @_;
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    58
	my($CTD_nrecs,$CTD_nfields,$pressF,$tempF,$salinF);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    59
	my($CTD_badval,$CTD_file_type);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    60
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    61
	open(F,$fn) || croak("$fn: $!\n");
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    62
	while (1) { 														# parse header
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    63
		my($hdr);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    64
		chomp($hdr = <F>);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    65
		$hdr =~ s/\r*$//;
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    66
		croak("$0: unexpected EOF (format error)\n") unless defined($hdr);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    67
		last if ($hdr eq '*END*');
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    68
	    
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    69
		$CTD_nfields = $',next if ($hdr =~ /nquan = /); 				# Layout
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    70
		$CTD_nrecs = $',next if ($hdr =~ /nvalues = /);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    71
		$pressF = $1,next if ($hdr =~ /name (\d+) = prDM:/);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    72
		if ($opt_2) {
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    73
			$tempF	= $1,next if ($hdr =~ /name (\d+) = t190C:/);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    74
			$salinF = $1,next if ($hdr =~ /name (\d+) = sal11:/);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    75
		} else {
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    76
			$tempF	= $1,next if ($hdr =~ /name (\d+) = t090C:/);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    77
			$salinF = $1,next if ($hdr =~ /name (\d+) = sal00:/);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    78
		}
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    79
	
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    80
		&antsAddParams('start_time',$1),next							# selected metadata
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    81
			if ($hdr =~ /start_time = (.*)/);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    82
	
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    83
		&antsAddParams('station',$1),next
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    84
			if ($hdr =~ /Station\s*:\s*(.*)/);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    85
		&antsAddParams('ship',$1),next
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    86
			if ($hdr =~ /Ship\s*:\s*(.*)\s*$/);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    87
		&antsAddParams('cruise',$1),next
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    88
			if ($hdr =~ /Cruise\s*:\s*(.*)\s*$/);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    89
		&antsAddParams('time',$1),next
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    90
			if ($hdr =~ /Time\s*:\s*(.*)/);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    91
		&antsAddParams('date',$1),next
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    92
			if ($hdr =~ /Date\s*:\s*(.*)/);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    93
	
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    94
		if ($hdr =~ /Latitude\s*[=:]\s*/) {
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    95
			($deg,$min,$NS) = split(/ /,$');
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    96
			$dtaR->{lat} = $deg + $min/60;
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    97
			$dtaR->{lat} *= -1 if ($NS eq 'S');
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    98
			next;
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    99
		}
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   100
		if ($hdr =~ /Longitude\s*[=:]\s*/) {
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   101
			($deg,$min,$EW) = split(/ /,$');
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   102
			$dtaR->{lon} = $deg + $min/60;
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   103
			$dtaR->{lon} *= -1 if ($EW eq 'W');
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   104
			next;
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   105
		}
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   106
	    
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   107
		if ($hdr =~ /interval = seconds: /) {
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   108
			$dtaR->{sampint} = 1*$';
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   109
			next;
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   110
		}
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   111
	    
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   112
		$CTD_badval = $',next
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   113
			if ($hdr =~ /bad_flag = /); 
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   114
		$CTD_file_type = $',next
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   115
			if ($hdr =~ /file_type = /);    
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   116
	}
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   117
	
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   118
	croak("$CTD_file: cannot determine CTD file layout\n")
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   119
		unless ($CTD_nfields && $CTD_nrecs);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   120
	croak("$CTD_file: cannot determine missing value\n")
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   121
		unless defined($CTD_badval);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   122
	croak("$CTD_file: not a CTD time series file\n")
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   123
		unless ($dtaR->{sampint});
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   124
	croak("$CTD_file: no pressure field\n")
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   125
		unless defined($pressF);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   126
	croak("$CTD_file: no suitable temperature field\n")
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   127
		unless defined($tempF);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   128
	croak("$CTD_file: no suitable salinity field\n")
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   129
		unless defined($salinF);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   130
	
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   131
	if ($CTD_file_type eq 'ascii') {
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   132
		while (1) {
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   133
			last unless (my(@rec) = &antsFileIn(F));
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   134
			push(@{$dtaR->{press}},($rec[$pressF] == $CTD_badval) ? nan : $rec[$pressF]);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   135
			push(@{$dtaR->{temp}}, ($rec[$tempF]  == $CTD_badval) ? nan : $rec[$tempF]);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   136
			push(@{$dtaR->{salin}},($rec[$salinF] == $CTD_badval) ? nan : $rec[$salinF]);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   137
		}
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   138
	} elsif ($CTD_file_type eq 'binary') {
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   139
	
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   140
		my($fbits) = 8 * length(pack('f',0));
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   141
		croak(sprintf("$0: incompatible native CPU float representation (%d instead of 32bits)\n",fbits))
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   142
			unless ($fbits == 32);  
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   143
		    
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   144
		croak("$fn: can't read binary data\n")
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   145
			unless (read(F,my($dta),4*$CTD_nfields*$CTD_nrecs) == 4*$CTD_nfields*$CTD_nrecs);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   146
		print(STDERR "$fn: WARNING: extraneous data at EOF\n") unless eof(F);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   147
	
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   148
		$dta = pack('V*',unpack('N*',$dta)) 			# big-endian CPU
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   149
			if (unpack('h*', pack('s', 1)) =~ /01/);	# c.f. perlport(1)
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   150
	    
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   151
		my(@dta) = unpack("f*",$dta);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   152
	
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   153
		for (my($r)=0; $r<$CTD_nrecs; $r++) {
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   154
			push(@{$dtaR->{press}},($dta[$r*$CTD_nfields+$pressF] == $CTD_badval) ? nan : $dta[$r*$CTD_nfields+$pressF]);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   155
			push(@{$dtaR->{temp}}, ($dta[$r*$CTD_nfields+$tempF]  == $CTD_badval) ? nan : $dta[$r*$CTD_nfields+$tempF]);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   156
			push(@{$dtaR->{salin}},($dta[$r*$CTD_nfields+$salinF] == $CTD_badval) ? nan : $dta[$r*$CTD_nfields+$salinF]);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   157
		}
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   158
	} else {
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   159
		croak("$fn: unknown CTD file type $CTD_file_type\n");
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   160
	}
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   161
	close(F);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   162
}
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   163
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   164
sub readCTD($$)
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   165
{
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   166
	my($fn,$dtaR) = @_;
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   167
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   168
	if (defined($CTD_ASCII_sampfreq)) {
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   169
		readCTD_ASCII($fn,$dtaR);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   170
	} else {
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   171
		readCTD_CNV($fn,$dtaR);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   172
	}
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   173
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   174
	croak("$0: unknown latitude\n") unless defined($dtaR->{lat});
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   175
	&antsAddParams('lat',$dtaR->{lat});
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   176
	croak("$0: unknown longitude\n") unless defined($dtaR->{lon});
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   177
	&antsAddParams('lon',$dtaR->{lon});
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   178
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   179
	&antsAddParams('CTD_sampfreq',1/$dtaR->{sampint});
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   180
	&antsAddParams('ITS',$P{ITS} = 90);
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   181
}
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   182
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   183
1;