156
edits
(→Porting TISEAN: added link to "Table of functions") |
(moved "Procedure" to TISEAN_package:Procedure; added noise reduction tutorial.) |
||
Line 1: | Line 1: | ||
== Porting TISEAN == | == Porting TISEAN == | ||
This section | This section will focus on demonstrating the capabilities of the TISEAN package. The previous information about the porting procedure has been moved [[TISEAN_package:Procedure|here]]. | ||
== Tutorials == | |||
These tutorials are based on examples, tutorials and the articles located on the TISEAN website:<br/> [http://www.mpipks-dresden.mpg.de/~tisean/Tisean_3.0.1/ http://www.mpipks-dresden.mpg.de/~tisean/Tisean_3.0.1/].<br/> | |||
This tutorial will utilize the following dataset: | |||
* [http://www.mpipks-dresden.mpg.de/~tisean/Tisean_3.0.1/docs/tutorial/amplitude.dat amplitude.dat] | |||
[ | Please download it as the tutorial functions will reference it. | ||
=== Noise Reduction === | |||
This tutorial show different methods of the 'Noise Reduction' section of the TISEAN documentation (located [http://www.mpipks-dresden.mpg.de/~tisean/Tisean_3.0.1/docs/chaospaper/node22.html#SECTION00060000000000000000 here]). It shows the use of simple nonlinear noise reduction (function {{Codeline|lazy}}) and locally projective nonlinear noise reduction (function {{Codeline|ghkss}}). To start let's create noisy data to work with. | |||
{{Code|Creating a noisy henon map|<syntaxhighlight lang="octave" style="font-size:13px"> | |||
hen = henon (10000); | |||
hen = hen(:,1); # We only need the first column | |||
hen_noisy = hen + std (hen) * 0.02 .* (-6 + sum (rand ([size(hen), 12]), 3)); | |||
</syntaxhighlight>}} | |||
This created a Henon map contaminated by 2% Gaussian noise à la TISEAN. In the tutorials and exercises on the TISEAN website this would be equivalent to calling {{Codeline|makenoise -%2}} on the Henon map.<br/> | |||
Next we will reduce the noise using simple nonlinear noise reduction {{Codeline|lazy}}. | |||
{{Code|Simple nonlinear noise reduction|<syntaxhighlight lang="octave" style="font-size:13px"> | |||
clean = lazy (hen_noisy,7,-0.06,3); | |||
# Create delay vectors for both the clean and noisy data | |||
delay_clean = delay (clean); | |||
delay_noisy = delay (hen_noisy); | |||
# Plot both on one chart | |||
plot (delay_noisy(:,1), delay_noisy(:,2), 'b.;Noisy Data;','markersize,3,... | |||
delay_clean(:,1), delay_clean(:,2), 'r.;Clean Data;','markersize,3) | |||
</syntaxhighlight>}} | |||
On the chart created the red dots represent cleaned up data. It is much closer to the original than the noisy set.<br/> | |||
Now we will do the same, only with {{Codeline|ghkss}}. | |||
{{Code|Locally projective nonlinear noise reduction|<syntaxhighlight lang="octave" style="font-size:13px"> | |||
clean = ghkss (hen(:,1),'m',7,'q',2,'r',0.05,'k',20,'i',2); | |||
# Create delay vectors for both the clean and noisy data | |||
delay_clean = delay (clean); | |||
delay_noisy = delay (hen_noisy); | |||
# Plot both on one chart | |||
plot (delay_noisy(:,1), delay_noisy(:,2), 'b.;Noisy Data;','markersize,3,... | |||
delay_clean(:,1), delay_clean(:,2), 'r.;Clean Data;','markersize,3) | |||
</syntaxhighlight>}} | |||
[[Category:Octave-Forge]] | [[Category:Octave-Forge]] |
edits