How to change m-file functions to a block using level 2 m-file s-function

1 次查看(过去 30 天)
hi i have written the m-file for a system of 4 partial differential equations using pdepe. and i got the results from the m-file. the question is how to use this m-file that is consist of some functions in level 2 m-file s function simulink block???
  1 个评论
Muhmmed
Muhmmed 2013-6-20
the m file is:
function [c,f,s] = pdex4pde(x,t,u,DuDx)
Te=393.15;
k1 = -12677.76*exp(-(24.21/(8.314*10^(-3)*Te))); k2 =219.5; k3 = 50390.52; k4 =-0.55; k5 = - 44684.159; k6 = 50390.52; k7 =0.0001444; k8 =22.6 *10^(5); k9=372*exp(-(24.21/(8.314*10^(-3)*Te))); k10=0.0526; k11=2.2502;
Q = 0.6003*10^(-8)*(Te^4-u(4)^4);
c = [1; 1; 1; 1; 1];
f = [(k1*k4*u(5))* DuDx; (k1*k2*u(5)-k3*u(2))* DuDx; -(k6*u(3))* DuDx; (-k7/(1+u(1))*k1*k8*u(5))* DuDx; k9*DuDx(5)* DuDx]; hg=205200; % 60
F=(u(3)-u(4));
s = [0; 0; k5*F; (k7/(1+u(2)))*(hg*F+Q); 0];
function u0 = pdex4ic(x)
u0 = [0.5; 8.52; 313.15; 303.15; 1];
function [pl,ql,pr,qr] = pdex4bc(xl,ul,xr,ur,t)
pl = [ul(1); ul(2); ul(3); ul(4); ul(5)]; ql = [1; 0; 1; 0; 1]; pr = [ur(1); ur(2); ur(3); ur(4); ur(5)]; qr = [0; 0; 0; 0; 0];
function pdex4 clc clear
m1=0;
ux0=8.52;
uy0=0.5;
utg0=300;
uts0=298;
uw0 = 0.1;
x = linspace(0,10,20); t = linspace(0,30,20);
sol = pdepe(m1,@pdex4pde,@pdex4ic,@pdex4bc,x,t);
u1 = sol(:,:,1); u2 = sol(:,:,2); u3 = sol(:,:,3); u4 = sol(:,:,4); u5 = sol(:,:,5);
x0=5;
X=sol(:,x0,2); Y=sol(:,x0,1); Tg=utg0+(utg0-sol(:,x0,3)); Ts=uts0+(uts0-sol(:,x0,4)); W=sol(:,x0,5);
figure plot(t,X,'--k', 'LineWidth', 1); set(gca,'FontSize',12) title('\bf X(1,t)'); xlabel('\bf Time t');
figure
hold on
plot(t,Y,'--r', 'LineWidth', 1);
set(gca,'FontSize',12)
title('\bf Y(1,t)');
xlabel('\bf Time t');
figure
plot(t,Tg,'--g', 'LineWidth', 1);
set(gca,'FontSize',12)
title('\bf Tg(1,t)');
xlabel('\bf Time t');
figure
plot(t,Ts,'--k', 'LineWidth', 1);
set(gca,'FontSize',12)
title('\bf Ts(1,t)');
xlabel('\bf Time t');
figure plot(t,W,'--k', 'LineWidth', 1); set(gca,'FontSize',12) title('\bf W(1,t)'); xlabel('\bf Time t');

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 General Applications 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by