|
|
Linear steigender Flow in Matlab programmieren |
|
|
Verfasst am: 14.09.2022, 13:27
Titel: Linear steigender Flow in Matlab programmieren
|
|
|
|
|
Hallo zusammen! Ich habe eine Frage. Ich bin gerade dabei alte Aufgaben meines Studiengangs zu bearbeiten und weiss nicht, wie ich weiter programmieren kann.
Es geht darum, einen bereits bestehenden Quellcode vollständig zu Programmieren.
Der Code soll im Equationsblock vervollständigt werden. So sieht es aus:
component vc_cmv_sourceLin
% VC-CMV Source Linear Final
% The VC-CMV linear source maintains a linear flow through
% it during the inspiration time, independent of the pressure across its
% terminals. After the inspiration time, the output flow becomes zero.
% This behaviour is repeated after a breathing period.
nodes
pv = ventilation; % +:top
nv = ventilation; % -:bottom
end
variables(Access=protected)
f = { 0, 'lps' }; % Flow
p = { 0, 'mbar' }; % Pressure
saw = {0 ,'1' };
end
branches
f : pv.f -> nv.f;
end
parameters
amp = { 1, 'lps' }; % peak amplitude
T_breathing = { 5, 's' }; % breathing period
insp = { 1, 's' }; % inspiration duration
end
parameters(Hidden=true)
omega = { 0, 'rad/s' }; % Angular frequency
end
function setup
omega = {2*pi,'rad'}/(2*insp);
end
equations
saw == mod(time/{ 1, 's' },T_breathing/{ 1, 's' });
*
*
*
*
*
assert(T_breathing>0) %Atemperiode größer Null
assert(insp>0) %Inspiration größer Null
assert(f >= 0) %Flow größer-gleich Null
assert(insp < T_breathing) %Inspiration kleiner als die Atemperiode
p1 == pv1.p - nv1.p;
end
end
Da wo sich die Sterne ('*') befinden, soll der Code nun vervollständigt werden.
Das ist die Aufgabenstellung dazu:
Das Element "vc_cmv_sourceLin.ssc beschreibt ein Quellenelement, das einen linear ansteigenden Flow erzeugt. Ergänzen Sie den equations-Block des Elements, der folgenden Anforderungen genügen soll.
- Solange "saw" kleiner als "insp/{1,'s'} ist, wird ein linear ansteigender Flow ausgegeben, dessen Maximum "amp" eingestellt werden kann.
- In allen anderen Fällen soll der ausgegebene Flow 0 lps betragen
- Stellen Sie sicher dass der eingestellte Flow, die Dauer der Inspiration sowie die Atemperiode keine negativen Werte annehmen kann.
- Stellen Sie sicher, dass die Dauer der Inspiration kleiner ist als die Atemperiode
Wichtig sind eigentlich die ersten beide Punkte (fettgedruckt). Ich hoffe jemand kann mir da weiterhelfen!
|
|
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|