Puzzel Puzzels
Gebruikersavatar
ukster
Artikelen: 0
Berichten: 5.587
Lid geworden op: za 28 nov 2015, 10:42

Re: state space

ik blijf het vreemd vinden.
netwerk
netwerk 3094 keer bekeken
ik gebruik voor dit netwerk geen initial conditions (volgens mij default nul)

de responsplot
stapresponsie
stapresponsie 3093 keer bekeken
vanuit het state space model
statespacemodel
statespacemodel 3093 keer bekeken
en is exact gelijk aan die van het professionele simulatiesoftwarepakket Microcap (stapresponsie 1V)

ads

Steun Sciencetalk Western Digital Elements Portable - Externe harde schijf - 2TB

Western Digital Elements Portable - Externe harde schijf - 2TB

Bekijk product

Steun Sciencetalk Kobo Clara Colour - E-reader - 6 inch kleurenscherm - 16GB - Luisterboeken - Zwart

Kobo Clara Colour - E-reader - 6 inch kleurenscherm - 16GB - Luisterboeken - Zwart

Bekijk product

Steun Sciencetalk Libelle Marjolein Bastin Agenda 2026 - één jaar lang genieten - Incl. handige ringband, elastiek en 8 ansichtkaarten

Libelle Marjolein Bastin Agenda 2026 - één jaar lang genieten - Incl. handige ringband, elastiek en 8 ansichtkaarten

Bekijk product

Gebruikersavatar
ukster
Artikelen: 0
Berichten: 5.587
Lid geworden op: za 28 nov 2015, 10:42

Re: state space

met de toestandsvariabelen:
toestandsvariabelen
toestandsvariabelen 3085 keer bekeken
Laatst gewijzigd door ukster op ma 12 jun 2023, 12:40, 1 keer totaal gewijzigd.
Scispace Scispace

Scispace is dé ai voor wetenschappers en onderzoekers. Ga naar SciSpace en profiteer van één van de beste ai's.

Scispace

Gebruikersavatar
Xilvo
Artikelen: 0
Berichten: 11.884
Lid geworden op: vr 30 mar 2018, 16:51

Re: state space

Voor de eerste afgeleide krijg ik 2409,7, voor x 208,5
Heb je niet toevallig de verkeerde variable geplot?
(ik heb me verder nog niet in het model verdiept).
Gebruikersavatar
ukster
Artikelen: 0
Berichten: 5.587
Lid geworden op: za 28 nov 2015, 10:42

Re: state space

Nee,
1
1 3087 keer bekeken
2
2 3082 keer bekeken
Gebruikersavatar
wnvl1
Artikelen: 0
Berichten: 5.651
Lid geworden op: di 20 jul 2021, 21:43

Re: state space

Dit krijg ik met het Matlab State Space model.

Code: Selecteer alles

A = [0, 1, 0; 0,0, 1; 12, -6, 9];
B = [0;0;3];
C = [0,1,0];
D = [0];
x0 = [0 ; 0; 0];
sys = ss(A,B,C,D)
initial(sys,x0)

t = 0:0.00001:1;  
u = heaviside(t);

lsimplot(sys,u,t)
grid on
statespace
Bij het opstellen van mijn bijdragen maak ik regelmatig gebruik van AI als hulpmiddel voor analyse en formulering
Gebruikersavatar
wnvl1
Artikelen: 0
Berichten: 5.651
Lid geworden op: di 20 jul 2021, 21:43

Re: state space

Als ik het juist begrijp, dan correspondeert mijn oplossing met de state space oplossing van Ukster in Maple, maar niet met de oplossing van Xilvo en Ukster als ze gewoon de DV oplossen.
Bij het opstellen van mijn bijdragen maak ik regelmatig gebruik van AI als hulpmiddel voor analyse en formulering
Gebruikersavatar
ukster
Artikelen: 0
Berichten: 5.587
Lid geworden op: za 28 nov 2015, 10:42

Re: state space

Mapleplot
rootlocusplot
rootlocusplot 3040 keer bekeken
Het is een instabiel systeem. zou dat een verklaring voor het verschil kunnen zijn?
Gebruikersavatar
wnvl1
Artikelen: 0
Berichten: 5.651
Lid geworden op: di 20 jul 2021, 21:43

Re: state space

Instabiel systeem betekent positieve eigenwaarden, maar dat verandert echt niks aan het feit dat beide oplossingen tot hetzelfde zouden moeten leiden. Ik zal later verder zoeken. De homogene is ook gemakkelijk analytisch met de hand op te lossen. Ik zal dat later hier posten.
Bij het opstellen van mijn bijdragen maak ik regelmatig gebruik van AI als hulpmiddel voor analyse en formulering
Gebruikersavatar
wnvl1
Artikelen: 0
Berichten: 5.651
Lid geworden op: di 20 jul 2021, 21:43

Re: state space

Eventjes symbolisch met matlab het homogene systeem opgelost.

Code: Selecteer alles

syms x1(t) x2(t) x3(t)

ode1 = diff(x1) == x2;
ode2 = diff(x2) == x3;
ode3 = diff(x3) == 12*x1 - 6*x2 + 9*x3;
odes = [ode1; ode2;, ode3]

S=dsolve(odes)
simplify(S.x1)
simplify(S.x2)
simplify(S.x3)
Het zijn wel hele lange antwoorden.


x_1 =
C2*(sin((3^(1/2)*t*((233^(1/2) + 24)^(1/3) - (24 - 233^(1/2))^(1/3)))/2)*exp(-t*((233^(1/2) + 24)^(1/3)/2 + (24 - 233^(1/2))^(1/3)/2 - 3))*((699^(1/2)*(24 - 233^(1/2))^(2/3))/2352 - (25*3^(1/2)*(24 - 233^(1/2))^(2/3))/2352 + ((17*3^(1/2) + 699^(1/2))*(24 - 233^(1/2))^(1/3))/336) - exp(-t*((233^(1/2) + 24)^(1/3)/2 + (24 - 233^(1/2))^(1/3)/2 - 3))*cos((3^(1/2)*t*((233^(1/2) + 24)^(1/3) - (24 - 233^(1/2))^(1/3)))/2)*((233^(1/2)*(24 - 233^(1/2))^(1/3))/336 - (233^(1/2)*(24 - 233^(1/2))^(2/3))/2352 + (17*(24 - 233^(1/2))^(1/3))/336 + (25*(24 - 233^(1/2))^(2/3))/2352 + 5/12)) - C3*(exp(-t*((233^(1/2) + 24)^(1/3)/2 + (24 - 233^(1/2))^(1/3)/2 - 3))*cos((3^(1/2)*t*((233^(1/2) + 24)^(1/3) - (24 - 233^(1/2))^(1/3)))/2)*((699^(1/2)*(24 - 233^(1/2))^(2/3))/2352 - (25*3^(1/2)*(24 - 233^(1/2))^(2/3))/2352 + ((17*3^(1/2) + 699^(1/2))*(24 - 233^(1/2))^(1/3))/336) + sin((3^(1/2)*t*((233^(1/2) + 24)^(1/3) - (24 - 233^(1/2))^(1/3)))/2)*exp(-t*((233^(1/2) + 24)^(1/3)/2 + (24 - 233^(1/2))^(1/3)/2 - 3))*((233^(1/2)*(24 - 233^(1/2))^(1/3))/336 - (233^(1/2)*(24 - 233^(1/2))^(2/3))/2352 + (17*(24 - 233^(1/2))^(1/3))/336 + (25*(24 - 233^(1/2))^(2/3))/2352 + 5/12)) + C4*exp(t*((233^(1/2) + 24)^(1/3) + (24 - 233^(1/2))^(1/3) + 3))*((233^(1/2)*(24 - 233^(1/2))^(1/3))/168 - (233^(1/2)*(24 - 233^(1/2))^(2/3))/1176 + (17*(24 - 233^(1/2))^(1/3))/168 + (25*(24 - 233^(1/2))^(2/3))/1176 - 5/12)


x_2=
C2*(sin((3^(1/2)*t*((233^(1/2) + 24)^(1/3) - (24 - 233^(1/2))^(1/3)))/2)*exp(-t*((233^(1/2) + 24)^(1/3)/2 + (24 - 233^(1/2))^(1/3)/2 - 3))*((23*3^(1/2)*(24 - 233^(1/2))^(2/3))/1176 + (699^(1/2)*(24 - 233^(1/2))^(2/3))/392 + ((3*3^(1/2) + 699^(1/2))*(24 - 233^(1/2))^(1/3))/168) + exp(-t*((233^(1/2) + 24)^(1/3)/2 + (24 - 233^(1/2))^(1/3)/2 - 3))*cos((3^(1/2)*t*((233^(1/2) + 24)^(1/3) - (24 - 233^(1/2))^(1/3)))/2)*((233^(1/2)*(24 - 233^(1/2))^(2/3))/392 - (233^(1/2)*(24 - 233^(1/2))^(1/3))/168 - (24 - 233^(1/2))^(1/3)/56 + (23*(24 - 233^(1/2))^(2/3))/1176 + 1/6)) - C3*(exp(-t*((233^(1/2) + 24)^(1/3)/2 + (24 - 233^(1/2))^(1/3)/2 - 3))*cos((3^(1/2)*t*((233^(1/2) + 24)^(1/3) - (24 - 233^(1/2))^(1/3)))/2)*((23*3^(1/2)*(24 - 233^(1/2))^(2/3))/1176 + (699^(1/2)*(24 - 233^(1/2))^(2/3))/392 + ((3*3^(1/2) + 699^(1/2))*(24 - 233^(1/2))^(1/3))/168) - sin((3^(1/2)*t*((233^(1/2) + 24)^(1/3) - (24 - 233^(1/2))^(1/3)))/2)*exp(-t*((233^(1/2) + 24)^(1/3)/2 + (24 - 233^(1/2))^(1/3)/2 - 3))*((233^(1/2)*(24 - 233^(1/2))^(2/3))/392 - (233^(1/2)*(24 - 233^(1/2))^(1/3))/168 - (24 - 233^(1/2))^(1/3)/56 + (23*(24 - 233^(1/2))^(2/3))/1176 + 1/6)) + C4*exp(t*((233^(1/2) + 24)^(1/3) + (24 - 233^(1/2))^(1/3) + 3))*((233^(1/2)*(24 - 233^(1/2))^(1/3))/84 - (233^(1/2)*(24 - 233^(1/2))^(2/3))/196 + (24 - 233^(1/2))^(1/3)/28 - (23*(24 - 233^(1/2))^(2/3))/588 + 1/6)


x_3=
exp(-t*((233^(1/2) + 24)^(1/3)/2 + (24 - 233^(1/2))^(1/3)/2 - 3))*(C2*cos((3^(1/2)*t*((233^(1/2) + 24)^(1/3) - (24 - 233^(1/2))^(1/3)))/2) + C4*exp(t*((3*(233^(1/2) + 24)^(1/3))/2 + (3*(24 - 233^(1/2))^(1/3))/2)) + C3*sin((3^(1/2)*t*((233^(1/2) + 24)^(1/3) - (24 - 233^(1/2))^(1/3)))/2))
Bij het opstellen van mijn bijdragen maak ik regelmatig gebruik van AI als hulpmiddel voor analyse en formulering
Gebruikersavatar
wnvl1
Artikelen: 0
Berichten: 5.651
Lid geworden op: di 20 jul 2021, 21:43

Re: state space

Als je dit met de hand wil doen, dan verloopt dat via de eigenwaarden en eigenvectoren van A, die je kan herkennen in de oplossing.
dif1
De positieve reële delen van de eigenwaarden wijzen erop dat het systeem instabiel is.
Om de niet homogene DV op te lossen kan je werken met bvb variatie van parameters. Dat principe is uitbreidbaar naar stelsels van DV's. Die integralen gaan voor een stapfunctie u in het rechterlid volgens mij analytisch oplosbaar zijn.
Bij het opstellen van mijn bijdragen maak ik regelmatig gebruik van AI als hulpmiddel voor analyse en formulering
Gebruikersavatar
wnvl1
Artikelen: 0
Berichten: 5.651
Lid geworden op: di 20 jul 2021, 21:43

Re: state space

Probleem is dat op het niet-homogene systeem matlab blijft hangen. Ik heb even gewerkt met 3 ipv met een stapfunctie om het iets eenvoudiger te maken.

Code: Selecteer alles

syms x1(t) x2(t) x3(t)

ode1 = diff(x1) == x2;
ode2 = diff(x2) == x3;
ode3 = diff(x3) == 12*x1 - 6*x2 + 9*x3 + 3;
odes = [ode1; ode2;, ode3]

S=dsolve(odes)
simplify(S.x1)
simplify(S.x2)
simplify(S.x3)
Bij het opstellen van mijn bijdragen maak ik regelmatig gebruik van AI als hulpmiddel voor analyse en formulering

ads

Steun Sciencetalk bol cadeaukaart - 15 euro - HiepHiep

bol cadeaukaart - 15 euro - HiepHiep

Bekijk product

Steun Sciencetalk Gofun Twinmarkers 262 stuks - Volwassenen & Kinderen - Markeerstiften - Alcohol stiften - Dual-Tip - Stiften

Gofun Twinmarkers 262 stuks - Volwassenen & Kinderen - Markeerstiften - Alcohol stiften - Dual-Tip - Stiften

Bekijk product

Steun Sciencetalk Screenprotector - 2 stuks - Geschikt voor iPhone 17 Pro Tempered Glass - Extra Sterk – beschermglas screen protector

Screenprotector - 2 stuks - Geschikt voor iPhone 17 Pro Tempered Glass - Extra Sterk – beschermglas screen protector

Bekijk product

Gebruikersavatar
wnvl1
Artikelen: 0
Berichten: 5.651
Lid geworden op: di 20 jul 2021, 21:43

Re: state space

Maar als ik het gewooon oplos in Python met odeint, dan kom ik dezelfde oplossing uit als in mijn statemodel.
Dat doet mij vermoeden dat er met het state spacemodel niets mis is.
Kan het zijn dat de fout eerder zit in jullie alternatieve oplossing?

Code: Selecteer alles

import numpy as np
from scipy.integrate import odeint
import matplotlib.pyplot as plt

x1=0
x2=0
x3=0

def dxdt(X, t):
    x1, x2, x3 = X
    dx1dt = x2
    dx2dt = x3
    dx3dt = 12*x1 - 6*x2 + 9*x3 + 3
    return dx1dt, dx2dt, dx3dt

t = np.linspace(0, 1, 1000000)
X0 = x1, x2, x3
sol = odeint(dxdt, X0, t)
print (sol)


plt.plot(t, sol[:, 0], 'r', label='x1(t)')
plt.plot(t, sol[:, 1], 'g', label='x2(t)')
plt.plot(t, sol[:, 2], 'b', label='x3(t)')
plt.legend(loc='best')
plt.xlabel('t')
plt.grid()
plt.show()

Figure_1
Bij het opstellen van mijn bijdragen maak ik regelmatig gebruik van AI als hulpmiddel voor analyse en formulering

Plaats een reactie

Je mail wordt niet openbaar getoond. Het wordt enkel gebruik voor contact of notificatie vanuit het beheer.

🗨️ Wat vind jij? Stel direct je vraag of geef je mening – zonder registratie. Je reactie zet het topic weer bovenaan bij 'Laatste posts' en trekt snel nieuwe reacties aan🔥. Mocht je als vaste bezoeker willen reageren, dan kun je je ook registreren.

Bevestig dat je geen robot bent door de volgende vragen te beantwoorden.

Noor heeft 10 knikkers. Ze verliest er 4 in het gras. Hoeveel heeft ze er nog?

Antwoord: (vul een getal in)

Er zitten 5 vogels op een hek. Twee vliegen weg. Hoeveel blijven er zitten?

Antwoord: (vul een getal in)

Terug naar “Elektrotechniek”

Sciencetalk: Leer, deel of groei. Volg of geef een cursus op Sciencetalk!