FOK!forum / School, Studie en Onderwijs / Matlab werkt me tegen
Grassmayerdinsdag 6 december 2005 @ 13:20
Ik zie mij genoodzaakt het volgende uit te voeren:
(klein deeltje van geheel)

eval([sprintf('M%d',n)] '(i1,i2,i3)' '=0');

matlab moet dus een string die ik construeer evalueren. Matlab vind het echter nodig om me alle tussenuitkomsten te laten zien (stel je voor dat n i1 i2 i3 in een loop zitten), ook al zet ik er punt-komma achter. Dit wil ik neit, want dit duurt te lang.

Oplossing?
Renedinsdag 6 december 2005 @ 13:21
Is dit ICT ofzo?
Grassmayerdinsdag 6 december 2005 @ 13:23
Ik dacht... Matlab -> Wiskunde -> School en Studie
Renedinsdag 6 december 2005 @ 13:25
oooh, Wiskunde, aha
Anders kon t naar dig namelijk
evt. kan je het -> [Centraal] Bèta 'huiswerk en vragen topic' proberen? Hebben we een goede dekking voor wiskundige vragen
Thegeronimodinsdag 6 december 2005 @ 13:28
moet er geen ; achter de sprintf functie, misschien dat ie dan de tussenkomsten niet weergeeft?
Grassmayerdinsdag 6 december 2005 @ 13:39
Nope... het heeft iets met die 'eval' te maken... die laat gewoon altijd alles zien
Thegeronimodinsdag 6 december 2005 @ 13:41
yup, heb het ook even getest, maar klopt hij laat het altijd zien.
Dus heb ook geen idee hoe je het uitzet.
Pie.erdinsdag 6 december 2005 @ 16:52
Jouw code loopt bij mij al niet, ik snap je notatie eigenlijk ook niet...

Maar als ik doe:
M10=99;
n=10;
eval([sprintf('M%d',n)])==99


dan is het resultaat mooi

ans =

1


Zonder dat hij de 99 laat zien...

Jouw code: eval([sprintf('M%d',n)] '(i1,i2,i3)' '=0')
Wat doen die (i1,i2,i3) en de =0 tussen aanhalingstekentjes?
sprintf maakt een string, eval evalueert die string, wat wil je nu nog meer? Vergelijken of hij nul is ofzo?
Grassmayerdinsdag 6 december 2005 @ 17:22
quote:
Op dinsdag 6 december 2005 16:52 schreef Pie.er het volgende:


Jouw code: eval([sprintf('M%d',n)] '(i1,i2,i3)' '=0')
Wat doen die (i1,i2,i3) en de =0 tussen aanhalingstekentjes?
sprintf maakt een string, eval evalueert die string, wat wil je nu nog meer? Vergelijken of hij nul is ofzo?
sprintf maakt een string... bij mij een vraag ( M10(i1,i2,i3) = 0 (element i1,i2,i3 uit matrix M10)) en evalueer die met eval. Eval laat ALTIJD de oplossing zien, terwijl ik dat helemaal niet wil, want ik moet het vaak doen, en die output op het scherm kost bergen met tijd
Pie.erwoensdag 7 december 2005 @ 09:39
quote:
Op dinsdag 6 december 2005 17:22 schreef Grassmayer het volgende:

[..]

sprintf maakt een string... bij mij een vraag ( M10(i1,i2,i3) = 0 (element i1,i2,i3 uit matrix M10)) en evalueer die met eval. Eval laat ALTIJD de oplossing zien, terwijl ik dat helemaal niet wil, want ik moet het vaak doen, en die output op het scherm kost bergen met tijd
Ow, dan bedoel je denk ik
eval(sprintf('M%d(i1,i2,i3)',n))==0
klopt dat of doet dit nog iets fout?