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

Fitparameter in fminsearch einschränken

 

Salamander
Forum-Anfänger

Forum-Anfänger


Beiträge: 38
Anmeldedatum: 28.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.07.2009, 21:58     Titel: Fitparameter in fminsearch einschränken
  Antworten mit Zitat      
Hallo,

Ich sitze schon den ganzen Tag an diesem Problem, kriege es aber einfach nicht hin..wäre sehr dankbar, wenn mir jemand hier helfen könnte!

Also ich habe Messdaten T_mess, die ich an eine Funktion T_anpass1 fitten möchte. Die Funktion T_anpass1 habe ich im Anhang hochgeladen, ich habe unten als Beispiel n=3 gewählt. Nun weiß ich nicht, wie ich die Fitparameter einschränken soll, d.h., dass alpha_i und gamma_i > 0 sind. (beta ist gegeben) Weiterhin brauche ich als Abbruchkriterium 1-sum(gammas)<10^(-4). Kann ich das mit der optimset-Funktion machen? Steige da nämlich auch nciht durch wie das geht...

Anbei der Code:
Code:


clear all
clc

mu_0=1.915E-02;
T_mess=[1,0.759,0.589,0.457,0.355,0.275,0.2,0.166,0.129,0.1,0.079,0.063,0.05,0.04,0.032,0.025,0.023,0.02,0.016];
x=0:2:36;

beta1=1.125;
beta2=1.25;
beta3=1.5;
beta4=2;
beta5=3;
beta6=4;
beta7=5;
beta8=6;

%param1(1)=alpha1, param1(2)=alpha2, param1(3)=gamma2, param1(4)=alpha3, param1(5)=gamma3...


alpha1_start=15; %Startwerte für die Kurvenanpassung
alpha2_start=10;
gamma2_start=0.1;
alpha3_start=5;
gamma3_start=0.01;
gamma=0.08;     %vorgegebenes Gamma in 1. Teilfunktion

[param1, exitflag] = fminsearch(@(param1)(min_func(x, mu_0, gamma, param1, beta1, beta2, beta3, T_mess, gamma2_start)), [alpha1_start alpha2_start gamma2_start alpha3_start gamma3_start]);
 


Und min_func.m:

Code:

function [sse, T_anpass1]=min_func(x, mu_0, gamma, param1, beta1, beta2, beta3, T_mess)

T_anpass1=sum((exp(-x.*mu_0).*((gamma.*(param1(1)./(x+param1(1))).^beta1)+(param1(3).*(param1(2)./(x+param1(2))).^beta2)+(param1(5).*(param1(4)./(x+param1(4))).^beta3))-T_mess).^2);

if  (param1(1)>0 && param1(2)>0 && param1(3)>0 && param1(4)>0 && param1(5)>0 && (1-(gamma+param1(3)+param1(5))<=0.0001))
disp(sprintf('  Alpha1 = %d', param1(1)))
disp(sprintf('  Gamma2 = %d', param1(3)))
disp(sprintf('  Alpha2 = %d', param1(2)))
disp(sprintf('  Alpha3 = %d', param1(4)))
disp(sprintf('  Gamma3 = %d', param1(5)))

else

   
while (param1(1)<0 || param1(2)<0 || param1(3)<0 || param1(4)<0 || param1(5)<0 || (1-(gamma+param1(3)+param1(5))>=0.0001))
   
break
 
end

end

 


Wie ihr seht, habe ich es mit einer if und while Abfrage versucht mit dem Einschränken der Parameter hinzukriegen, aber das funktioniert nicht...

Bin für jede Hilfe dankbar! Very Happy

fit_Funktion.jpg
 Beschreibung:

Download
 Dateiname:  fit_Funktion.jpg
 Dateigröße:  8.96 KB
 Heruntergeladen:  1033 mal
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 29.07.2009, 09:33     Titel:
  Antworten mit Zitat      
Hallo,

fminsearch erlaubt keine Nebenbedingungen. Diese könnten bestenfalls als Strafterme (Zielfunktion entsprechend erhöhen) eingebaut werden; das ist allerdings eher eine Notlösung.

Besser wäre es, eine geeignete Funktion aus der Optimization Toolbox zu verwenden, z.B. lsqcurvefit.

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

Forum-Anfänger

Forum-Anfänger


Beiträge: 38
Anmeldedatum: 28.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.07.2009, 12:37     Titel:
  Antworten mit Zitat      
Vielen Dank für den Tipp, ich habe lsqcurvefit jetzt wie folgt benutzt, bekomme aber folgende Fehlermeldungen:

Zitat:
??? Error using ==> optim\private\lsqncommon at 98
LSQCURVEFIT cannot continue because user supplied objective function failed with the following error:
Error using ==> times
Matrix dimensions must agree.

Error in ==> lsqcurvefit at 182
[x,Resnorm,FVAL,EXITFLAG,OUTPUT,LAMBDA,JACOB] = ...

Error in ==> Anpassungsfunktionn3 at 33
[param1, resnorm, residual, exitflag] = lsqcurvefit('min_func', param1_start, x, T_mess, lb, ub);


Die Matrixdimensionen in min_func stimmen aber überein, zumindest hat das mit fminsearch geklappt.

Code:
clear all
clc

mu_0=1.915E-02;
T_mess=[1,0.759,0.589,0.457,0.355,0.275,0.2,0.166,0.129,0.1,0.079,0.063,0.05,0.04,0.032,0.025,0.023,0.02,0.016];
x=0:2:36;

beta1=1.125;
beta2=1.25;
beta3=1.5;

%param1(1)=alpha1, param1(2)=alpha2, param1(3)=gamma2, param1(4)=alpha3, param1(5)=gamma3...

alpha1_start=15; %Startwerte für die Kurvenanpassung
alpha2_start=10;
gamma2_start=0.1;
alpha3_start=5;
gamma3_start=0.01;
gamma=0.08;     %vorgegebenes Gamma in 1. Teilfunktion

param1_start=[alpha1_start, alpha2_start, gamma2_start, alpha3_start, gamma3_start]; %Startvektor Kurvenanpassung
lb=[0, 0, 0, 0, 0]; %alphas und gammas >0
ub=[100, 100, 1, 100, 1];


[param1, resnorm, residual, exitflag] = lsqcurvefit('min_func', param1_start, x, T_mess, lb, ub);


Und min_func:
Code:
function T_anpass1 = min_func(x, mu_0, gamma, param1, beta1, beta2, beta3)

T_anpass1=exp(-x.*mu_0).*((gamma.*(param1(1)./(x+param1(1))).^beta1)+(param1(3).*(param1(2)./(x+param1(2))).^beta2)+(param1(5).*(param1(4)./(x+param1(4))).^beta3));


if  (1-(gamma+param1(3)+param1(5))<=0.0001) %Abbruchkriterium
   
return
 
end

disp(sprintf('  Alpha1 = %d', param1(1)))
disp(sprintf('  Gamma2 = %d', param1(3)))
disp(sprintf('  Alpha2 = %d', param1(2)))
disp(sprintf('  Alpha3 = %d', param1(4)))
disp(sprintf('  Gamma3 = %d', param1(5)))


Wo liegt da der Fehler laut Fehlermeldung? Ich habe es auch versucht als Eingabeparameter in min_func nur param1 und x zu übergeben (also
Code:
function T_anpass1 = min_func(param1, x)
), wie es in den Beispielen in der Hilfe gemacht wird, bekomme dann aber folgende Fehlermeldungen:

Zitat:
??? Error using ==> optim\private\lsqncommon at 98
LSQCURVEFIT cannot continue because user supplied objective function failed with the following error:
Undefined function or variable 'T_mess'.

Error in ==> lsqcurvefit at 182
[x,Resnorm,FVAL,EXITFLAG,OUTPUT,LAMBDA,JACOB] = ...

Error in ==> Anpassungsfunktionn3 at 33
[param1, resnorm, residual, exitflag] = lsqcurvefit('min_func', param1_start, x, T_mess, lb, ub);


Und T_mess ist ja eigentlich definiert...
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 29.07.2009, 13:09     Titel:
  Antworten mit Zitat      
Hallo,

Das ist jetzt gerade etwas unübersichtlich. Was ich versuchen würde ist, einen Haltepunkt in die Zielfunktion zu setzen und zu sehen, was da passiert.

Ein Problem scheint aber zu sein, dass lsqcurvefit Zielfunktionen mit zwei Eingabeargumenten (Parameter und x-Werte) erwartet. Dazu vielleicht nochmal die Beispiele in der Hilfe zu lsqcurvefit schauen.

Ich könnte mir vorstellen, dass die Zielfunktion so aussehen sollte:
Code:
obj = @(param1, x) min_func(x, mu_0, gamma, param1, beta1, beta2, beta3);


Die Umsetzung des Abbruchkriteriums halte ich so nicht für sinnvoll, da das ja nicht bedeutet, dass die entsprechenden Parameter gut sind. Ich würde das auch nicht in der Zielfunktion, sondern in der OutputFcn (eine der Optionen von optimset) machen.

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

Forum-Anfänger

Forum-Anfänger


Beiträge: 38
Anmeldedatum: 28.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.07.2009, 19:09     Titel:
  Antworten mit Zitat      
Hallo,

Also das Fitten funktioniert jetzt, aber ich habe noch immer Probleme das Abbruchkriterium in optimset zu definieren...

Code:
options = optimset('OutputFcn', @outfun);
param1 = lsqcurvefit(obj, param1_start, x, T_mess, lb, options)
 


und

Code:
function stop = outfun(param1)


stop = false;

if (param1(3)+param1(6)+param1(9)+param1(12)+param1(15)>=0.9999)
    stop = true;
end


Als Fehlermeldung bekomme ich dann:
Zitat:
??? Error using ==> lsqcurvefit at 171
LSQCURVEFIT only accepts inputs of data type double.

Error in ==> Anpassungsfunktionn5_nur_lb at 40
param1 = lsqcurvefit(obj, param1_start, x, T_mess, lb, options)


Weißt du wo der Fehler da liegt? Nochmals vielen Dank für deine bisherige Hilfe!!!
Private Nachricht senden Benutzer-Profile anzeigen
 
Bijick
Ehrenmitglied

Ehrenmitglied



Beiträge: 914
Anmeldedatum: 18.06.07
Wohnort: Nürnberg
Version: R2006b, R2008b
     Beitrag Verfasst am: 29.07.2009, 19:27     Titel:
  Antworten mit Zitat      
Hallo Salamander,

probier mal

Code:
options = optimset('OutputFcn', @outfun);
param1 = lsqcurvefit(obj, param1_start, x, T_mess, lb, [], options)
 


An der sechsten Stelle werden obere Grenzen erwartet, erst die siebte Stelle kann die Optionen aufnehmen. Daher die "[]".

Herzliche Grüße
Bijick
_________________

>> why
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Salamander
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 38
Anmeldedatum: 28.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.07.2009, 19:34     Titel:
  Antworten mit Zitat      
Hallo Harald,

Das habe ich auch schon probiert, da kommt dann folgende Fehlermeldung:

Zitat:
??? Error using ==> outfun
Too many input arguments.

Error in ==> callAllOptimOutputFcns at 12
stop(i) = feval(OutputFcn{i},xOutputfcn,optimValues,state,varargin{:});

Error in ==> optim\private\snls>callOutputAndPlotFcns at 565
stop = callAllOptimOutputFcns(outputfcn,xOutputfcn,optimValues,state,varargin{:}) || stop;

Error in ==> optim\private\snls at 292
[xOutputfcn, optimValues, stop] = callOutputAndPlotFcns(outputfcn,plotfcns,caller,x,xOutputfcn,'init',iter, ...

Error in ==> optim\private\lsqncommon at 221
[x,FVAL,LAMBDA,JACOB,EXITFLAG,OUTPUT,msg]=...

Error in ==> lsqcurvefit at 182
[x,Resnorm,FVAL,EXITFLAG,OUTPUT,LAMBDA,JACOB] = ...

Error in ==> Anpassungsfunktionn5_nur_lb at 40
param1 = lsqcurvefit(obj3, param1_start, x, T_mess, lb, [], options)


Viele Grüße, Salamander
Private Nachricht senden Benutzer-Profile anzeigen
 
Salamander
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 38
Anmeldedatum: 28.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.07.2009, 19:35     Titel:
  Antworten mit Zitat      
Sorry, dass war eine Message an Bijick, nicht an Harald. Wink
Private Nachricht senden Benutzer-Profile anzeigen
 
Bijick
Ehrenmitglied

Ehrenmitglied



Beiträge: 914
Anmeldedatum: 18.06.07
Wohnort: Nürnberg
Version: R2006b, R2008b
     Beitrag Verfasst am: 29.07.2009, 19:50     Titel:
  Antworten mit Zitat      
Hallo Salamander,

das liegt an Deiner Funktion outfun. Die erste Zeile muss immer lauten

Code:
function stop = outfun(x, optimValues, state)


oder eben

Code:
function stop = outfun(param1, optimValues, state)


Selbst, wenn Du die hinteren Werte nicht nutzt, werden sie an die Output-Funktion übergeben - und wenn sie nicht vorgesehen sind, gibt es eben den Fehler "Too many input arguments."

PS: Gut, dass Du die Fehlermeldung angegeben hast, so konnte ich die Ursache schnell finden. Wenn das mal jeder machen würde... Smile

PPS: Du kannst Deine Beiträge auch editieren. Wink

Herzliche Grüße
Bijick
_________________

>> why
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Salamander
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 38
Anmeldedatum: 28.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.07.2009, 21:55     Titel:
  Antworten mit Zitat      
Hallo Bijick,

Danke, mit der richten Syntax funktioniert das jetzt...nur habe ich jetzt das Problem, dass meine Fitsuche früher abbricht bevor mein eigenes definiertes Abbruchkriterium (siehe Code unten) erreicht ist. Somit bekomme ich als die Summe
(param1(3)+param1(6)+param1(9)+param1(12)+param1(15) jetzt 1.011 raus mit der Meldung
Zitat:
Optimization terminated: relative function value
changing by less than OPTIONS.TolFun.
anstatt irgendwas zwischen 0.999 und 0.9999, was ich haben möchte...

Code:
function stop = outfun(param1, optimValues, state)


stop = false;

if ((param1(3)+param1(6)+param1(9)+param1(12)+param1(15))>=0.999 && (param1(3)+param1(6)+param1(9)+param1(12)+param1(15))<0.9999)
    stop = true;
end
Private Nachricht senden Benutzer-Profile anzeigen
 
Bijick
Ehrenmitglied

Ehrenmitglied



Beiträge: 914
Anmeldedatum: 18.06.07
Wohnort: Nürnberg
Version: R2006b, R2008b
     Beitrag Verfasst am: 29.07.2009, 22:57     Titel:
  Antworten mit Zitat      
Hallo Salamander,

vielleicht hätte ich erst mal den ganzen Thread lesen sollen... Dann hätte ich wahrscheinlich gleich zu fmincon statt lsqcurvefit geraten. Leider ist es nicht so recht möglich, Deine Bedingung über die output-Funktion einzubringen.

Die output-Funktion funktioniert nur in eine Richtung: FALLS die Bedingung erfüllt ist, bricht die Optimierung ab. Ganz egal, wie gut oder schlecht bis dahin das Fitten funktioniert hat. Das benutzt man eigentlich eher für Fehlermeldungen oder so. Du möchtest aber: NUR WENN die Bedingung erfüllt ist, soll die Optimierung Erfolg vermelden, ansonsten weiter suchen.

Deine lineare Nebenbedingung kann man also nicht so direkt in lsqcurvefit einbringen. (Im Gegensatz zu den Grenzen, das klappt ja wohl auch ganz gut.)

Nebenbedingungen und Matlab - das heißt eigentlich, fmincon ist die Funktion der Wahl. Leider müsstest Du dann Deine Zielfunktion nochmal umschreiben, weil fmincon minimiert und nicht fittet. Die lineare Nebenbedingung ist aber dann kein Problem. Wenn Du vorher fminsearch verwendet hast, kannst Du die Zielfunktion von dort wiederverwenden.

Eventuell kann man aber lsqcurvefit auch austricksen und die Parameter 3, 6, ... zusätzlich an die Nebenbedingung fitten. Sowas habe ich aber noch nie gemacht. Ist nur so eine Idee.

Ich hoffe, jetzt habe ich alles richtig verstanden. Herzliche Grüße
Bijick
_________________

>> why
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Salamander
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 38
Anmeldedatum: 28.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.07.2009, 17:52     Titel:
  Antworten mit Zitat      
Hallo Bijick,

danke für die Antwort, gucke mir gleich mal fmincon genauer an...
Neben dem Abbruchkriterium habe ich auch noch folgendes Problem, dass ich als Einschränkung für meine Fitparameter Gammas habe, dass jedes einzelne Gamma größer 0 sein muss (das geht ja auch mit der lower bound option) und die Summe aller Gammas muss 1 betragen. Die letzte Einschränkung bedeutet im Umkehrschluss, dass ein Gamma bereits vordefiniert ist, nämlich beispielsweise bei 5 Gammas insgesamt wäre das 5. Gamma über Gamma_5=1-(Gamma_1+Gamma_2+Gamma_3+Gamma_4) vordefiniert. So gibt es aber ein Problem mit der Bedingung Gamma>0 für Gamma_5, da (Gamma_1+Gamma_2+Gamma_3+Gamma_4)>1 sein kann (da für diese Gammas nur die Bedinung gilt, dass sie größer null sein sollen)...Weißt du wie ich es machen kann, dass mein 5. Gamma auch größer null ist? kann das fmincon? Das kann ich nämlich nicht in den lower bounds definieren, da es ja über die anderen Gammas 1-4 definiert ist. Anbei auch nochmal die Datei, die ich schon mal angehängt habe, damit das mit dem Einschränken der Parameter vielleicht noch etwas klarer wird, also ich es hier geschrieben habe...

fit_Funktion.jpg
 Beschreibung:

Download
 Dateiname:  fit_Funktion.jpg
 Dateigröße:  8.96 KB
 Heruntergeladen:  1010 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 30.07.2009, 18:27     Titel:
  Antworten mit Zitat      
Die Bedingung "Summe der gammas = 1" lässt sich am leichtesten als lineare Nebenbedingung umsetzen:
[1 1 1 1 1] * gammas = 1 ( "*" = Matrix-Vektor-Multiplikation)
In der Notation von fmincon ist dann
Aeq = [1 1 1 1 1] (ggf. mit zusätzlichen 0 bei anderen Parametern)
und beq = 1

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

Forum-Anfänger

Forum-Anfänger


Beiträge: 38
Anmeldedatum: 28.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.07.2009, 19:21     Titel:
  Antworten mit Zitat      
Hallo Harald,

Danke für deine Message, habe das jetzt so gemacht wie du es gesagt hast (bei mir sind die Parameter, die eingeschränkt werden sollen immer der 2.,4.,6., etc. also param(2), param(4), etc., daher sieht Aeq so aus). habe auch über lb definiert, dass alle Parameter größer null sein sollen, aber als Ergebnis haut das mit dem Code unten nicht hin, da z.B. param1(6) kleiner 0 ist:

Code:
Aeq=[0 1 0 1 0 1 0 1 0 1];
beq=1;
lb=[0, 0, 0, 0, 0, 0, 0, 0, 0, 0];

obj=@(param1) min_fun(x, mu_0, param1, beta1, beta2, beta3, beta4, beta5, T_mess);
[param1,fval] = fmincon(obj,param_start,[],[], Aeq, beq,lb,[])


Und min_fun.m:

Code:
function T_min = min_fun(x, mu_0, param1, beta1, beta2, beta3, beta4, beta5, T_mess)

T_anpass=exp(-x.*mu_0).*((param1(2).*(param1(1)./(x+param1(1))).^beta1)+(param1(4).*(param1(3)./(x+param1(3))).^beta2)+(param1(6).*(param1(5)./(x+param1(5))).^beta3)+(param1(8).*(param1(7)./(x+param1(7))).^beta4)+(param1(10).*(param1(9)./(x+param1(9))).^beta5));
T_min=sum((T_anpass-T_mess).^2);


Als Warnung erhalte ich weiterhin folgende Mitteilung, was bedeutet die?

Zitat:
Warning: Large-scale (trust region) method does not currently solve this type of problem,
using medium-scale (line search) instead.
> In fmincon at 317
In Anpassungsfunktion_betasfest_n5 at 45
Optimization terminated: first-order optimality measure less than options.TolFun
and maximum constraint violation is less than options.TolCon.
Active inequalities (to within options.TolCon = 1e-006):
lower upper ineqlin ineqnonlin
2
4
6
10


Viele Grüße!! Salamander[/quote]
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 30.07.2009, 19:50     Titel:
  Antworten mit Zitat      
Die Warnung bedeutet, dass fmincon einen anderen Algorithmus als den Standard-Algorithmus verwendet (siehe Doc von fmincon).
Ansonsten sieht es so aus, als ob alles in Ordnung wäre.
Wenn als Lösung ein param1 rauskommt, bei dem einzelne Komponenten minimal < 0 sind (z.B -1e-6), dann ist das in Ordnung und als 0 zu interpretieren. Wie stark Nebenbedingungen verletzt werden dürfen, ist über die Toleranzen geregelt.
Probiers übrigens mal mit optimtool, das ist am Anfang vielleicht einfacher zu bedienen.

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

Gehe zu Seite 1, 2  Weiter

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.