⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mygrid.m

📁 C++编译指导
💻 M
字号:
function mesh=mygrid(eps)

N=4;
 x=zeros(N+1,1);y=zeros(N+1,1);trig=zeros(2*N^2, 3);
nod=zeros((N+1)^2, 2);bry=zeros(4*N,2);
tx=min(1/2,2*eps*log(N));ty= min(1/4,2*eps^(1/2)*log(N));

for i=2:(N+1)
  if  i <= N/2+1
        x(i) = x(i-1)+2*(1-tx)/N;
  else
        x(i)= x(i-1)+2*tx/N;
  end
  if  i <=N/4+1
        y(i) = y(i-1)+4*ty/N;
  else
    if  i <=3*N/4+1
         y(i)= y(i-1)+2*(1-2*ty)/N;
    else
         y(i) = y(i-1)+4*ty/N;
    end
  end
end



for k=1: (N+1)^2
  if  mod(k,N+1)==0
     nod(k,:)=[x(N+1),y(k/(N+1))];
  else
     nod(k,:)=[x(mod(k,N+1)),y((k- mod(k,N+1))/(N+1)+1)];
  end
end


for k=1: 2*N^2
  if   mod(k,2)==0
    trig(k,:)=[k/2+((k)/2-mod((k)/2,N+1))/(N+1),k/2+1+((k)/2-mod((k)/2,N+1))/(N+1), k/2+N+2+((k)/2-mod((k)/2,N+1))/(N+1)];
  else
    trig(k,:)=[(k+1)/2+((k+1)/2-mod((k+1)/2,N+1))/(N+1),(k+1)/2+((k+1)/2-mod((k+1)/2,N+1))/(N+1)+N+2, (k+1)/2+((k+1)/2-mod((k+1)/2,N+1))/(N+1)+N+1];
  end
end



for i=1:N
   bry(i,:)=[i,i+1];
   bry(N+i,:)=[i*(N+1),(i+1)*(N+1)];
   bry(2*N+i,:)=[(N+1)^2+1-i, (N+1)^2-i];
   bry(3*N+i,:)=[1+(N+1-i)*(N+1), 1+(N-i)*(N+1)];
end
nod
trig
bry

mesh=getmesh(nod, trig , bry ,[])

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -