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

📄 eidorsdemo2.m

📁 实现对电磁层析模型的建立
💻 M
字号:
%EidorsDemo2 Demonstrates the use of 2D EIT Package with real measurements, potential in linear basis% EidorsDemo2 Demonstrates the use of 2D EIT Package with real measurement % using adjacent current injection patterns. The reconstructed image presents % static (absolute) resistivity values. % M. Vauhkonen 28.3.2000,% University of Kuopio, Department of Applied Physics, PO Box 1627,% FIN-70211 Kuopio, Finland, email: Marko.Vauhkonen@uku.fiload meshdata  % Data for two different meshes.NNode1=max(size(Node1));                      %The number of nodesNElement1=max(size(Element1));                %The number of elementNNode2=max(size(Node2));                      %The number of nodesNElement2=max(size(Element2));                %The number of elementsg1=reshape([Node1.Coordinate],2,NNode1)';H1=reshape([Element1.Topology],3,NElement1)';g2=reshape([Node2.Coordinate],2,NNode2)';H2=reshape([Element2.Topology],3,NElement2)';L=16;					  % The number of electrodes.z=0.005*ones(L,1);			  % Contact impedances.[II1,T]=Current(L,NNode2,'adj');	  % Adjacent current pattern.%Load some data measured with the EIT system built in Kuopioload bubble2.datmeas=bubble2(1280-255:1280);Uel=reshape(meas,16,16);Uel=RemoveVolt(Uel,L);%%             PROCEDURE TO SOLVE THE INVERSE PROBLEM           %%% Approximate the best homogenous resistivity.MeasPatt=-T;[Agrad,Kb,M,S,C]=FemMatrix(Node2,Element2,z);Agrad1=Agrad*Ind2;A=UpdateFemMatrix(Agrad,Kb,M,S,ones(NElement2,1));  % The system matrix.[Uref,p,r]=ForwardSolution(NNode2,NElement2,A,C,T,MeasPatt,'real');Urefel=Uref.Electrode;Urefel=RemoveVolt(Urefel,L);rho0=Urefel(:)\Uel(:);A=UpdateFemMatrix(Agrad,Kb,M,S,1/rho0*ones(NElement2,1));  % The system matrix.Uref=ForwardSolution(NNode2,NElement2,A,C,T,MeasPatt,'real',p,r);Urefel=Uref.Electrode(:);Urefel=RemoveVolt(Urefel,L);rho=rho0*ones(size(Ind2,2),1);J=Jacobian(Node2,Element2,Agrad1,Uref.Current,Uref.MeasField, ...           rho,'real');J=RemoveJacob(J,L);% Regularisation parameter and matrixalpha=0.001; R=MakeRegmatrix(Element1);iter=6;no=norm(Uel(:)-Urefel(:))^2+alpha*norm(R*rho)^2;for ii=1:iter rho=rho+(J'*J+alpha*R'*R)\(J'*(Uel(:)-Urefel(:))-alpha*R'*R*rho); no=[no;norm(Uel(:)-Urefel(:))^2+alpha*norm(R*rho)^2];             %Error norm rhobig=Ind2*rho; A=UpdateFemMatrix(Agrad,Kb,M,S,1./rhobig);  % The system matrix. Uref=ForwardSolution(NNode2,NElement2,A,C,T,MeasPatt,'real',p,r); Urefel=Uref.Electrode; Urefel=RemoveVolt(Urefel,L); J=Jacobian(Node2,Element2,Agrad1,Uref.Current,Uref.MeasField,rho,'real'); J=RemoveJacob(J,L); clf,Plotinvsol(rho,g1,H1);drawnow;end

⌨️ 快捷键说明

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