WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Fehlermeldung bezüglich stepsize

 

kaban
Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 14.04.12
Wohnort: ---
Version: R2010b WinXP
     Beitrag Verfasst am: 29.11.2012, 22:00     Titel: Fehlermeldung bezüglich stepsize
  Antworten mit Zitat      
ich gebe einen konstanten wert und eine zuvor integrierte variable auf ein mux, dahinter verwendet eine gleichung diese beiden werte. jedenfalls habe ich keine parameter geändert, also alles auf auto gelassen.

wenn ich die number of consecutive min steps auf 1 setze, erscheint folgende fehlermeldung: Derivative input 1 of 'Simulation/Integrator' at time 0.032536336880584618 is Inf or NaN. Stopping simulation. There may be a singularity in the solution. If not, try reducing the step size (either by reducing the fixed step size or by tightening the error tolerances).

die obere fehlermeldung erscheint auch, wenn ich fixed steps einstelle und nicht den standard variable steps (ode45 dormand-prince).

wenn ich die number of consecutive min steps auf 0.1 oder 0.01 setze erscheint folgende fehlermeldung: Invalid Number of consecutive min step size violations allowed specified in the Configuration Parameters dialog for block diagram 'Simulation'

was mache ich falsch? ich würde mich über jede hilfe freuen.

mfg
kaban
Private Nachricht senden Benutzer-Profile anzeigen


kaban
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 14.04.12
Wohnort: ---
Version: R2010b WinXP
     Beitrag Verfasst am: 02.12.2012, 18:07     Titel:
  Antworten mit Zitat      
vielleicht ist noch erwähnenswert, dass ich nach dem mux und der in Fcn und Gain folgenden differentialgleichung eine rückkopplung auf den integrator vor dem zweiten eingang des mux kommt.

kann mir wirklich keiner helfen? ich verstehe das problem nicht, denn ich gebe offensichtlich kein Inf oder NaN auf den ersten eingang vom mux. warum stört er sich so an der schrittweite?
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 02.12.2012, 20:52     Titel:
  Antworten mit Zitat      
Hallo,

ich zumindest werde dir ohne das Modell (bzw. eine abgespeckte Version des Modells, in der das Problem auftritt) nicht weiterhelfen können. Unter der verbalen Beschreibung kann ich mir nicht genug vorstellen.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
kaban
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 14.04.12
Wohnort: ---
Version: R2010b WinXP
     Beitrag Verfasst am: 03.12.2012, 21:11     Titel:
  Antworten mit Zitat      
daran soll es nicht scheitern Smile ich habe ein beispiel angehangen:

Beispiel.mdl
 Beschreibung:

Download
 Dateiname:  Beispiel.mdl
 Dateigröße:  26.24 KB
 Heruntergeladen:  393 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 03.12.2012, 22:04     Titel:
  Antworten mit Zitat      
Hallo,

schau dir mal Scope1 an. Der driftet bei 0.0325 gegen unendlich ab.

Welche DGL versuchst du denn eigentlich zu lösen? Ich habe den Eindruck, das sieht durch den Fcn-Block deutlich komplizierter aus als es sein müsste.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
kaban
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 14.04.12
Wohnort: ---
Version: R2010b WinXP
     Beitrag Verfasst am: 03.12.2012, 22:13     Titel:
  Antworten mit Zitat      
da schleichen sich natürlich schnell fehler ein und ich habe das auch versucht mit dem nenner durch den gain zu reduzieren, aber scheinbar nicht genug. was würdest du denn einem matlab-anfänger empfehlen? variablen in matlab definieren, aber müssen die nicht jedes mal wieder eingegeben werden? und wie gebe ich an die variablen in matlab die eingänge u(1) und u(2) weiter?

Zuletzt bearbeitet von kaban am 03.12.2012, 22:41, insgesamt einmal bearbeitet
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 03.12.2012, 22:21     Titel:
  Antworten mit Zitat      
Hallo,

wo ist denn der Exponent 4, der in der Gleichung mehrfach vorkommt?

Ich würde das in einen MATLAB Function Block packen, damit man eine Chance hat, nachzuvollziehen, was hier eigentlich gemacht wird.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
kaban
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 14.04.12
Wohnort: ---
Version: R2010b WinXP
     Beitrag Verfasst am: 03.12.2012, 22:44     Titel:
  Antworten mit Zitat      
die gleichung wurde "vereinfacht", dadurch gibt es den exponent 4 nicht mehr.

eine matlab function zu erstellen ist nicht das problem. ich weiss nur nicht, wie ich dort die eingänge vom mux definiere bzw. die function dann in simulink einsetze.

edit: einfach den namen der function im matlab function block eintragen? wie definiere ich in der function die eingänge u(1) und u(2) des mux?
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 04.12.2012, 18:14     Titel:
  Antworten mit Zitat      
Hallo,

Solche Vereinfachungen machen das natürlich auch nicht einfacher nachvollziehbar. Und man geht das Risiko ein, dass die Vereinfachung zu einer signifikanten Verfälschung der Ergebnisse führt.

Das sollte ohne mux gehen, und einfacher: zwei Eingänge, ein Ausgang.

Je nach MATLAB-Version heißt der Block noch "Embedded MATLAB Function".

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
kaban
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 14.04.12
Wohnort: ---
Version: R2010b WinXP
     Beitrag Verfasst am: 12.12.2012, 20:58     Titel:
  Antworten mit Zitat      
Danke. Ich habe deinen Tipp befolgt und einen MATLAB Block verwendet. Das Problem hat sich damit auch erledigt, aber es taucht eine neue Fehlermeldung auf, in der ich aufgefordert werde mindestens einen complex() Eingang zu bestimmen, da er wohl auch eine komplexe Größe im MATLAB Block findet. Vielleicht führt das (T-Tu)^(1/6) zu einer negativen Wurzel, was aber nicht sein dürfte, da T stets über Tu sein sollte. Ohne diesen Part funktioniert es jedoch, nur kann ich darauf leider nicht verzichten.
Ich habe die Gleichung mit einem % hervorgehoben. Könntest du dir das vielleicht ansehen?

Test.mdl
 Beschreibung:

Download
 Dateiname:  Test.mdl
 Dateigröße:  33.76 KB
 Heruntergeladen:  389 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 12.12.2012, 21:18     Titel:
  Antworten mit Zitat      
Hallo,

ist der Anfangswert 0 im Integratorblock sinnvoll? Doch wohl kaum?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
kaban
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 14.04.12
Wohnort: ---
Version: R2010b WinXP
     Beitrag Verfasst am: 12.12.2012, 23:08     Titel:
  Antworten mit Zitat      
Nein. Ich hatte nur vorher schon etwas rumprobiert, um das vorherige Problem zu lösen, und das wohl vergessen.

Liegt es daran? Ich habe hier kein MATLAB, um es zu checken.

293.15 sollte der Anfangswert sein, also Umgebungstemperatur in Kelvin, wenn ich das richtig verstanden habe.
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 13.12.2012, 18:00     Titel:
  Antworten mit Zitat      
Hallo,

ich denke schon, dass es daran liegen kann. In jedem Fall beeinflusst es die Simulation.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.