Creo Flow Analysis > Erste Schritte mit Creo Flow Analysis > Oberfläche für Creo Flow Analysis > Ausdrucks-Editor > Funktionen
  
Funktionen
Die folgenden Funktionen im Ausdrucks-Editor (Expression Editor) ermöglichen die mathematische und logische Bearbeitung von Vektoren und Skalaren:
Operatoren
Für Vektoren und Skalare, wie Addition und Subtraktion
Nur für Skalare, z.B. Quadratwurzeln und Logarithmen
Nur für Vektoren, wie Skalar- und Kreuzprodukte
Logische Funktionen
Trigonometrische und hyperbolische Funktionen
Andere Funktionen
Tabellen
Operatoren
Die Operatoren ermöglichen die mathematische Bearbeitung von Vektoren und Skalaren. In der folgenden Tabelle sind a, b und c Skalare, und U, V und W sind Vektoren.
Ausdrucksoperatoren
Funktion
Beispiel
Operatoren: Skalare und/oder Vektoren
Addition
a = b+c oder V = U+W
Subtraktion
a = b-c oder V = U-W
*
Multiplikation zweier Skalare oder eines Skalars und eines Vektors
a = b*c oder V = a*U (aber nicht V = U * W)
Operator: nur Skalare
/
Division
a = b/c
exp(Skalar)
Exponentialfunktion zur Basis e
a = exp(b) potenziert e mit b: a = eb
ln(Skalar)
Funktion des natürlichen Logarithmus für e
a = ln(b) gibt den natürlichen Logarithmus von b zurück
sqrt(Skalar)
Quadratwurzelfunktion
a = sqrt(b)
^
Exponentialfunktion
a = b^c potenziert b mit c: a = bc
Operator: nur Vektoren
&
Skalarprodukt
a = V&U (a = |V| |U| cos (Winkel))
^
Kreuzprodukt
V = U^W (|V| = |U| |W| x sin (Winkel) ). Die Rechte-Hand-Regel wird angewendet.
len(Vektor)
gibt die Länge des Vektors V zurück
a = len(V)
normalize(Vektor)
gibt einen normalisierten Einheitsvektor V/|V| zurück
V = normalize(U)
rotate(Vektor,Winkel,Richtung,Zentrum)
Gibt einen rotierten Vektor basierend auf dem Rotationswinkel, RHR, der Rotationsachse und einem optionalen Rotationszentrum zurück. (Wenn kein Zentrum definiert ist, wird standardmäßig 0,0,0 verwendet.)
Vrot = rotate(V,alpha,U,W), wobei V der zu rotierende Vektor, alpha der Winkel in Radianten und U die Rotationsachse ist. Die Rechte-Hand-Regel wird angewendet. W ist ein optionaler Mittelpunkt, der als Vektor definiert ist.
Logische Funktionen
Die logischen Funktionen ermöglichen das Einschließen von logischen Aussagen.
Ausdrucksoperatoren
Funktion
Beispiel
true
Logik wahr
false
Logik falsch
<
Kleiner als
>
Größer als
==
Gleich im logischen Vergleich
a = (b==3) ? 1 : 2
oder
Logisches "oder"
und
Logisches "und"
!
Logische Negation
!< nicht kleiner als
a = Ausdruck ? b : c
a = b, wenn Ausdruck wahr ist;
a = c, wenn Ausdruck falsch ist
a = (b>3) ? 1 : 2 ==> (wenn b größer als 3 ist, a = 1; andernfalls a = 2)
Trigonometrische und hyperbolische Funktionen
Die trigonometrischen und hyperbolischen Funktionen ermöglichen den Einschluss der entsprechenden Funktionen in die mathematischen Aussagen.
Transzendente Ausdrücke
Funktion
Trigonometrisch
sin(Radianten)
Sinusfunktion
cos(Radianten)
Kosinusfunktion
cot(Radianten)
Kotangensfunktion
tan(Radianten)
Tangensfunktion
asin()
Umkehrfunktion der Sinusfunktion, gibt den Wert in rad zurück
acos()
Umkehrfunktion der Kosinusfunktion, gibt den Wert in rad zurück
acot()
Umkehrfunktion der Kotangensfunktion, gibt den Wert in rad zurück
atan()
Umkehrfunktion der Tangensfunktion, gibt den Wert in rad zurück
atan2(y,x)
Umkehrfunktion der Tangensfunktion mit zwei Variablen, (-pi, pi), gibt den Wert in rad zurück
Hyperbolisch
sinh()
Sinus hyperbolicus
cosh()
Kosinus hyperbolicus
coth()
Kotangens hyperbolicus
tanh ()
Tangens hyperbolicus
asinh()
Umkehrfunktion des Sinus hyperbolicus
acosh()
Umkehrfunktion des Kosinus hyperbolicus
acoth()
Umkehrfunktion des Kotangens hyperbolicus
atanh()
Umkehrfunktion des Tangens hyperbolicus
Andere Funktionen
Ausdrucksoperatoren
Funktion
Beispiel
abs(x)
Absolutwertfunktion
max(x,y)
Maximumfunktion
a = max(b,c) ==> a= b wenn b >c oder a=c wenn c>=b
min(x,y)
Minimumfunktion
a = min(b,c) ==> a= b wenn b <c oder a=c wenn c<=b
mod(x,y)
Modulfunktion
a = mod(c,b) ==> a = der Rest von c geteilt durch b
sgn(x)
gibt ein Flag (-1, 0 oder 1) zurück, das das Vorzeichen angibt
a = sgn(b) ==> a = -1 wenn b<0; a = 0 wenn b = 0; a = 1 wenn b>0
step(x)
Schrittfunktion, gibt eine 0 oder 1 zurück, je nach dem Wert relativ zu null
a = step(b) ==> a = 0 wenn b<0; a = 1 wenn b >= 0
Tabellen
Die Tabellenfunktion ermöglicht das Einschließen von Daten aus externen Tabellendateien, die sich im selben Verzeichnis wie die Projektdatei (*.spro) befinden.
Tabellenausdrücke
Funktion
table(Dateiname,x)
interpoliert aus einer 1D-Tabelle
table(Dateiname, x ,y)
interpoliert aus einer 2D-Tabelle
Beispiel
Tabellen verwenden:
# Informationen aus Tabellen extrahieren
p = table("inlet_pressure.txt",time)
Dichte = table("R134a_density.txt",temp,pre)
Tabellenformat: 1D (Dateiname, x) – Ermöglicht Ihnen den Zugriff auf eine 1D-Datentabelle, die sich im selben Verzeichnis wie die Projektdatei (*.spro) befindet.
Format der 1D-Tabelle für gleichmäßige Verteilung
<?xml version="1.0" encoding="ISO-8859-1"?>
<table size="n" min="xmin" max="xmax" outside="flat | extrapolation">
# comments (x assumed to have uniform distribution)
v1
v2
...
vn
</table/>
Format der 1D-Tabelle für nicht gleichmäßige Verteilung
<?xml version="1.0" encoding="ISO-8859-1"?>
<table size="n" outside="flat | extrapolation">
# You can add comments by putting the hashmark “#” in front .. but do not insert comments before the xml line (line 1)
x1 v1
x2 v2
xn vn
</table/>
Im Format legt outside = “flat” or outside = "extrapolation" unter dem table-Tag fest, wie Sie einen Wert bestimmen, wenn die Eingabe x, y außerhalb des zulässigen Bereichs liegt.
Tabellenformat: 2D (Dateiname, x, y) – Ermöglicht Ihnen den Zugriff auf eine 2D-Datentabelle, die sich im selben Verzeichnis wie die Projektdatei (*.spro) befindet.
Format der 2D-Tabelle für gleichmäßige Verteilung
<?xml version="1.0" encoding="ISO-8859-1"?>
<table size="nx my" min="xmin ymin" max="xmax ymax" outside="flat | extrapolation">
# comment
# values table (x and y assumed to have uniform distribution
v(x1,y1) v(x2,y1) … v(xn,y1)
v(x1,y2) v(x2,y2) … v(xn,y2)
...
v(x1,ym) v(x2,ym) … v(xn,ym)
</table>
Format der 2D-Tabelle für nicht gleichmäßige Verteilung
<?xml version="1.0" encoding="ISO-8859-1"?>
<table size="nx my" outside ="flat | extrapolation">
# x and y variable ranges
x1 x2 … xn
y1 y2 … ym
# values table
v(x1,y1) v(x2,y1) … v(xn,y1)
v(x1,y2) v(x2,y2) … v(xn,y2)
...
v(x1,ym) v(x2,ym) … v(xn,ym)
</table>
Im Format legt outside = “flat” or outside = "extrapolation" unter dem table-Tag fest, wie Sie einen Wert bestimmen, wenn die Eingabe x, y außerhalb des zulässigen Bereichs liegt.
 
* Um einen Kommentar hinzuzufügen, geben Sie vor dem Text ein Rautensymbol "#" ein. Fügen Sie keine Kommentare vor der xml-Zeile oder Zeile 1 ein.
Ausdrucks-Editor