Bruch statt Dezimale < Mathematica < Mathe-Software < Mathe < Vorhilfe
|
Also ich habe folgendes Problem ich hab in meinem Physikstudium in Mathemathischemethodik in der Physik ein Übungsblatt das ich mit Mathematika lösen soll.
Naja und ich bin noch ein ziehmlicher n00b in Mathematika.
ok ich habe also Folgenden matrize
TT = ({{M/12 (3 [mm] r^2 [/mm] + 4 [mm] h^2) [/mm] + mt [mm] h^2, [/mm] 0, -mt r h}, {0,
M/12 (3 [mm] r^2 [/mm] + 4 [mm] h^2) [/mm] + mt [mm] (h^2 [/mm] + [mm] r^2), [/mm] 0}, {-mt r h, 0,
M/2 [mm] r^2 [/mm] + mt [mm] (r^2)}})
[/mm]
bei diser will ich nun meine variablen mit fixen werten ersetzen
MatrixForm[FullSimplify[TT, {r == 1, h == 1, M == 1 , mt == 1/2}]]
leider gibt mir Mathematica aber z.B. für den ersten wert statt des bruchs 13/12 die dezimale 1,0833333 an.
meine konkrete frage ist also:
wie bekomm ich mathematika dazu mir 13/12 an zu zeigen?
schon mal vielen dank für die hoffentlich schnelle antwort ^^
Und btw bitte schön ans forum ich oute mich das ich auch hier ein n00b bin ;P
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 07:31 Di 25.05.2010 | Autor: | Frasier |
Hallo LSHDackel,
bei mir (MMA 7.0 unter Windows) funktioniert sowohl deine Version als auch die Ersetzung mit
TT/.{r->1,h->1,M->1,mt->1/2}
lg
F
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 10:47 Di 25.05.2010 | Autor: | LSHDackel |
danke für die hilfe.
mein problem war warsch. das ich 1/2 erst als 0.5 geschrieben hatte
und ich den kernl neustarten musste damit er mir das exakte ergebniss ausgibt.
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 11:57 Mi 26.05.2010 | Autor: | Peter_Pein |
Da wäre kein Neustart, sondern lediglich eine Neueingabe mit exakten Werten (d.h. Brüchen) nötig gewesen.
Sobald Du eine Fließkommakonstante eingibst, geht Mathematika davon aus, dass näherungsweise gerechnet werden soll.
Simples Beispiel:
die Eingabe
In[1]:= Log[2]
ergibt den exakten Wert des natürlichen Logarithmus von 2
Out[1]= Log[2]
manche Eingaben werden auch exakt vereinfacht, wie beispielsweise
In[2]:= Log[E^(13/12)]
Out[2]= 13/12
Sobald jedoch ein Dezimalpunkt auftaucht, wird's ungenau:
In[3]:= Log[2.]
Out[3]= 0.693147
oder auch etwas weniger ungenau:
In[4]:= Log[2.'30]
Out[4]= 0.693147180559945309417232121458
bzw.
In[5]:= Log[SetPrecision[2, 30]]
Out[5]= 0.693147180559945309417232121458
Gruß,
Peter
P.S.: es existiert aber auch die Möglichkeit, aus Fließkommazahlen Brüche erstellen zu lassen:
In[6]:= 0.5+13/12-1/2
Out[6]= 1.08333
In[7]:= Rationalize[%]
Out[7]= 13/12
Rationalize kann auch mit einem zweiten Parameter, der den zulässigen Fehler bei der Umwandlung in eine rationale Zahl angibt, aufgerufen werden - aber dafür hat Mathematica ja seine Hilfe-Funktion
|
|
|
|