X-Git-Url: http://gitweb.michael.orlitzky.com/?p=octave.git;a=blobdiff_plain;f=legendre_p.m;h=36f67617a453124d1b3992aa7d6f45298333dc98;hp=276e7407d39f2d410dd38439f389891b11993b8d;hb=8df0aa3b8e47b596626cf0f833d9e0c0143bf4d5;hpb=79707c807c6f44eb95ec0eeeaa28f7e98bf8c319 diff --git a/legendre_p.m b/legendre_p.m index 276e740..36f6761 100644 --- a/legendre_p.m +++ b/legendre_p.m @@ -1,25 +1,25 @@ function P = legendre_p(n) - ## Return the nth legendre polynomial. - ## - ## INPUTS: - ## - ## * ``n`` - The index of the polynomial that we want. - ## - ## OUTPUTS: - ## - ## * ``P`` - A polynomial function of one argument. - ## + % Return the `n`th Legendre polynomial. + % + % INPUT: + % + % * ``n`` - The index of the polynomial that we want. + % + % OUTPUT: + % + % * ``P`` - A polynomial function of one argument. + % if (n < 0) - ## Can't do anything here. Return nothing. + % Can't do anything here. Return nothing. P = NA; elseif (n == 0) - ## One of our base cases. + % One of our base cases. P = @(x) 1; elseif (n == 1) - ## The second base case. + % The second base case. P = @(x) x; else - ## Compute recursively. + % Not one of the base cases, so use the recursive formula. prev = legendre_p(n-1); prev_prev = legendre_p(n-2); P = @(x) (1/n).*( (2*n - 1).*x.*prev(x) - (n-1).*prev_prev(x) );