Info

此问题已关闭。 请重新打开它进行编辑或回答。

How can I propagate the voltage memebrane time evolution of pde parabolic ecuation. Taken into account that each point of the mesh is a matrix(T_Y) that results from the solution of ODE15s equation. I am not able to make it propagate.

1 次查看(过去 30 天)
[p,e,t] = initmesh('myrectangleg'); [p,e,t] = refinemesh('myrectangleg', p,e,t); Condicion_Inicial_Modelo_Auricula; % Creates a column y0 with initial conditions (62x1) np=size(p,2); % Size pf p ny=size(y0,1); % Size of y0 for n=1:np num_punt_tot(1,n)=n; % end num_punt_excit = find((p(1,:)-0.5).^2 + (p(2,:)-0.5).^2 Area with excited points num_punt_tot_sin_excit=num_punt_tot;% for g=1:size(num_punt_excit,2) % num_punt_tot_sin_excit(find(num_punt_tot_sin_excit==num_punt_excit(g)))=[]; % Not ecited area end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% CalculaModel_Auricula % It carries out the temporal model of action potential cardiac model and creates a [T Y] (218x62), solve with ODE15s %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% nT=size(T,1); T_Y=[T Y]; % for q=1:nT Y0(q,:)=y0'; % end T_Y0=[T Y0]; % Initial conditions in NOT EXCITED area for w=[num_punt_excit] HM_T_Y_P(:,:,w)=T_Y; % It creates Hipermatrix (time x paramiters x point)-(218x62xexcited_points) end for i=[num_punt_tot_sin_excit] HM_T_Y_P(:,:,i)=T_Y0; % It creates Hipermatrix (time x paramiters x point)->(218x62xNOTexcited_points) end for tiempo_simula_T=1:nT % d =0.0001;% 1 c = 0.001;% 1 a = 0;% 0 g = 0; tlist=[T(tiempo_simula_T+1) T(tiempo_simula_T+3)]; u1 = parabolic(HM_T_Y_P(tiempo_simula_T+1,40,:),tlist, 'myrectangleb', p,e,t, c,a,g,d); %'40' is de location membrane voltage, that should propagate
for v=1:np
HM_T_Y_P(tiempo_simula_T+1,40,v)=u1(v,1); % Result of parabolic is relocated in the hipermatrix
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% From here, it begins to calculate the time evolution of the action
% potencial. To do this, ODE15s solves de y0(1x62)with new membrane
% voltage propagated with parabolic. And it crries it out in every
% location (697 points
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
global AF ISO Bck_I_kur Bck_Iks I_app stim_period
AF=0;
Bck_I_kur=1;
Bck_Iks=1;
ISO=0;
stim_period=0;
f=@Modelo_AURICULA_V5;
I=@Calcula_I_app_Nula;
tspan=[T(tiempo_simula_T) T(tiempo_simula_T+1)];
options = odeset('MaxStep',2,'InitialStep',0.25); %adjusted for ModelAuricula
conditions=ones(7,1);
for pp=[num_punt_tot_sin_excit]
if HM_T_Y_P((tiempo_simula_T+1),40,pp)>(-73.54 +2)
[Tp,Yp,] = ode15s(@(t,Y)f(t,Y,conditions,AF,ISO,Bck_I_kur,Bck_Iks,I(t,stim_period)),tspan,HM_T_Y_P((tiempo_simula_Grandi+1),2:63,pp),options);
for py=1:size(Yp,2)
HM_T_Y_P((tiempo_simula_T+1),py+1,pp)=Yp(end,py);
end
% for i=1:length(T)
[ydot,T(tiempo_simula_T+1),I_tot(tiempo_simula_T+1)]=f(Tp(tiempo_simula_Grandi+1),Yp(tiempo_simula_Grandi+1,:));
I_totp(tiempo_simula_T+1,pp)=I_tot(tiempo_simula_T+1);
% end
else
end
end
pdesurf(p,t,u1);
pause(.1)
end

回答(0 个)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by