Find the minimum of a multi-variable function

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 Comments

Hello,
Could you provide your code and show us what is the error?
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 ]

Sign in to comment.

 Accepted Answer

infinity
infinity on 23 Jun 2019
Edited: infinity on 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.

More Answers (0)

Tags

Asked:

on 23 Jun 2019

Edited:

on 23 Jun 2019

Community Treasure Hunt

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

Start Hunting!