Find the minimum of a multi-variable function

26 Ansichten (letzte 30 Tage)
emonhossain roy
emonhossain roy am 23 Jun. 2019
Bearbeitet: infinity am 23 Jun. 2019
Question: Find the minimum of in the window [0,2]×[2,4] with increment 0.01 for x and y.
My approach:
syms fun(x,y) fx(x,y) fy(x,y) fxy(x,y) x y
=;
;
;
;
pt=solve([==0,==0],[x y]) But it gives me an error.
besides what about the window and increment mentioned that question. Any solution will be appreciated .
Thanks in advance .
  2 Kommentare
infinity
infinity am 23 Jun. 2019
Hello,
Could you provide your code and show us what is the error?
emonhossain roy
emonhossain roy am 23 Jun. 2019
code:
clc
clear all
syms fun(x,y) fx(x,y) fy(x,y) fxy(x,y) x y
fun(x,y)=x^2+y^2-2*x-6*y+14;
fx(x,y)=diff(fun(x,y),x);
fy(x,y)=diff(fun(x,y),y);
fxy(x,y)=diff(fx(x,y),y);
pt=solve([fx(x,y)==0,fy(x,y)==0],[x y])
error:
Warning: 4 equations in 2 variables.
> In C:\Program Files\MATLAB\R2013a\toolbox\symbolic\symbolic\symengine.p>symengine at 56
In mupadengine.mupadengine>mupadengine.evalin at 97
In mupadengine.mupadengine>mupadengine.feval at 150
In solve at 170
Warning: Explicit solution could not be found.
> In solve at 179
pt =
[ empty sym ]

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

infinity
infinity am 23 Jun. 2019
Bearbeitet: infinity am 23 Jun. 2019
Hello,
In your code, it was not good to put the name like "fun(x,y)". Also, we do not need to declare "fx, fun, fy,.." as symbolic variable. Here is a small code that you can refer
clear
syms x y
fun=x^2+y^2-2*x-6*y+14;
fx=diff(fun,x);
fy=diff(fun,y);
pt=solve([fx==0,fy==0],[x y]);
% pt=solve(fx==0,fy==0);
sol = struct2array(pt)
It will give us the solution
sol =
[ 1, 3]
I have run this code on Matlab2018a. Maybe in your Matlab version, there will be some different.

Weitere Antworten (0)

Kategorien

Mehr zu Symbolic Math Toolbox finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by