Ignore:
Timestamp:
07/16/11 01:38:53 (14 years ago)
Author:
Eric.Larour
Message:

Added MaxSteadystateIterations, to control steady state a little bit better.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/m/model/partition/AreaAverageOntoPartition.m

    r5241 r9013  
    1 function partvector=AreaAverageOntoPartition(md,vector)
     1function partvector=AreaAverageOntoPartition(md,vector,layer)
    22%AREAAVERAGEONTOPARTITION  compute partition values for a certain vector expressed on the vertices of the mesh. Use area weighted average.
    33%
    44%   Usage: average=AreaAverageOntoPartition(md,vector)
     5%           average=AreaAverageOntoPartition(md,vector,layer) %if in 3D, chose which layer is partitioned
    56%
    67
    7 %ok, first check that part is Matlab matlab indexed
     8%some checks
     9if md.dim==3,
     10        if nargin~=3,
     11                error('layer should be provided onto which Area Averaging occurs');
     12        end
     13        %save 3D model
     14        md3d=md;
     15       
     16        md.elements=md.elements2d;
     17        md.x=md.x2d;
     18        md.y=md.y2d;
     19        md.numberofnodes=md.numberofnodes2d;
     20        md.numberofelements=md.numberofelements2d;
     21        md.vwgt=[];
     22        md.nodeconnectivity=[];
     23
     24        %run connectivity routine
     25        md=adjacency(md);
     26
     27        %finally, project vector:
     28        vector=project2d(md3d,vector,layer);
     29        md.part=project2d(md3d,md3d.part,layer);
     30end
     31
     32%ok, first check that part is Matlab indexed
    833part=md.part+1;
     34
     35%some check:
     36if md.npart~=max(part),
     37        error('AreaAverageOntoPartition error message: ''npart'' should be equal to max(md.part)');
     38end
    939
    1040%initialize output
     
    1747        partvector(i)=sum(weightedvector(pos))/sum(md.vwgt(pos));
    1848end
     49
     50%in 3D, restore 3D model:
     51if md.dim==3,
     52        md=md3d;
     53end
Note: See TracChangeset for help on using the changeset viewer.