📄 jacobian_3d.sci
字号:
function [J]=jacobian_3d(I,elec,vtx,%simp,gnd_ind,mat_ref,zc,IntGrad,v_f,df,tol,sym)J=[];//function [J] = jacobian_3d(I,elec,vtx,simp,gnd_ind,mat_ref,zc,IntGrad,v_f,df,tol,sym);// //This function calculates the Jacobian (sensitivity) matrix of the system// // // //I = The currents used//elec = the electrodes matrix//vtx = The vertices matrix//simp = The simplices matrix//gnd_ind = The ground index (node)//mat_ref = The reference conductivity vector//zc = The electrode contact impedance vector//IntGrad = The integrals of the gradients//v_f = The measurement fields//df = Measurements per current pattern as used in v_f //tol = Tolerance //J = The Jacobian (sensitivity) matrix with respect to conductivity [vr,vc] = size(vtx);[sr,sc] = size(%simp); el_no = size(elec,1); //! mtlb_sum(df) may be replaced by //! sum(df) if dfis a vector//! sum(df,1) if dfis a matrixif mtlb_sum(df)~=size(v_f,2) then error('Mismatched data input');end [E,pp] = fem_master_full(vtx,%simp,mat_ref,gnd_ind,elec,zc,sym); V = forward_solver(vtx,E,I,tol,pp); //Select the part referring to the interior nodesV = V(1:vr,:);v_f = v_f(1:vr,:); for k = 1:size(%simp,1) Jcol = []; for p = 1:size(V,2) for m = 1:df(p) JJ = (v_f(:,sum(df(1:p-1))+m).')*matrix(IntGrad(:,k),vr,vr)*V(:,p); // Jcol = [Jcol;JJ]; end end J(:,k) = Jcol;end //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%// This is part of the EIDORS suite.// Copyright (c) N. Polydorides and W.R.B. Lionheart 2001// Copying permitted under terms of GNU GPL// See enclosed file gpl.html for details.// EIDORS 3D version 1.0// MATLAB version 5.3 R11//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -