Difference between revisions of "ApCoCoA-1:Num.NumericalDerivative"

From ApCoCoAWiki
(New page: <command> <title>Num.NumericalDerivative</title> <short_description>Compute numerical derivatives of arbitrarily spaced data using local polynomial regression.</short_description> <synt...)
 
m (insert version info)
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
 +
{{Version|1}}
 
<command>
 
<command>
 
   <title>Num.NumericalDerivative</title>
 
   <title>Num.NumericalDerivative</title>
Line 49: Line 50:
  
 
     <seealso>
 
     <seealso>
       <see>Num.SavGol</see>
+
       <see>ApCoCoA-1:Num.SavGol|Num.SavGol</see>
 
     </seealso>
 
     </seealso>
 
     <types>
 
     <types>
Line 58: Line 59:
 
     <key>Num.NumericalDerivation</key>
 
     <key>Num.NumericalDerivation</key>
 
     <key>numerical.NumericalDerivation</key>
 
     <key>numerical.NumericalDerivation</key>
     <wiki-category>Package_numerical</wiki-category>
+
     <wiki-category>ApCoCoA-1:Package_numerical</wiki-category>
 
   </command>
 
   </command>

Latest revision as of 10:29, 7 October 2020

This article is about a function from ApCoCoA-1.

Num.NumericalDerivative

Compute numerical derivatives of arbitrarily spaced data using local polynomial regression.

Syntax

NumericalDerivative(Points: MAT, MaxDiffOrd:INT, Nl:INT, Nr:INT, Deg:INT)

Description

This command computes numerical derivatives of given data series.

Matrix Points is considered to consist of two columns, ie., is considered to be of type Mat([[X_1,Y_1],...,[X_k, Y_k]]).

The polynomial degree Deg must be less than the window size Nl+Nr+1. The derivatives are computed up to order MaxDiffOrd.

The resulting matrix has Nl+Nr rows less than Points and has MaxDiffOrd+1 columns.

  • @param Points The data points for which numerical derivatives are computed.

  • @param MaxDiffOrd The order up to which derivatives are computed.

  • @param Nl Number of left data points to be considered.

  • @param Nr Number of right data points to be considered.

  • @param Deg Maximum degree of the interpolation polynomal. Must be greater or equal MaxOrd.

  • @return A matrix that represents the derivatives of Points up to order MaxDiffOrd.


Example

Points := Mat([[ I^2/800, Fn.CosN(I^2/800, 10) ] | I In 0..40 ]);

MaxDiffOrd := 3;
Nl := 4;
Nr := 4;
Deg := 3;
Mode := 0; -- Mode is currently not used!
StepWidth := 0.5;

Result := Num.NumericalDerivative(Points, MaxDiffOrd, Nl, Nr, Deg);
Dec(Result, 2); 

-- (Result) --
Mat([
  [<quote>0.99</quote>, <quote>0.02</quote>, <quote>0.99</quote>, <quote>0.03</quote>]
  [<quote>0.99</quote>, <quote>0.03</quote>, <quote>0.99</quote>, <quote>0.05</quote>]
[...]

See also

Num.SavGol