Changeset 9736


Ignore:
Timestamp:
09/09/11 15:47:56 (14 years ago)
Author:
seroussi
Message:

fixed failures

Location:
issm/trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/m/model/mesh/meshadaptation.m

    r9734 r9736  
    9292disp(sprintf('      initial number of element: %i', md.mesh.numberofelements))
    9393md2=meshrefine(md,full(metric));
    94 disp(sprintf('      new number of elements:    %i', md2.numberofelements))
     94disp(sprintf('      new number of elements:    %i', md2.mesh.numberofelements))
  • issm/trunk/src/m/model/mesh/rifts/meshaddrifts.m

    r9734 r9736  
    3535       
    3636        %create domain of md2 model:
    37         md2.segments=contourenvelope(md2,'Meshaddrifts.Contour.exp');
    38         domain_index=md2.segments(1,1:2);
     37        md2.mesh.segments=contourenvelope(md2,'Meshaddrifts.Contour.exp');
     38        domain_index=md2.mesh.segments(1,1:2);
    3939        while (domain_index(end)~=domain_index(1)),
    40                 pos=find(md2.segments(:,1)==domain_index(end));
    41                 domain_index(end+1)=md2.segments(pos,2);
     40                pos=find(md2.mesh.segments(:,1)==domain_index(end));
     41                domain_index(end+1)=md2.mesh.segments(pos,2);
    4242        end
    4343       
    44         domain.x=md2.x(domain_index);
    45         domain.y=md2.y(domain_index);
     44        domain.x=md2.mesh.x(domain_index);
     45        domain.y=md2.mesh.y(domain_index);
    4646        domain.name='Meshaddrifts.Domain.exp';
    4747        domain.density=1;
     
    5757        %plug md2 mesh into md mesh:
    5858        [md.mesh.elements,md.mesh.x,md.mesh.y,md.mesh.z,md.mesh.numberofelements,md.mesh.numberofvertices,elconv,nodeconv,elconv2,nodeconv2]=meshplug(md.mesh.elements,md.mesh.x,md.mesh.y,md.mesh.z,...
    59                                                                 md2.mesh.elements,md2.x,md2.y,md2.z,md2.extractednodes,md2.extractedelements,domain_index);
     59                                                                md2.mesh.elements,md2.mesh.x,md2.mesh.y,md2.mesh.z,md2.extractednodes,md2.extractedelements,domain_index);
    6060
    6161        %update md2 rifts using elconv and nodeconv, and plug them into md:
  • issm/trunk/src/m/model/modelextract.m

    r9733 r9736  
    3939spc_elem=find(~flag_elem);
    4040spc_node=sort(unique(md1.mesh.elements(spc_elem,:)));
    41 flag=ones(md1.numberofnodes,1);
     41flag=ones(md1.mesh.numberofvertices,1);
    4242flag(spc_node)=0;
    4343pos=find(sum(flag(md1.mesh.elements),2)==0);
     
    4949
    5050%keep track of some fields
    51 numberofnodes1=md1.numberofnodes;
    52 numberofelements1=md1.numberofelements;
    53 numberofnodes2=length(pos_node);
     51numberofvertices1=md1.mesh.numberofvertices;
     52numberofelements1=md1.mesh.numberofelements;
     53numberofvertices2=length(pos_node);
    5454numberofelements2=length(pos_elem);
    55 flag_node=zeros(numberofnodes1,1);
     55flag_node=zeros(numberofvertices1,1);
    5656flag_node(pos_node)=1;
    5757
     
    5959Pelem=zeros(numberofelements1,1);
    6060Pelem(pos_elem)=[1:numberofelements2]';
    61 Pnode=zeros(numberofnodes1,1);
    62 Pnode(pos_node)=[1:numberofnodes2]';
     61Pnode=zeros(numberofvertices1,1);
     62Pnode(pos_node)=[1:numberofvertices2]';
    6363
    6464%renumber the elements (some node won't exist anymore)
     
    6868elements_2(:,2)=Pnode(elements_2(:,2));
    6969elements_2(:,3)=Pnode(elements_2(:,3));
    70 if md1.dim==3,
     70if md1.mesh.dimension==3,
    7171        elements_2(:,4)=Pnode(elements_2(:,4));
    7272        elements_2(:,5)=Pnode(elements_2(:,5));
     
    9494                                fieldsize=size(field);
    9595                                %size = number of nodes * n
    96                                 if fieldsize(1)==numberofnodes1
     96                                if fieldsize(1)==numberofvertices1
    9797                                        md2.(model_fields{i}).(object_fields{j})=field(pos_node,:);
    98                                 elseif (fieldsize(1)==numberofnodes1+1)
     98                                elseif (fieldsize(1)==numberofvertices1+1)
    9999                                        md2.(model_fields(i)).(object_fields{j})=[field(pos_node,:); field(end,:)];
    100100                                        %size = number of elements * n
     
    105105                else
    106106                        %size = number of nodes * n
    107                         if fieldsize(1)==numberofnodes1
     107                        if fieldsize(1)==numberofvertices1
    108108                                md2.(model_fields{i})=field(pos_node,:);
    109                         elseif (fieldsize(1)==numberofnodes1+1)
     109                        elseif (fieldsize(1)==numberofvertices1+1)
    110110                                md2.(model_fields(i))=[field(pos_node,:); field(end,:)];
    111111                                %size = number of elements * n
     
    119119
    120120        %Mesh
    121         md2.numberofelements=numberofelements2;
    122         md2.numberofnodes=numberofnodes2;
     121        md2.mesh.numberofelements=numberofelements2;
     122        md2.mesh.numberofvertices=numberofvertices2;
    123123        md2.mesh.elements=elements_2;
    124124
    125125        %mesh.uppervertex mesh.lowervertex
    126         if md1.dim==3
     126        if md1.mesh.dimension==3
    127127                md2.mesh.uppervertex=md1.mesh.uppervertex(pos_node);
    128128                pos=find(~isnan(md2.mesh.uppervertex));
     
    143143
    144144        %Initial 2d mesh
    145         if md1.dim==3
    146                 flag_elem_2d=flag_elem(1:md1.numberofelements2d);
     145        if md1.mesh.dimension==3
     146                flag_elem_2d=flag_elem(1:md1.mesh.numberofelements2d);
    147147                pos_elem_2d=find(flag_elem_2d);
    148                 flag_node_2d=flag_node(1:md1.numberofnodes2d);
     148                flag_node_2d=flag_node(1:md1.mesh.numberofvertices2d);
    149149                pos_node_2d=find(flag_node_2d);
    150150
    151                 md2.numberofelements2d=length(pos_elem_2d);
    152                 md2.numberofnodes2d=length(pos_node_2d);
     151                md2.mesh.numberofelements2d=length(pos_elem_2d);
     152                md2.mesh.numberofvertices2d=length(pos_node_2d);
    153153                md2.mesh.elements2d=md1.mesh.elements2d(pos_elem_2d,:);
    154154                md2.mesh.elements2d(:,1)=Pnode(md2.mesh.elements2d(:,1));
     
    156156                md2.mesh.elements2d(:,3)=Pnode(md2.mesh.elements2d(:,3));
    157157
    158                 md2.x2d=md1.x(pos_node_2d);
    159                 md2.y2d=md1.y(pos_node_2d);
     158                md2.mesh.x2d=md1.mesh.x(pos_node_2d);
     159                md2.mesh.y2d=md1.mesh.y(pos_node_2d);
    160160        end
    161161
     
    202202
    203203        %recreate segments
    204         if md1.dim==2
    205                 md2.mesh.vertexconnectivity=NodeConnectivity(md2.mesh.elements,md2.numberofnodes);
     204        if md1.mesh.dimension==2
     205                md2.mesh.vertexconnectivity=NodeConnectivity(md2.mesh.elements,md2.mesh.numberofvertices);
    206206                md2.mesh.elementconnectivity=ElementConnectivity(md2.mesh.elements,md2.mesh.vertexconnectivity);
    207                 md2.segments=contourenvelope(md2);
    208                 md2.mesh.vertexonboundary=zeros(numberofnodes2,1); md2.nodeonboundary(md2.segments(:,1:2))=1;
     207                md2.mesh.segments=contourenvelope(md2);
     208                md2.mesh.vertexonboundary=zeros(numberofvertices2,1); md2.mesh.vertexonboundary(md2.mesh.segments(:,1:2))=1;
    209209        end
    210210
     
    239239                md2.diagnostic.icefront(:,2)=Pnode(md1.diagnostic.icefront(:,2));
    240240                md2.diagnostic.icefront(:,end-1)=Pelem(md1.diagnostic.icefront(:,end-1));
    241                 if md1.dim==3
     241                if md1.mesh.dimension==3
    242242                        md2.diagnostic.icefront(:,3)=Pnode(md1.diagnostic.icefront(:,3));
    243243                        md2.diagnostic.icefront(:,4)=Pnode(md1.diagnostic.icefront(:,4));
     
    255255                        for j=1:length(solutionsubfields),
    256256                                field=md1.results.(solutionfields(i)).(solutionsubfields(j));
    257                                 if length(field)==numberofnodes1,
     257                                if length(field)==numberofvertices1,
    258258                                        md2.results.(solutionfields(i)).(solutionsubfields(j))=field(pos_node);
    259259                                elseif length(field)==numberofelements1,
  • issm/trunk/test/NightlyRun/test527.m

    r9734 r9736  
    1818md.miscellaneous.dummy=metric;
    1919md2=bamg(md,'metric',md.miscellaneous.dummy,'hmin',1000,'hmax',20000,'gradation',3,'geometricalmetric',1);
    20 x3=md2.x;
    21 y3=md2.y;
     20x3=md2.mesh.x;
     21y3=md2.mesh.y;
    2222
    2323%refine existing mesh 2
    2424md2=bamg(md,'metric',md.miscellaneous.dummy,'hmin',1000,'hmax',20000,'gradation',3,'geometricalmetric',1,'anisomax',1);
    25 x4=md2.x;
    26 y4=md2.y;
     25x4=md2.mesh.x;
     26y4=md2.mesh.y;
    2727
    2828%refine existing mesh 3
     
    3030hVertices(find(md.mesh.vertexonboundary))=500;
    3131md2=bamg(md,'metric',md.miscellaneous.dummy,'hmin',1000,'hmax',20000,'gradation',3,'geometricalmetric',1,'anisomax',1,'hVertices',hVertices);
    32 x5=md2.x;
    33 y5=md2.y;
     32x5=md2.mesh.x;
     33y5=md2.mesh.y;
    3434
    3535%refine existing mesh 4
    3636md2=bamg(md,'field',md.inversion.vy_obs,'hmin',1000,'hmax',20000,'gradation',3,'geometricalmetric',1,'Hessiantype',0,'err',1);
    37 x6=md2.x;
    38 y6=md2.y;
     37x6=md2.mesh.x;
     38y6=md2.mesh.y;
    3939
    4040%refine existing mesh 5
    4141md2=bamg(md,'field',[md.inversion.vy_obs md.geometry.thickness],'hmin',1000,'hmax',20000,'gradation',3,'geometricalmetric',1,'Hessiantype',1,'err',[10 100]);
    42 x7=md2.x;
    43 y7=md2.y;
     42x7=md2.mesh.x;
     43y7=md2.mesh.y;
    4444
    4545%Fields and tolerances to track changes
Note: See TracChangeset for help on using the changeset viewer.