]> gitweb.michael.orlitzky.com - octave.git/blobdiff - legendre_p.m
Move conjugate_gradient_method.m to vanilla_cgm.m.
[octave.git] / legendre_p.m
index 6238929eb2e4aea13ea1cc1548b82dcc59fdb301..0481d47be73d3af8c660b9a195b3fd4a375d16e2 100644 (file)
@@ -1,11 +1,11 @@
 function P = legendre_p(n)
-  ## Return the nth legendre polynomial.
+  ## Return the `n`th Legendre polynomial.
   ##
-  ## INPUTS:
+  ## INPUT:
   ##
   ##   * ``n`` - The index of the polynomial that we want.
   ##
-  ## OUTPUTS:
+  ## OUTPUT:
   ##
   ##   * ``P`` - A polynomial function of one argument.
   ##
@@ -14,14 +14,14 @@ function P = legendre_p(n)
     P = NA;
   elseif (n == 0)
     ## One of our base cases.
-    P = @(x) 1
+    P = @(x) 1;
   elseif (n == 1)
     ## The second base case.
-    P = @(x) x
+    P = @(x) x;
   else
-    ## Compute recursively.
-    prev = legendre_p(n-1)
-    prev_prev = legendre_p(n-2)
-    P = @(x) (1/n)*( (2*n - 1)*prev(x) - (n-1)*prev_prev(x) )
+    ## 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) );
   end
 end