» »

[Mathematica 8] Transformacija homogenega sistema enačb v matriko

[Mathematica 8] Transformacija homogenega sistema enačb v matriko

alexa-lol ::

hej :D mene zanima kako, s katero funkcijo, bi transformiral homogen sistem enačb v matriko. Gre za to, da imam "velike" sisteme (cca 20x20 - 30x30) in enačbe pri katerih v posamezni enačbi nastopajo vedno le 3 spremenljivke. Sistem lahko rešim s Solve[x+y==0 && x-y==0, {x,y}] a bi želel imeti v obliki matrike. Sistem enačb je homogen in gre samo za to, da dobim ven rang oz. determinanto.

Ima kdo idejo. V osnovi lahko tudi v VB.NET napišem program ampak me zanima če ima Mathematica (oz. ker drug program) kaj takega vgrajeno.

Hvala in lp

sherman ::

A sistem enacb imas podan kot seznam enacb? Seznam izrazov?

alexa-lol ::

ja imam podane enacbe in zelim to spremeniti v ustrezno matriko.
Vse enacbe so sestavljene iz max 3 spremenljivk.

Ugotavljam ali je konstrukcija stabilna oz. labilna in za vsako togo telo in pa podpore ter vezi napisem kinematične enačbe.

Any idea? Lp

terryww ::

ask.sagemath.org
It is the night. My body's weak.
I'm on the run. No time to sleep.

overlord_tm ::

A nima Mathematica 8 ze vgrajen natural language input recognition (tako kot wolfram)? Bo ze sama poskrbela da se stvar da v matriko in resi. Drugace pa poglej funkcijo CoefficientList.

alexa-lol ::

Hval za odgovore a sem našel boljšo rešitev
CoefficientArrays[{x - y - z == 0, x + 2 y + z == 0}, {x, y, z}]
Normal[%]

potem pa izbereš koeficiente (iz outputa) in daš MatrixRank ali Det.

Output je oblike {{nekaj}, {koeficienti v obliki matrike}}. Je možno kako povedati, da želiš le 2 element "polja", recimo %[1], kaj takega.

Hvala in lp

sherman ::

Last[%]
ce hoces zadnji del.

Drugace dostopas do delov izrazov z izraz[[indeks]], torej dva oklepaja.

Zgodovina sprememb…

  • spremenilo: sherman ()

alexa-lol ::

thanks :D
this does the job
MatrixRank[Last[Normal[CoefficientArrays[{x - y - z == 0, x + 2 y + z == 0}, {x, y, z}]]]]

alexa-lol ::

Evo končno sem lahko naredil kar sem želel... npr. imamo konstrukcijo
 Ravninski sistem togih teles - konstrukcija

Ravninski sistem togih teles - konstrukcija


Podpore (drsna podpora) dopuščajo pomik s smeri koordinatne osi x in preprečujejo pomike v smeri koordinatne osi z in zasuk okoli koordinatne osi y.

Zanima nas če se pri poljubni obtežbi giblje -> Zapišemo ravnotežne enačbe in jih damo v matriko in izračunamo rang matrike
 Matrika in rang matrike

Matrika in rang matrike


Dejansko število prostostnih stopenj je enako število kinematičnih neznank (6) - rang matrike (5) = 1 -> sistem togih teles ima 1 prostostno stopnjo -> konstrukcija je labilna.

Zgodovina sprememb…

$%&/() ::

Tole bo pa uporabno, kolokvij iz statike čez 1 mesec :)


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Matematika-problem

Oddelek: Šola
81642 (1416) Math Freak
»

Gaussova eliminacija

Oddelek: Šola
114309 (3675) Math Freak
»

Matematika

Oddelek: Šola
284087 (3480) galu
»

pomoč pri linearni algebri

Oddelek: Šola
63335 (3186) whatever
»

Mehanika, kinetika

Oddelek: Znanost in tehnologija
222427 (2033) Thomas

Več podobnih tem