Home > Src > Level_2 > liste.m

liste

PURPOSE ^

LISTE Assembles lists of internal, boundary, interface nodes.

SYNOPSIS ^

function [lbor,lint,lintint,lgamma,ifro]=liste(ifro,nov);

DESCRIPTION ^

 LISTE Assembles lists of internal, boundary, interface nodes.

 All lists are referred to global ordering on Omega

 Input : ifro = column array of length noe=nov(npdx*npdy,ne):
            if (x_i,y_i) is internal to Omega then ifro(i)=0,
            if (x_i,y_i) is on \partial\Omega and Dirichlet boundary
            condition is imposed there, then ifro(i)=1,
            if (x_i,y_i) is on \partial\Omega and Neumann boundary
            condition is imposed there, then ifro(i)=31,
         nov = local -global map, previously generated by cosnov_2d

 Output:
        lbor= list of boundary nodes
        lint= list of internal nodes
        lintint= list of internal nodes which are internal to spectral elements
        lgamma= list of internal nodes which are on the interface between 
                spectral elements


 Reference: CHQZ2 = C. Canuto, M.Y. Hussaini, A. Quarteroni, T.A. Zang,
                    "Spectral Methods. Fundamentals in Single Domains"
                    Springer Verlag, Berlin Heidelberg New York, 2006.

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function [lbor,lint,lintint,lgamma,ifro]=liste(ifro,nov);
0002 % LISTE Assembles lists of internal, boundary, interface nodes.
0003 %
0004 % All lists are referred to global ordering on Omega
0005 %
0006 % Input : ifro = column array of length noe=nov(npdx*npdy,ne):
0007 %            if (x_i,y_i) is internal to Omega then ifro(i)=0,
0008 %            if (x_i,y_i) is on \partial\Omega and Dirichlet boundary
0009 %            condition is imposed there, then ifro(i)=1,
0010 %            if (x_i,y_i) is on \partial\Omega and Neumann boundary
0011 %            condition is imposed there, then ifro(i)=31,
0012 %         nov = local -global map, previously generated by cosnov_2d
0013 %
0014 % Output:
0015 %        lbor= list of boundary nodes
0016 %        lint= list of internal nodes
0017 %        lintint= list of internal nodes which are internal to spectral elements
0018 %        lgamma= list of internal nodes which are on the interface between
0019 %                spectral elements
0020 %
0021 %
0022 % Reference: CHQZ2 = C. Canuto, M.Y. Hussaini, A. Quarteroni, T.A. Zang,
0023 %                    "Spectral Methods. Fundamentals in Single Domains"
0024 %                    Springer Verlag, Berlin Heidelberg New York, 2006.
0025 
0026 %   Written by Paola Gervasio
0027 %   $Date: 2007/04/01$
0028 
0029 [ldnov,ne]=size(nov);
0030 noe=nov(ldnov,ne);
0031 v=zeros(noe,1);
0032 for ie=1:ne
0033 for i=1:ldnov
0034 ip=nov(i,ie);
0035 v(ip)=v(ip)+1;
0036 end
0037 end
0038 
0039 
0040 lint=[];lbor=[];lgamma=[]; lintint=[];
0041 for i=1:noe
0042 if(ifro(i)==1)
0043 lbor=[lbor;i];
0044 else
0045 lint=[lint;i];
0046 end
0047 if(v(i)>1 & ifro(i)==0)
0048 ifro(i)=-1;
0049 end
0050 end
0051 
0052 for i=1:length(lint)
0053 if(ifro(lint(i))==-1)
0054 lgamma=[lgamma;i];
0055 else
0056 lintint=[lintint;i];
0057 end
0058 end
0059 
0060 return

Generated on Fri 21-Sep-2007 10:07:00 by m2html © 2003