Hallo Peter,
allerdings braucht es mit Ihrer Definition die
Nirgendanderswoimselbennotebookverwendung der Variable flast:
In[7]:= Clear[f]
f // ClearAll
f[x_ /; x > 3.2] := flast = 10
f[x_ /; x < -0.8] := flast = -10
f[x_] := flast;
In[30]:= f[5]
Out[30]= 10
In[31]:= f[0]
Out[31]= 10
In[32]:= flast = 99;
f[0]
Out[33]= 99
deshalb sollte man wenigstens eine kleine Sicherheit einbauen:
In[34]:= Clear[f1]
f1 // ClearAll
f1[x_ /; x > 3.2] := f1`flast = 10
f1[x_ /; x < -0.8] := f1`flast = -10
f1[x_] := f1`flast;
In[39]:= f1[5]
Out[39]= 10
In[42]:= flast = 88;
f1[0]
Out[43]= 10
Grüsse
Udo.
Am 21.10.2019 um 04:50 schrieb Peter Klamser via demug:
Geht noch einfacher so:
f//ClearAll
f[x_/;x>3.2]:=flast=10
f[x_/;x<-0.8]:=flast=-10
f[x_]:=flast;
ListPlot[{Table[{x,f[x]},{x,-5,5,0.1}],Table[{x,f[x]},{x,5,-5,-0.1}]},Joined->True]
Viel Erfolg wünscht Peter
Am Mo., 21. Okt. 2019 um 01:25 Uhr schrieb Peter Klamser <klamser@XXXXXXX.com
:
f//ClearAll
f[x_/;x>3.2]:=flast=10
f[x_/;x<-0.8]:=flast=-10
f[x_/;Or[x>=-0.8,x<=3.2]]:=flast;
ListPlot[{Table[{x,f[x]},{x,-5,5,0.1}],Table[{x,f[x]},{x,5,-5,-0.1}]},Joined->True]
Am So., 20. Okt. 2019 um 19:28 Uhr schrieb Sven Stoll via demug <
demug@XXXXXXX.ch>:
Liebe Liste,
ich verzweifle eine Funktion mit Gedächtnis zu bauen, die ähnlich einem
Smitt-Trigger eine Hysterese abbildet.
Konkret soll die Funktion den Funktionswert von 10 liefern, wenn das
Argument > +3.2 (Volt) ist, und -10, wenn das Argument kleiner als -0.8
(Volt) ist.
Im Bereich von -0.8 bis + 3.2 soll jeweils der letzte Wert (10 oder -10)
erhalten bleiben.
Das ist an und für sich kein Problem mit eine prozeduralen
Programmiersprache, aber wie macht man das mit Mathematica?
Habt jemand eine Idee? Meine Ansätze (MODULE, WHILE, IF) sind alle
gescheitert.
Viele Grüße
Sven
_______________________________________________
DMUG Deutschsprachiges Mathematica-Forum demug@XXXXXXX.ch
http://www.mathematica.ch/mailman/listinfo/demug
Archiv: http://www.mathematica.ch/archiv.html
_______________________________________________
DMUG Deutschsprachiges Mathematica-Forum demug@XXXXXXX.ch
http://www.mathematica.ch/mailman/listinfo/demug
Archiv: http://www.mathematica.ch/archiv.html
_______________________________________________
DMUG Deutschsprachiges Mathematica-Forum demug@XXXXXXX.ch
http://www.mathematica.ch/mailman/listinfo/demug
Archiv: http://www.mathematica.ch/archiv.html