%Simulation einer isotherme Zustandsänderung

%Aufgabe:1a
%dU=2/3*m*R*dT=0
%dQ=dW=pdV=p*Vpunktdt wenn isotherm
%Qpunktdt=p*Vpunktdt mit p=(m*R*T/V)
%Vpunktdt=(Qpunkt/m*R*T)*Vdt
%V(t)-V(0)=(Qpunkt/m*R*T)*Integral(0 bis t)(V(t')dt') 
%V(t)=(Qpunkt/m*R*T)*Integral(0 bis t)(V(t'dt')+V0 
%V=(Qpunkt/m*R*T)*(V(t))


%Aufgabe:1b
clear all;

global R T0 QPunkt V0 p0 t m V1 e
R=287.058;
V0=1;
V1=0.0001;
QPunkt=100000; 
T0=293.15;
p0=100000;
m=(p0*V0)/(R*T0);
t=200;
e=exp(1);

Tsim=t;

simulation_opt=simset('solver','ode5','FixedStep',1e-3);
sim('IsoTherm_mod1',Tsim,simulation_opt);

figure(1);
plot(ans.Volumen,'k-');
grid on;
xlabel 'Zeit/s';
ylabel 'Volumen/dm^3';
title 'Zeitabhängige Volumenänderung';

%Aufgabe:1c
%Die Funktion fält exponentielle.

%Aufgabe:1d
%p1=(p0*V0)/V1
figure(2);
plot(ans.Druck,'r-');
grid on;
xlabel 'Zeit/s';
ylabel 'Druck/Pa';
title 'Zeitabhängige Druckänderung';

%Aufgabe:1e
figure(3);
plot(ans.Druck,ans.Druck,'k-');
grid on;
xlabel 'Volumen/dm^3';
ylabel 'Druck/Pa';
title 'Druck-Volumen Diagramm';

%Aufgabe:1f
%dQ = dW = pdV = mRT*(dV/V)
%Q(t)=mRT*(V(t)/V0)
%Q=m*R*T*ln(V/V0)

%Aufgabe:1e
%plot(Heizleistung);
%grid on
%xlabel 'Zeit/s';
%ylabel 'Heizleistung/W';
%title 'Heizleistung';


function y=Volumen(u)
global R QPunkt m T0 V0 t
t=u(1);
Volumen=(QPunkt/(m*R*T0))*(V0/t);
y=Volumen;
end

function z=Druck(u)
global p0 V0
Volumen=u(1);
Druck=((p0*V0)/Volumen);
z=Druck;
end



