Saving variables in a function

2 visualizzazioni (ultimi 30 giorni)
Paul Rogers
Paul Rogers il 15 Feb 2021
Commentato: Walter Roberson il 15 Feb 2021
Hi everyone,
I am calling this function where I get in output the time t and the matrix y:
function [ dy ] = greitzer( t,y,P)
%% Energy Losses
deltahfi = P.kf.*(y(1).^2); %Impeller Friction losses
deltahfd = P.kfd.*(y(1).^2); %Diffuser Friction losses
%% Throttle valve's parameters
%% con lo stesso Delta da una parte e dall'altra
deltaideal = P.sigma*(P.U2^2); %Deltah0c,ideal
%% Lossees
deltahii = 0.5.*((P.U1-...
((cot(P.beta1b).*y(1))/(P.ro1*P.Ai))).^2); %Impeller Incidence Loss
deltahid = 0.5.*(((P.sigma*P.D2*P.U1)/P.D1)-...
((y(1).*cot(P.alfa2b))/(P.ro1*P.Ad))).^2; %Diffuser Incidence Loss
deltaloss = deltahii+...
deltahid+deltahfi+deltahfd;
% deltah0c = deltaideal-...
% deltaloss-deltan; %deltah0c
%% Efficiency
eta = deltaideal./(deltaideal+deltaloss)-P.deltan;
%% Pressure Rise in the Compressor
psi_c =((1+((eta.*deltaideal)/(P.T01*P.cp))).^(P.k/(P.k-1)));
%% Greitzer's System
gamma_T = @(t) P.Amplitude*sin(P.w*t)+P.b; % valve's function
dy = [ P.B*(psi_c-y(2));
(1/P.B.*(y(1)-gamma_T(t).*(y(2).^0.5))) ];
end
what I need now it that it also saves psi_c and gamma_T(t).*(y(2).^0.5)
I put the files in attached so you don't have to copy and paste

Risposta accettata

Walter Roberson
Walter Roberson il 15 Feb 2021
  2 Commenti
Paul Rogers
Paul Rogers il 15 Feb 2021
then basically once I get "t" and "y" I can evaluete them post-function after the call?

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Fluid Mechanics in Help Center e File Exchange

Prodotti


Release

R2014b

Community Treasure Hunt

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

Start Hunting!

Translated by