|
Sören |

Forum-Anfänger
|
 |
Beiträge: 25
|
 |
|
 |
Anmeldedatum: 09.10.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 09.10.2008, 13:54
Titel: Monte Carlo Simulation
|
 |
Hallo,
ich habe erst mit Matlab neu angefangen und muss eine Monte Carlo Simulation programmieren! Ich möchte die Fläche unter einer Gaußverteilung in einem bestimmten Intervall berechnen!
Also ich habe mir das erstmal grob überlegt, dass ich das Problem in mehrere Sachen aufteile!
1) Eine for-Schleife mit n-Wiederholungen
2)Punkt mit zufälligen Koordinaten
3)Gucken, ob Punkt im Intervall liegt
4)Fläche berechnen
Ist das so möglich? Also zu Punkt 2) mit rand() erzeugt man ja Zufallszahlen, aber wie kann man eine Koordinate daraus machen? Einfach:
x=rand();
y=rand();
plot(x,y)
Würde gern erstmal die zufälligen Punkte erzeugen und darstellen !
MFG Sören
|
|
|
|
|
steffi |

Forum-Century
|
 |
Beiträge: 149
|
 |
|
 |
Anmeldedatum: 07.03.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 09.10.2008, 14:26
Titel:
|
 |
Hallo Sören,
generell sollte es so funktionieren, wie du dir es ausgedacht hast. Allerdings verstehe ich deine Frage nicht?
Beachte bitte, dass rand() Werte im Bereich 0 bis 1 liefert. Ggf. musst du daher entweder diese Werte anpassen oder deine Gaußkurve normieren, sonst erhälst du zwar Werte unterhalb der Kurve, aber diese häufen sich innerhalb eines bestimmten Bereiches....
_________________
Wenn ich bei der Arbeit mit Computern eins gelernt habe dann das ich einem Computer nur soweit traue wie ich ihn werfen kann.
|
|
|
Sören |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 25
|
 |
|
 |
Anmeldedatum: 09.10.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 09.10.2008, 14:55
Titel:
|
 |
Hallo,
danke für die Antwort. Kann man nicht Zufallszahlen generieren, die nicht nur zwischen 0 und 1 liegen?
Also ich möchte eine Schleife, die von 0 bis 5 läuft und zufällige Koordinaten(x,y) in ein Diagramm plottet! Wie bekomme ich das denn hin, dass er an einer zufälligen Stelle x, einen zufälligen Wert y setzt?
Die Schleife soll einmal durchlaufen und einen zufälligen Punkt setzen(zeichnen), dann das zweite Mal durchlaufen und Punkt in die gleiche Graphik setzen usw..
MFG
|
|
|
Maddy |

Ehrenmitglied
|
 |
Beiträge: 494
|
 |
|
 |
Anmeldedatum: 02.10.08
|
 |
|
 |
Wohnort: Greifswald
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 09.10.2008, 16:07
Titel:
|
 |
da rand() zahlen von 0 bis 1 generiert, kannst du einfach mit dem entsprechenden Faktor multiplizieren der das Maximum deines Wertebereichs ist. In deinem Fall also 5.
_________________
>> why
The computer did it.
|
|
|
steffi |

Forum-Century
|
 |
Beiträge: 149
|
 |
|
 |
Anmeldedatum: 07.03.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 09.10.2008, 16:07
Titel:
|
 |
Zu Frage 1 findest du Antwort hier im Forum, einfach nach "Zufallszahlen" suchen
Du könntest z.B. auch randn() nehmen, dann generierst du normalverteilte Zufallszahlen, die können dann im Prinzip "jede Zahl" annehmen. Dann erhälst du aber keine gleichverteilte Verteilung deiner Punkte unter der Gaußkurve.
Ich glaube du muss dir zunächst Gedanken machen, welche Verteilung der Punkte du willst, innerhalb welchen Bereichs sie liegen sollen usw....
Hier ein kleines Beispiel als Anhaltspunkt:
das kannst du dir mal anschauen und siehst den Unterschied in der Verteilung der roten und blauen Punkte!
_________________
Wenn ich bei der Arbeit mit Computern eins gelernt habe dann das ich einem Computer nur soweit traue wie ich ihn werfen kann.
|
|
|
Sören |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 25
|
 |
|
 |
Anmeldedatum: 09.10.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 10.10.2008, 13:33
Titel:
|
 |
Hallo,
also ich würde denken, dass randn() gut ist, oder? Wieso sollte denn am besten eine gleichverteilte Verteilung deiner Punkte unter der Gaußkurve herauskommen?
detlef
|
|
|
steffi |

Forum-Century
|
 |
Beiträge: 149
|
 |
|
 |
Anmeldedatum: 07.03.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 10.10.2008, 13:36
Titel:
|
 |
Ich hab ja bereits geschrieben, dass du wissen mußt welche Verteilung gut für dein Problem ist. So ohne detaillierte Informationen welches System du abbilden willst, kann man dir schlecht sagen, welche Verteilung besser ist.
_________________
Wenn ich bei der Arbeit mit Computern eins gelernt habe dann das ich einem Computer nur soweit traue wie ich ihn werfen kann.
|
|
|
Sören |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 25
|
 |
|
 |
Anmeldedatum: 09.10.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 10.10.2008, 17:31
Titel:
|
 |
hallo,
mir ist das noch nicht ganz klar, welche Verteilung gut ist! Also ich möchte die Fläche unter einer Glockenkurve in einem bestimmten Intervall berechnen! Das randn() gefällt mir da ganz gut!
WIe kann man denn untersuchen, ob der Punkt im Intervall liegt?
MFG
|
|
|
Sören |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 25
|
 |
|
 |
Anmeldedatum: 09.10.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 11.10.2008, 15:04
Titel:
|
 |
hallo,
also bei einem Kreis weiss ich nun, wie man guckt, ob der Punkt im Kreis liegt oder nicht, aber wie macht man das bei einer beliebigen Funktion?
MFG
|
|
|
steffi |

Forum-Century
|
 |
Beiträge: 149
|
 |
|
 |
Anmeldedatum: 07.03.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 13.10.2008, 08:36
Titel:
|
 |
Du könntest z.B. nachdem du deinen x-Wert gewürfelt hast, schauen, was der Funktionswert an diesem x-Wert ist (Einsetzen in die Funktion), wenn dann dein gewürfelter y-Wert größer als der Funktionswert ist, ist der Punkt außerhalb der Kurve!
_________________
Wenn ich bei der Arbeit mit Computern eins gelernt habe dann das ich einem Computer nur soweit traue wie ich ihn werfen kann.
|
|
|
Sören |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 25
|
 |
|
 |
Anmeldedatum: 09.10.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 14.10.2008, 12:36
Titel:
|
 |
danke schön!
Es läuft!
MFG
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
| RSS
Hosted by:
Copyright © 2007 - 2025
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.
|
|