Changeset 937 for trunk/src/series


Ignore:
Timestamp:
Mar 30, 2016, 11:04:43 PM (8 years ago)
Author:
sommeria
Message:

various upgrades

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/series/merge_proj.m

    r924 r937  
    381381        end
    382382       
    383     else
    384         MergeData.ListGlobalAttribute={'Conventions','Project','InputFile_1','InputFile_end','nb_coord','nb_dim'};
     383    else   %output as netcdf files
     384        MergeData.ListGlobalAttribute={'Conventions','Project','InputFile_1','InputFile_end','NbCoord','NbDim'};
    385385        MergeData.Conventions='uvmat';
    386         MergeData.nb_coord=2;
    387         MergeData.nb_dim=2;
    388         dt=[];
    389         if isfield(Data{1},'dt')&& isnumeric(Data{1}.dt)
    390             dt=Data{1}.dt;
     386        MergeData.NbCoord=2;
     387        MergeData.NbDim=2;
     388        % time interval of PIV
     389        Dt=[];
     390        if isfield(Data{1},'Dt')&& isnumeric(Data{1}.Dt)
     391            Dt=Data{1}.Dt;
    391392        end
    392393        for iview =2:numel(Data)
    393             if ~(isfield(Data{iview},'dt')&& isequal(Data{iview}.dt,dt))
    394                 dt=[];%dt not the same for all fields
     394            if ~(isfield(Data{iview},'Dt')&& isequal(Data{iview}.Dt,Dt))
     395                Dt=[];%dt not the same for all fields
    395396            end
    396397        end
     
    399400            MergeData.Time=timeread;
    400401        end
    401         if ~isempty(dt)
    402             MergeData.ListGlobalAttribute=[MergeData.ListGlobalAttribute {'dt'}];
    403             MergeData.dt=dt;
     402        % position of projection plane
     403        if isfield(Data{1},'ProjObjectCoord')&& isfield(Data{1},'ProjObjectAngle')
     404            'test'
     405            ProjObjectCoord=Data{1}.ProjObjectCoord;
     406            ProjObjectAngle=Data{1}.ProjObjectAngle;
     407            for iview =2:numel(Data)
     408                if ~(isfield(Data{iview},'ProjObjectCoord')&& isequal(Data{iview}.ProjObjectCoord,ProjObjectCoord))...
     409                        ||~(isfield(Data{iview},'ProjObjectAngle')&& isequal(Data{iview}.ProjObjectAngle,ProjObjectAngle))
     410                    ProjObjectCoord=[];%dt not the same for all fields
     411                end
     412            end
     413            if ~isempty(ProjObjectCoord)
     414                MergeData.ListGlobalAttribute=[MergeData.ListGlobalAttribute {'ProjObjectCoord'} {'ProjObjectAngle'}];
     415                MergeData.ProjObjectCoord=ProjObjectCoord;
     416                MergeData.ProjObjectAngle=ProjObjectAngle;
     417            end
     418        end
     419        % coord unit
     420        if isfield(Data{1},'CoordUnit')
     421            CoordUnit=Data{1}.CoordUnit;
     422            for iview =2:numel(Data)
     423                if ~(isfield(Data{iview},'CoordUnit')&& isequal(Data{iview}.CoordUnit,CoordUnit))
     424                    CoordUnit=[];%CoordUnit not the same for all fields
     425                end
     426            end
     427            if ~isempty(CoordUnit)
     428                MergeData.ListGlobalAttribute=[MergeData.ListGlobalAttribute {'CoordUnit'}];
     429                MergeData.CoordUnit=CoordUnit;
     430            end
     431        end
     432        % time unit
     433        if isfield(Data{1},'TimeUnit')
     434            TimeUnit=Data{1}.TimeUnit;
     435            for iview =2:numel(Data)
     436                if ~(isfield(Data{iview},'TimeUnit')&& isequal(Data{iview}.TimeUnit,TimeUnit))
     437                    TimeUnit=[];%TimeUnit not the same for all fields
     438                end
     439            end
     440            if ~isempty(TimeUnit)
     441                MergeData.ListGlobalAttribute=[MergeData.ListGlobalAttribute {'TimeUnit'}];
     442                MergeData.TimeUnit=TimeUnit;
     443            end
    404444        end
    405445        error=struct2nc(OutputFile,MergeData);%save result file
Note: See TracChangeset for help on using the changeset viewer.