模具Übersetzung柴油机站点veraltet。Klicken Sie hier,嗯die neueste版本auf english zu sehen。
脚本和Funktionen
Uberblick
MATLAB®stellt eine leistungsstarke Programmiersprache and eine interaktive Rechnerumgebung zur Verfügung。Sie können Befehle der Sprache nacheinander in die Befehlszeile von MATLAB ein oder eine Reihe von Befehlen in eine Datei schreiben, die Sie anschließend ausführen wie jede andere Funktion von MATLAB。Verwenden Sie den MATLAB编辑器oder einen beliebigen anderen Texteditor,嗯Ihre eigenen Funktionsdateien zu erstellen。如芬你的diese Funktionen wie alle anderen MATLAB Funktionen oder Befehle auf。
Es gibt zwei Arten von programme:
Skripts, die keine eingabearguente akzeptieren bzw。keine Ausgabeargumente zurückgeben。这是我的错,我的错,我的错。
Funktionen, die Eingabeargumente akzeptieren und Ausgabeargumente zurückgeben。互联网变量信德für die Funktion lokal verfügbar。
在MATLAB中编写程序,编译程序,编译程序,编译程序,编译程序,编译程序,编译程序möchten。Wenn Sie mit der Zeit eine größere Anzahl eigener Dateien entwickeln, werden Sie diese in anderen Ordnern und persönlichen Toolboxen organisieren, die Sie Ihrem MATLAB Suchpfad hinzufügen können。
Wenn Sie Funktionsnamen duplizieren, führt MATLAB die Funktion mit dem ersten Vorkommen im Suchpfad aus。
我是你,我是你,我是你myfunction.m
, anzeigen möchten, geben Sie Folgendes ein:
myfunction类型
Skripts
文赛因Skriptaufrufen, vereinfacht MATLAB die in der Datei gefundenen Befehle。脚本können auf bestehende Daten im Arbeitsbereich angewandt werden oder sie können neue Daten erstellen, auf die sie angewandt werden。Auch wenn Skripts keine ausgabearguente zurückgeben, verbleiben alle Variablen, die sie erstellen, i Arbeitsbereich, sodass sie für nachfolgende Berechnungen verwendet werden können。祖德姆können Skripts mithilfe von Funktionen wie情节
grafische Ausgaben erstellen。
我爱你,我爱你magicrank.m
,模具folgenden MATLAB Befehle enthält:
研究r = 0(1,32)的魔方秩;对于n = 3:32 r(n) = rank(magic(n));结束酒吧(右)
温思死安未松
magicrank
eingeben, führt MATLAB die Befehle aus, berechnet den Rang der ersten 30 magischen Quadrate und plot in balken图解des ergebnses。Wenn die Datei ausgeführt wurde, verbleiben die Variablenn
和r
im Arbeitsbereich。
Funktionen
Funktionen sind Dateien, die eingabearguente akzeptieren und ausgabearguente zurückgeben。我的祖国,我的祖国,我的祖国müssen我的祖国。Funktionen werden auf Variablen innerhalb ihres eigenen Arbeitsbereichs angewandt,也getrent vom Arbeitsbereich, auf den Sie über die MATLAB Eingabeaufforderung zugreifen。
Ein gutes Beispiel ist die Funktion排名
.你发现die Dateirank.m
im文件夹
工具箱/ matlab / matfun
Zum Anzeigen der Datei geben Sie Folgendes ein:
类型等级
Der Inhalt Der Datei sieht wie folgt aus:
函数r = rank(A,tol) % rank矩阵秩。% RANK(A)提供了矩阵A中线性%无关的行或列的数量的估计值。% RANK(A,tol)是A %大于tol的奇异值的数量。% RANK(A)使用默认的tol = max(size(A)) * norm(A) * eps。s = svd(A);if nargin==1 tol = max(size(A)') * max(s) * eps;结束r = sum(s > tol);
Die erste Zeile einer Funktion begin mit dem Schlüsselwort函数
.这就是我们的信仰和信念。在diesem Fall gibt es bis zu zwei eingabearguente und ein Ausgabeargument。
Die nächsten Zeilen - bis zur ersten leeren oder ausführbaren Zeile - sind Kommentarzeilen mit dem Hilfetext。Diese Zeilen werden gedruckt, wenn Sie Folgendes ingeben:
帮助排名
Die erste Zeile des Hilfetexts ist Die Zeile H1, Die MATLAB anzeigt, wenn Sie den Befehllookfor
verwenden奥得河帮助
在einem orderner anfordern。
Der übrige Teil Der Datei ist Der ausführbare MATLAB编程代码,Der die Funktion definiert。死的变量年代
我是Funktionsrumpf sowie die Variablen aus der ersten Zeile,r
,一个
和托尔
,信德lokaleFunktion变量。这个变量是由MATLAB的Arbeitsbereich得到的。
Dieses Beispiel veranschoulicht einen aspkt der MATLAB Funktionen, den andere Programmiersprachen normalerweise nicht bieten:变量Anzahl von Argumenten。死Funktion排名
kann auf unterschiedlichste Weise verwendet werden
rank(A) r = rank(A) r = rank(A,1.e-6)
我爱你,我爱你,我爱你。Wenn kein Ausgabeargument angegebenist, wild das Ergebnis in答
gespeichert。我爱你,我爱你,我爱你,我爱你。Innerhalb des Funktionsrumpfs stehen zwei Größen mit den Namen输入参数个数
和nargout
zur Verfügung, die angeben, wie viele Ein- und ausgabearguente珠宝,der Verwendung der Funktion beteiligt sind。死Funktion排名
verwendet输入参数个数
, muss jedochnargout
不verwenden。
Funktionstypen
MATLAB stellt verschiedene Funktionstypen zur Verfügung, die für die Programmierung verwendet werden können。
Anonyme Funktionen
风景明信片anonyme Funktion表der MATLAB Funktion, die mit einzelnen MATLAB Anweisung definiert ist。Sie best auseinem einzelnen MATLAB Ausdruck und einer beliebigen Anzahl von Eingabe- und Ausgabeargumenten。Sie können eine匿名Funktion direkt in der MATLAB Befehlszeile oder innerhalb einer Funktion bzw。eines Skripts definierenAuf diese Weise lassen sich einfache Funktionen schnell erstellen, ohne jedes Mal eine Datei für die jeweilige Funktionen erstellen zu müssen。
Die Syntax zum Erstellen einer anonymen Funktion aus einem Ausdruck lautet wie folgt:
F = @(argglist)表达式
我叫安伟松,我叫Funktion erstellt,我叫Zahl findet。Wenn Sie diese Funktion aufrufen, weist MATLAB den von Ihnen übergebenen Wert der Variablenx
Zu und verwendet anschließendx
在格勒中x ^ 2。
:
SQR = @(x) x.^2;
Geben Sie zum Ausführen der Funktionsqr
Folgendes静脉:
A = sqr(5) A = 25
Hauptfunktionen和lokale Funktionen
Alle Funktionen, die nicht anonysind, müssen in einer Datei definiert sein。Jede dieser Funktionsdateien enthält eine erforderlicheHauptfunktion, die zuerst angezeigt weird, und eine beliebige Anzahllokaler Funktionen, die auf die Hauptfunktion folgen können。欢迎你,欢迎你,欢迎你。Dies bedeutet, dass Hauptfunktionen außerhalb der Datei, in der sie definiert sind, aufgerufen werden können (zum Beispiel von der MATLAB Befehlszeile oder von Funktionen in anderen Dateien), während dieses für lokale Funktionen nicht möglich ist。Lokale Funktionen sinnd nur für die Hauptfunktion and die anderen lokalen Funktionen innerhalb ihrer eigenen Datei sichtbar。
死Funktion排名
我是AbschnittFunktionenabgebildet ist, ist ein Beispiel für eine Hauptfunktion。
私人Funktionen
风景明信片私人Funktion这是一种典型的大funktion。Ihr Alleinstellungsmerkmal ist, dass sie nur für eine begrenzte Gruppe anderer Funktionen sichtbar ist。我们的创意风格,我们的创意创意möchten我们的创意创意创意verfügbar machen möchten。
二等兵Funktionen被发现在unterornern mit speziellen Namen私人
.你的信努尔für Funktionen im übergeordneten orderner sichtbar。安格诺曼,长官newmath
befindet sich zum Beispiel im Suchpfad von MATLAB。Ein Unterordner vonnewmath
mit dem Namen私人
kann Funktionen enthalten, die nur von Funktionen innewmath
Aufgerufen werden können。
Da private Funktionen außerhalb des übergeordneten orderners nicht sichtbar sind, können sie dieselben Namen verwenden wie Funktionen in anderen ordern。Das ist nützlich, wenn Sie Ihre eigene Version einer bestimmten Funktion verwenden möchten, während Das Original in einem anderen orner beibehalten weird。Da MATLAB zunächst nach privaten und dann erst nach Standardfunktionen sucht, wardeine private Funktion mit dem Namentest.m
vor einer nicht privaten Datei mit dem Namentest.m
gefunden。
Verschachtelte Funktionen
Sie können Funktionen innerhalb des Rumpfs einer anderen Funktion definieren。Diese Funktionen gelten als inside halb der äußeren Funktionverschachtelt.我爱你,我爱你,我爱你,我爱你,我爱你。在diesem Beispiel ist die FunktionB
在Funktion一个
verschachtelt:
函数x = A(p1, p2)…B(p2)函数y = B(p3)…结束……结束
Genau wie andere Funktionen verfügt eine verschachtelte Funktion über ihren eigenen Arbeitsbereich,在dem die von der Funktion verwendeten Variablen gespeichert werden。你的名字叫什么?你的名字叫什么?所以kann beispielsweise eine Variable, der in Wert durch die Hauptfunktion zugewiesen wurde, von einer Funktion gelesen oder überschrieben werden, die auf einer beliebigen Ebene mit der Hauptfunktion verschachtelt ist。Auf ähnliche变量,die in einer verschachtelten Funktion zgewiesen ist, von einer der Funktionen, die diese Funktion enthält, gelesen oder überschrieben werden。
这个整体Variablen
Wenn mehere Funktionen eine einzelne Kopie einer变量gemeinsam verwenden solen, deklarieren Sie die变量einfach in allen Funktionen als全球
.Legen Sie dasselbe in der Befehlszeile fest, wenn Sie möchten, dass der Basisarbeitsbereich auf die Variable zugreifen kann。Die globale Deklaration muss vorhanden sein, bevor Die Variable tatsächlich in einer Funktion verwendet weird。Auch wenn es nicht erforderlich ist, können Sie für die Namen globaler Variablen Großbuchstaben verwenden, um Sie von den anderen Variablen besser unterscheiden zu können。我爱你,我爱你,我爱你falling.m
:
函数h = falling(t) global GRAVITY h = 1/2*GRAVITY*t.^2;
Anschließend geben Sie die folgenden:
重力= 32;Y =下降((0:.1:5)');
死在地球上,安为松根,斯特伦,沃特,德重力
in der Befehlszeile zugewiesen wurde, innerhalb der Funktion zur Verfügung。Danach können Sie重力
interaktiv ändern und erhalten so neue Lösungen, ohne Dateien bearbeiten zu müssen。
Befehls- vs. funktions语法
Sie können MATLAB Funktionen schreiben, die Zeichenargumente ohne die Klammern und Anführungszeichen akzeptieren。Das bedeutet, dass MATLAB
Foo a b c
Wie folgt interpretiert:
foo (a, b, c)
Wenn Sie also die Befehlsform ohne Anführungszeichen verwenden, kann MATLAB keine Ausgabeargumente zurückgeben。那些erstellt
传说苹果橙子
einelegende在einem Plot和verwendet dafür die Beschriftungen苹果
和橙子
.Wenn Sie möchten, dass der Befehl传说
seine ausgabearguente zurückgibt, müssen Sie die Befehlsform mit Anführungszeichen verwenden:
[legh,objh] = legend('apples','oranges');
Außerdem müssen Sie die Form mit Anführungszeichen verwenden, wenn eines der Argumente kein Zeichenvektor ist。
当心
Zwar ist die Befehlssyntax ohne Anführungszeichen praktisch, sie kann jedoch in inigen Fällen falsch verwendet werden, ohne dass MATLAB einen Fehler general。
Konstruieren von Zeichenargumenten in Code
Die Funktionsform mit Anführungszeichen ermöglicht Ihnen das Konstruieren von Zeichenargumenten innerhalb des Codes。我的folgenden Beispiel werden mehrere Datendateien verarbeitet:August1.dat
,August2.dat
等。Es ward die Funktionint2str
verwendet, die eine Ganzzahl in Zeichen konvertiert, um den Dateinamen zu erstellen:
for d = 1:31 s = ['August' int2str(d)]“.dat”);load(s) %处理第d个文件末尾内容的代码