1 |
cnh |
1.1 |
function [] = write_tile(fn,A,varargin) |
2 |
|
|
% Write tiled field to single file "fn.bin". |
3 |
|
|
% |
4 |
|
|
% Data is in IEEE-bigendian real*8 format by default. |
5 |
|
|
% |
6 |
|
|
% Dimensions of A must be (n,n) |
7 |
|
|
% |
8 |
|
|
% Usage: |
9 |
|
|
% >> write_tiles('LATC',latC); |
10 |
|
|
% >> write_tiles('LATC',latC,'real*4'); |
11 |
|
|
|
12 |
|
|
% Default precision |
13 |
|
|
prec='real*8'; |
14 |
|
|
ieee='b'; |
15 |
|
|
|
16 |
|
|
% Check optional arguments |
17 |
|
|
args=char(varargin); |
18 |
|
|
while (size(args,1) > 0) |
19 |
|
|
if deblank(args(1,:)) == 'real*4' | deblank(args(1,:)) == 'float32' |
20 |
|
|
prec='real*4'; |
21 |
|
|
elseif deblank(args(1,:)) == 'real*8' | deblank(args(1,:)) == 'float64' |
22 |
|
|
prec='real*8'; |
23 |
|
|
else |
24 |
|
|
sprintf(['Optional argument ' args(1,:) ' is unknown']) |
25 |
|
|
return |
26 |
|
|
end |
27 |
|
|
args=args(2:end,:); |
28 |
|
|
end |
29 |
|
|
|
30 |
|
|
fid=fopen(sprintf('%s.bin',fn),'w',ieee); |
31 |
|
|
if fid<0 |
32 |
|
|
error('Unable to create file') |
33 |
|
|
end |
34 |
|
|
fwrite(fid,A,prec); |
35 |
|
|
fclose(fid); |