3 svar
39 visningar
Johanspeed är nöjd med hjälpen!
Johanspeed 219
Postad: 28 jan 2020

Beräkning av partiella derivator i mat lab

Förstår ej varför jag inte kan få fram något värde på den anonyma funktionen derivata jag skapar i koden. Jag är inte intresserad av svar av folk som menar att jag bör använda inline, en påläst person förstår att det inte är något alternativ i framtiden.

Tack på förhand

Ebola 991
Postad: 28 jan 2020 Redigerad: 28 jan 2020

Problemet ligger i din definition av funktionen, skriv så här istället:

clear
syms x y
z(x,y) = x*y^2 + x^3;
diff(z(x,y),x)
derivata = diff(z,x)
derivata(2,5)

Johanspeed 219
Postad: 28 jan 2020
Ebola skrev:

Problemet ligger i din definition av funktionen, skriv så här istället:

clear
syms x y
z(x,y) = x*y^2 + x^3;
diff(z(x,y),x)
derivata = diff(z,x)
derivata(2,5)

Ja, tack! Jag trodde @(x, y) behövde användas när man skulle skapa en funktion i en mat lab fil, dvs om man inte använder 'function' för att definera en funktion. Jag förstår dock fortfarande inte varför inte mitt sätt går. 'derivata' borde ju bli en funktion av två variabler till derivatan av z. Vad är det jag missar?

Ebola 991
Postad: 28 jan 2020

Det bör ha med hur du kopplade din function_handle felaktigt genom att beskriva en funktion som anropas (diff-funktionen) som argument. Det bildar ett slags knepigt nästat anropsschema som jag inte tror att matlab-syntax kan begripa.

Om du vill ha ett ordentligt svar får du fråga här:

stack overflow

Om du har ett MathWorks konto (kan skapas med universitets-mailen) skriv din fråga här:

Matlab Central

Svara Avbryt
Close