DMUG-Archiv 2019

Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

Re: [Dmug] Smitt-Trigger

... aber das macht im ursprünglichen Beispiel keinen Sinn ...

meint Peter

Am Di., 22. Okt. 2019 um 01:03 Uhr schrieb Peter Klamser <klamser@XXXXXXX.com>:
>
> & dieses Konstrukt kann auch verwendet werden, um sehr aufwendige Berechnungen für eine erneute Verwendung 
> "automatisch" zur Verfügung zu stellen:
> foo[x_]:=foo[x]=x^2
> Hier natürlich sinnlos kann aber manchmal vieles erleichtern. Eines benötig man dann aber ggf: Viel "Kernspeicher"
>
> Viel Erfolg wünscht Peter
>
> Am Di., 22. Okt. 2019 um 00:13 Uhr schrieb Peter Klamser <klamser@XXXXXXX.com>:
>>
>> ... ja genau, daran hatte ich auch schon gedacht, Danke für die Ergänzung, das ist eine schöne Kollaboration ;-)
>>
>> Alles Gute wünscht Peter
>>
>> Susanne & Udo Krause <su.krause@XXXXXXX.ch> schrieb am Mo., 21. Okt. 2019, 20:18:
>>>
>>> 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

Antworten:
Verweise:
Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

DMUG DMUG-Archiv, http://www.mathematica.ch/archiv.html