1. Not finding help here? Sign up for a free 30min tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

How do I find the Critical points of a multi-variable function using MATlab?

  1. Mar 22, 2005 #1
    How do I find the Critical points of a two-variable function using MATlab?

    I have a problem, I cannot seem to find the critical points of a two-variable function for the life of me!

    The funtion [tex]f(x,y) = 10x^2y - 5x^2 - 4y^2 - x^4 -2y^4[/tex] is supposed to have six potential critical points. I have the following:

    [tex]f_x = 20yx - 10x - 4x^3[/tex]
    [tex]f_y = 10x^2 - 8y - 8y^3[/tex]

    For what it's worth:

    [tex]\nabla f_x = (20y - 10 - 12x^2) i + (20x) j[/tex]
    [tex]\nabla f_y = (20x) i + (-8-24y^2) j[/tex]

    [tex]\nabla f_x = \lambda\nabla f_y[/tex]

    [tex]\lambda = \frac{20y - 10 - 12x^2}{20x} = \frac{20x}{-8-24y^2}[/tex]

    I know that the potential critical points are at [tex]f_x = f_y = 0[/tex], but how do I find these using MATlab, or even on paper. How would I solve for both equations?

    I just can't crack this problem!

    P.S. - I have MATlab version 6.5
    Last edited: Mar 22, 2005
  2. jcsd
  3. Mar 22, 2005 #2
    Here are some preliminary (probably wrong) answers:

    Ok, I took the first equation [tex]f_x = 20yx - 10x - 4x^3 = 0[/tex] and factored out a [tex]2x[/tex] to get [tex]2x (10y - 5 - 2x^2) = 0[/tex].

    Then I solved for [tex]-2x^2[/tex] to get [tex]-2x^2 = 5 - 10y[/tex] and I substituted that into the second equation of [tex]f_y = 10x^2 - 8y - 8y^3 = 0[/tex] to get [tex]f_y = -5(5 - 10y) - 8y - 8y^3[/tex]. This resolves down to [tex]-8y^3 + 42y = 25[/tex] which one can solve and get [tex]y = 1.898, 0.647, -2.545[/tex], but what do I do now?
    Last edited: Mar 22, 2005
  4. Mar 22, 2005 #3
    Using the supposed answers, I figured this:

    Plug this [tex]y = 1.898, 0.647, -2.545[/tex] into [tex]f_x = 20yx - 10x - 4x^3[/tex] to get [tex]x = \pm 2.644, \pm 0.857, 0[/tex]

    Are these correct? When the [tex](x, y)[/tex]'s are plugged into [tex]f_x[/tex] and [tex]f_y[/tex] they are pretty close to zero (rounding). But for some reason I don't think this is correct. How would I check with MATlab?
  5. Mar 22, 2005 #4
    This may not be any help but ...

    have you tried creating symbolic variables for x and y?

    >syms x y
    and then solve for g
    (I would have tyied this before posting but my MATlab has a bug and willl not recognise the syms command!)
    Last edited: Mar 22, 2005
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?

Similar Discussions: How do I find the Critical points of a multi-variable function using MATlab?