Modellierung und Simulation - Programmstrukturen: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Zeile 145: Zeile 145:
# Bauen Sie zufällig einen Ausreißer in das Datenarray Spannung von 20 V ein.
# Bauen Sie zufällig einen Ausreißer in das Datenarray Spannung von 20 V ein.
# Zeigen Sie das Ergebnis entsprechend Abb. 1. Eine graue Gerade bildet den Mittelwert, die Messwerte sind tote Punkte und der Ausreißer ist blau eingekreist.
# Zeigen Sie das Ergebnis entsprechend Abb. 1. Eine graue Gerade bildet den Mittelwert, die Messwerte sind tote Punkte und der Ausreißer ist blau eingekreist.
# Speichern Sie die Variablen <code>Zeit</code> und <code>Spannung</code> in der Datei <code>Messdaten.mat<(code>.
# Speichern Sie die Variablen <code>Zeit</code> und <code>Spannung</code> in der Datei <code>Messdaten.mat</code>.
# Werten Sie den Quelltext mit Header, Kommentaren und Hilfe auf.
# Werten Sie den Quelltext mit Header, Kommentaren und Hilfe auf.
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"

Version vom 24. April 2026, 05:39 Uhr

Autor: Prof. Dr.-Ing. Schneider
Termin: 24.04.2025

Aufgabe 5.1 - Programmiergrundlagen - Schleifen und Bedingungen

  1. Schreiben Sie ein MATLAB®-Skript, das mit Hilfe einer for -Schleife die Summe der Zahlen von 1 bis 100000 berechnet (z. B. n=n+1).
  2. Schreiben Sie ein MATLAB®-Skript, das mit Hilfe einer while-Schleife die Summe die Zahlen von 1 bis 100000 berechnet.
  3. Schreiben Sie ein MATLAB®-Skript, das
    1. Einen Vektor X mit 10000 Zufallszahlen zwischen 0 und 1 erzeugt.
    2. Mit Hilfe einer for-Schleife den Index des ersten Elementes in X berechnet, das > 0.9 ist (falls ein solches existiert) und diesen Index in der Variablen x1 speichert.
    3. Mit Hilfe einer while-Schleife den Index des ersten Elementes in X berechnet, das< 0.1 ist (falls ein solches existiert) und diesen Index in der Variablen x2 speichert.
    4. Mit Hilfe von „ logical indexing" das erste Element findet, das echt zwischen 0.5 und 0.55 liegt (falls ein solches existiert) und diesen Index in der Variablen x3 speichert.

Nützliche Befehle: for, if, while, break


Aufgabe 5.2 - Programmiergrundlagen - Funktionen

  1. Recherchieren Sie den Begriff „MATLAB function" und informieren Sie sich, was man darunter versteht.
  2. Schreiben Sie das MATLAB®-Skript aus Aufgabe 5.1.3 zu einer MATLAB®-Function mit dem Namen analyse um, die
    1. als Eingabeargument die Zahl n bekommt und dann
    2. einen Vektor mit n Zufallszahlen zwischen 0 und 1 erzeugt
    3. Anschließend soll die Funktion genau die Werte x1,x2 und x3 wie in Aufgabe 4.4.3 berechnen und diese als Rückgabewerte zurückliefern.
    4. Machen Sie sich anhand der Funktion analyse mit dem Setzen von „Breakpoints" und dem MATLAB®-Debugger vertraut.
  3. Schreiben Sie ein kurzes Matlab Skript, mit dem Sie die Funktion analyse aufrufen. Springen Sie dabei mit einem Breakpoint in die Funktion.

Nützliche Befehle: function

Aufgabe 5.3 - Programmiergrundlagen - Funktionen

Abb. 1: Ausreisser in einer verrauschten Messung
  1. Schreiben Sie die Funktion simuliereAussreisser.m, welche normalverteilte Spannungen (Mittelwert: 5 V, Standardabweichung: 10 V) simuliert.
  2. Die x-Achse Bildet die Zeit. Nehmen Sie den Index (1, 2, 3,...) in s.
  3. Bauen Sie zufällig einen Ausreißer in das Datenarray Spannung von 20 V ein.
  4. Zeigen Sie das Ergebnis entsprechend Abb. 1. Eine graue Gerade bildet den Mittelwert, die Messwerte sind tote Punkte und der Ausreißer ist blau eingekreist.
  5. Speichern Sie die Variablen Zeit und Spannung in der Datei Messdaten.mat.
  6. Werten Sie den Quelltext mit Header, Kommentaren und Hilfe auf.

Local Indexing


MATLAB® Befehlsübersicht
→ zurück zum Hauptartikel: BSE Modellierung und Simulation - SoSe26