diff options
author | shamikam | 2017-11-07 15:59:48 +0530 |
---|---|---|
committer | shamikam | 2017-11-07 15:59:48 +0530 |
commit | c0c0582462720ed597b00e116506570577614e89 (patch) | |
tree | 31dedd23698e5357b19c810b7d7a8464100ef44a | |
download | FOSSEE-Signal-Processing-Toolbox-c0c0582462720ed597b00e116506570577614e89.tar.gz FOSSEE-Signal-Processing-Toolbox-c0c0582462720ed597b00e116506570577614e89.tar.bz2 FOSSEE-Signal-Processing-Toolbox-c0c0582462720ed597b00e116506570577614e89.zip |
initial commit
836 files changed, 46673 insertions, 0 deletions
diff --git a/builder.sce b/builder.sce new file mode 100644 index 0000000..d67b226 --- /dev/null +++ b/builder.sce @@ -0,0 +1,38 @@ +mode(-1); + +// Copyright (C) 2017 - IIT Bombay - FOSSEE +// +// This file must be used under the terms of the BSD. +// This source file is licensed as described in the file LICENSE, which +// you should have received as part of this distribution. The terms +// are also available at +// https://opensource.org/licenses/BSD-3-Clause +// Author: Shamika Mohanan +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + +lines(0); +try + getversion('scilab'); +catch + error(gettext('Scilab 5.5.0 or 5.5.2 is required.')); +end; + +// ==================================================================== +if ~with_module("development_tools") then + error(msprintf(gettext("%s module not installed."),"development_tools")); +end +// ==================================================================== +TOOLBOX_NAME = "FOSSEE_Signal_Processing_Toolbox"; +TOOLBOX_TITLE = "FOSSEE Signal Processing Toolbox"; +// ==================================================================== + + +toolbox_dir = get_absolute_file_path("builder.sce"); +//tbx_builder_gateway(toolbox_dir); +tbx_builder_help(toolbox_dir); +tbx_build_loader(TOOLBOX_NAME, toolbox_dir); +tbx_build_cleaner(TOOLBOX_NAME, toolbox_dir); +tbx_builder_macros(toolbox_dir); + +clear toolbox_dir TOOLBOX_NAME TOOLBOX_TITLE; diff --git a/builder.sce~ b/builder.sce~ new file mode 100644 index 0000000..84f3292 --- /dev/null +++ b/builder.sce~ @@ -0,0 +1,38 @@ +mode(-1); + +// Copyright (C) 2017 - IIT Bombay - FOSSEE +// +// This file must be used under the terms of the BSD. +// This source file is licensed as described in the file LICENSE, which +// you should have received as part of this distribution. The terms +// are also available at +// https://opensource.org/licenses/BSD-3-Clause +// Author: Shamika Mohanan +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + +lines(0); +try + getversion('scilab'); +catch + error(gettext('Scilab 5.5.0 or 5.5.2 is required.')); +end; + +// ==================================================================== +if ~with_module("development_tools") then + error(msprintf(gettext("%s module not installed."),"development_tools")); +end +// ==================================================================== +TOOLBOX_NAME = "FOSSEE_Signal_Processing_Toolbox"; +TOOLBOX_TITLE = "FOSSEE Signal Processing Toolbox"; +// ==================================================================== + + +toolbox_dir = get_absolute_file_path("builder.sce"); +tbx_builder_gateway(toolbox_dir); +tbx_builder_help(toolbox_dir); +tbx_build_loader(TOOLBOX_NAME, toolbox_dir); +tbx_build_cleaner(TOOLBOX_NAME, toolbox_dir); +tbx_builder_macros(toolbox_dir); + +clear toolbox_dir TOOLBOX_NAME TOOLBOX_TITLE; diff --git a/cleaner.sce b/cleaner.sce new file mode 100644 index 0000000..370c68f --- /dev/null +++ b/cleaner.sce @@ -0,0 +1,38 @@ +// This file is released under the 3-clause BSD license. See COPYING-BSD. +// Generated by builder.sce: Please, do not edit this file + +try + getversion("scilab"); +catch + error("Scilab 5.0 or more is required."); +end +function perform_clean() + root_tlbx = get_absolute_file_path('cleaner.sce'); + + if isfile(root_tlbx + '/macros/cleanmacros.sce') then + exec(root_tlbx+'/macros/cleanmacros.sce'); + end + + if isfile(root_tlbx + '/src/cleaner_src.sce') then + exec(root_tlbx+'/src/cleaner_src.sce'); + end + + if isfile(root_tlbx + "/sci_gateway/cleaner_gateway.sce") then + exec(root_tlbx + "/sci_gateway/cleaner_gateway.sce"); + mdelete(root_tlbx + "/sci_gateway/cleaner_gateway.sce"); + end + + if isfile(root_tlbx + "/help/cleaner_help.sce") then + exec(root_tlbx + "/help/cleaner_help.sce"); + end + + if isfile(root_tlbx + "/loader.sce") then + mdelete(root_tlbx + "/loader.sce"); + end + + if isfile(root_tlbx + "/unloader.sce") then + mdelete(root_tlbx + "/unloader.sce"); + end +endfunction +perform_clean(); +clear perform_clean; diff --git a/demos/demo.sce b/demos/demo.sce new file mode 100755 index 0000000..e27e154 --- /dev/null +++ b/demos/demo.sce @@ -0,0 +1,60 @@ +//Example taken from https://in.mathworks.com/help/signal/examples/dft-estimation-with-the-goertzel-algorithm.html +//DFT Estimation with the Goertzel Algorithm +cd /home/fossee/Desktop/FOSSEE_Scilab_Octave_Interface_Toolbox + +warning('off'); +clc; +clear; +// Clock Signal with Noise +figure; +f=get("current_figure") +f.background=8 +fu=[1209,1336,1477,1633]; +fl=[697,770,852,941]; +dialer=ascii(['123A';'456B';'789C';'*0#D']); +dialer=matrix(dialer,4,4); +phno=ascii('123A456B789C*0#D'); +//phno=ascii('9483999682'); +Fs=8000; +T=0.1; +t=(0:Fs*T-1)/Fs; +pos=1; +tones=[]; +for k=[phno] + [j,i]=find(dialer==k); + f1=fl(i); + f2=fu(j); + x=cos(2*%pi*f1*t)+cos(2*%pi*f2*t); + subplot(4,4,4*(i-1)+(j)) + plot(x(1:25/T)); + title(msprintf(gettext("Symbol ""%s"" [%d,%d]"),char(k),f1,f2)); + tones(:,pos)=x'; + playsnd(x,Fs); + sleep(80); + pos=pos+1; +end; +disp("Press Enter to Continue"); +halt(); + +//Estimating DTMF Tones with the Goertzel Algorithm +original_f = [fl(:);fu(:)]; +Nt = 205; +k = round(original_f/Fs*Nt); + +est_tones = tones(1:Nt,:); +exec('goertzel.sci',-1); +figure; +f=get("current_figure") +f.background=8 +color0=[2,5,13,16]; +for toneChoice=[1:length(phno)] + tone=est_tones(:,toneChoice); + ydft(:,toneChoice) = goertzel(tone,(k+1)'); + subplot(4,4,toneChoice); + plot2d3('gnn',original_f,abs(ydft(:,toneChoice)),color0(pmodulo(toneChoice,4)+1)); + [j,i]=find(dialer==phno(toneChoice)); + f1=fl(i); + f2=fu(j); + title(msprintf(gettext("Symbol ""%s"" [%d,%d]"),char(phno(toneChoice)),f1,f2)); +end +disp("End of demo"); diff --git a/demos/df_filtering.mat b/demos/df_filtering.mat Binary files differnew file mode 100755 index 0000000..d7a60a1 --- /dev/null +++ b/demos/df_filtering.mat diff --git a/etc/FOSSEE_Scilab_Octave_Interface_Toolbox.quit~ b/etc/FOSSEE_Scilab_Octave_Interface_Toolbox.quit~ new file mode 100644 index 0000000..10375d6 --- /dev/null +++ b/etc/FOSSEE_Scilab_Octave_Interface_Toolbox.quit~ @@ -0,0 +1,34 @@ +// Copyright (C) 2015 - IIT Bombay - FOSSEE +// +// This file must be used under the terms of the BSD. +// This source file is licensed as described in the file LICENSE, which +// you should have received as part of this distribution. The terms +// are also available at +// https://opensource.org/licenses/BSD-3-Clause +// Author: Shamika Mohanan +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + + +function quitModule() + + etc_tlbx = get_absolute_file_path("FOSSEE_Signal_Processing_Toolbox.quit"); + etc_tlbx = getshortpathname(etc_tlbx); + root_tlbx = strncpy( etc_tlbx, length(etc_tlbx)-length("\etc\") ); + + //unlink libraries + [bOK, ilib] = c_link('FOSSEE_Scilab_Octave_Interface_Toolbox'); + if bOK then + ulink(ilib); + end + + // Remove Preferences GUI + // ============================================================================= + if getscilabmode() == "STD" then + removeModulePreferences(root_tlbx); + end + ulink(); +endfunction + +clear quitModule; + diff --git a/etc/FOSSEE_Scilab_Octave_Interface_Toolbox.start~ b/etc/FOSSEE_Scilab_Octave_Interface_Toolbox.start~ new file mode 100644 index 0000000..cb4cb7b --- /dev/null +++ b/etc/FOSSEE_Scilab_Octave_Interface_Toolbox.start~ @@ -0,0 +1,84 @@ +// Copyright (C) 2015 - IIT Bombay - FOSSEE +// +// This file must be used under the terms of the BSD. +// This source file is licensed as described in the file LICENSE, which +// you should have received as part of this distribution. The terms +// are also available at +// https://opensource.org/licenses/BSD-3-Clause +// Author: Shamika Mohanan +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + +mprintf("Start FOSSEE Scilab-Octave Interface Toolbox\n"); + +[a, opt] = getversion(); +Version = opt(2); + +etc_tlbx = get_absolute_file_path("FOSSEE_Scilab_Octave_Interface_Toolbox.start"); +etc_tlbx = getshortpathname(etc_tlbx); +root_tlbx = strncpy( etc_tlbx, length(etc_tlbx)-length("\etc\") ); + +//Load functions library +// ============================================================================= +mprintf("\tLoad macros\n"); +pathmacros = pathconvert( root_tlbx ) + "macros" + filesep(); +fsoit_lib = lib(pathmacros); +clear pathmacros; + +// load gateways +// ============================================================================= + +mprintf("\tLoad gateways\n"); +[a, opt] = getversion(); +Version = opt(2); +ilib_verbose(0); +if getos()=="Windows" then +// lib_path = root_tlbx + "/thirdparty/windows/bin/" + Version;*/ +// link(lib_path+filesep()+"IpOptFSS.dll");*/ +// link(lib_path+filesep()+"IpOpt-vc10.dll");*/ +else + lib_path = root_tlbx + "/thirdparty/linux/lib/"+Version+"/octave/4.0.1"; + link(lib_path + "/libamd.so"); + link(lib_path + "/libcamd.so"); + link(lib_path + "/libccolamd.so"); + link(lib_path + "/libcolamd.so"); + link(lib_path + "/libcholmod.so"); + link(lib_path + "/libumfpack.so"); + link(lib_path + "/libcxsparse.so"); + link(lib_path + "/libhdf5.so"); + link(lib_path + "/libqrupdate.so"); + link(lib_path + "/liboctave.so"); + link(lib_path + "/liboctinterp.so"); + +end +exec(pathconvert(root_tlbx + filesep() + "sci_gateway" + filesep() + "loader_gateway.sce",%f)); + +// Load and add help chapter +// ============================================================================= +if ( %t ) then +if or(getscilabmode() == ["NW";"STD"]) then + mprintf("\tLoad help\n"); + path_addchapter = pathconvert(root_tlbx+"/jar"); + if ( isdir(path_addchapter) <> [] ) then + add_help_chapter("FOSSEE_Scilab_Octave_Interface_Toolbox", path_addchapter, %F); + clear add_help_chapter; + end + clear path_addchapter; +end +end + +// add demos +// ============================================================================= + +if ( %t ) then +if or(getscilabmode() == ["NW";"STD"]) then + mprintf("\tLoad demos\n"); +// pathdemos = pathconvert(root_tlbx+"/demos/sci_FOSSEE_Scilab_Octave_Interface_Toolbox.dem.gateway.sce",%f,%t);*/ +// add_demo("FOSSEE_Scilab_Octave_Interface_Toolbox",pathdemos);*/ +// clear pathdemos ;*/ +end +end + +// ============================================================================= + +clear etc_tlbx root_tlbx Version a opt lib_path; diff --git a/etc/FOSSEE_Signal_Processing_Toolbox.quit b/etc/FOSSEE_Signal_Processing_Toolbox.quit new file mode 100644 index 0000000..28f750d --- /dev/null +++ b/etc/FOSSEE_Signal_Processing_Toolbox.quit @@ -0,0 +1,34 @@ +// Copyright (C) 2015 - IIT Bombay - FOSSEE +// +// This file must be used under the terms of the BSD. +// This source file is licensed as described in the file LICENSE, which +// you should have received as part of this distribution. The terms +// are also available at +// https://opensource.org/licenses/BSD-3-Clause +// Author: Shamika Mohanan +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + + +function quitModule() + + etc_tlbx = get_absolute_file_path("FOSSEE_Signal_Processing_Toolbox.quit"); + etc_tlbx = getshortpathname(etc_tlbx); + root_tlbx = strncpy( etc_tlbx, length(etc_tlbx)-length("\etc\") ); + + //unlink libraries + [bOK, ilib] = c_link('FOSSEE_Signal_Processing_Toolbox'); + if bOK then + ulink(ilib); + end + + // Remove Preferences GUI + // ============================================================================= + if getscilabmode() == "STD" then + removeModulePreferences(root_tlbx); + end + ulink(); +endfunction + +clear quitModule; + diff --git a/etc/FOSSEE_Signal_Processing_Toolbox.start b/etc/FOSSEE_Signal_Processing_Toolbox.start new file mode 100644 index 0000000..a450282 --- /dev/null +++ b/etc/FOSSEE_Signal_Processing_Toolbox.start @@ -0,0 +1,62 @@ +// Copyright (C) 2015 - IIT Bombay - FOSSEE +// +// This file must be used under the terms of the BSD. +// This source file is licensed as described in the file LICENSE, which +// you should have received as part of this distribution. The terms +// are also available at +// https://opensource.org/licenses/BSD-3-Clause +// Author: Shamika Mohanan +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + +mprintf("Start FOSSEE Signal Processing Toolbox\n"); + +[a, opt] = getversion(); +Version = opt(2); + +etc_tlbx = get_absolute_file_path("FOSSEE_Signal_Processing_Toolbox.start"); +etc_tlbx = getshortpathname(etc_tlbx); +root_tlbx = strncpy( etc_tlbx, length(etc_tlbx)-length("\etc\") ); + +//Load functions library +// ============================================================================= +mprintf("\tLoad macros\n"); +pathmacros = pathconvert( root_tlbx ) + "macros" + filesep(); +fsoit_lib = lib(pathmacros); +clear pathmacros; + +// load gateways +// ============================================================================= + +mprintf("\tLoad gateways\n"); +[a, opt] = getversion(); +Version = opt(2); +ilib_verbose(0); +//exec(pathconvert(root_tlbx + filesep() + "sci_gateway" + filesep() + "loader_gateway.sce",%f)); + +// Load and add help chapter +// ============================================================================= +if ( %t ) then +if or(getscilabmode() == ["NW";"STD"]) then + mprintf("\tLoad help\n"); + path_addchapter = pathconvert(root_tlbx+"/jar"); + if ( isdir(path_addchapter) <> [] ) then + add_help_chapter("FOSSEE_Signal_Processing_Toolbox", path_addchapter, %F); + clear add_help_chapter; + end + clear path_addchapter; +end +end + +// add demos +// ============================================================================= + +if ( %t ) then +if or(getscilabmode() == ["NW";"STD"]) then + mprintf("\tLoad demos\n"); +end +end + +// ============================================================================= + +clear etc_tlbx root_tlbx Version a opt lib_path; diff --git a/etc/FOSSEE_Signal_Processing_Toolbox.start~ b/etc/FOSSEE_Signal_Processing_Toolbox.start~ new file mode 100644 index 0000000..30fd546 --- /dev/null +++ b/etc/FOSSEE_Signal_Processing_Toolbox.start~ @@ -0,0 +1,62 @@ +// Copyright (C) 2015 - IIT Bombay - FOSSEE +// +// This file must be used under the terms of the BSD. +// This source file is licensed as described in the file LICENSE, which +// you should have received as part of this distribution. The terms +// are also available at +// https://opensource.org/licenses/BSD-3-Clause +// Author: Shamika Mohanan +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + +mprintf("Start FOSSEE Signal Processing Toolbox\n"); + +[a, opt] = getversion(); +Version = opt(2); + +etc_tlbx = get_absolute_file_path("FOSSEE_Signal_Processing_Toolbox.start"); +etc_tlbx = getshortpathname(etc_tlbx); +root_tlbx = strncpy( etc_tlbx, length(etc_tlbx)-length("\etc\") ); + +//Load functions library +// ============================================================================= +mprintf("\tLoad macros\n"); +pathmacros = pathconvert( root_tlbx ) + "macros" + filesep(); +fsoit_lib = lib(pathmacros); +clear pathmacros; + +// load gateways +// ============================================================================= + +mprintf("\tLoad gateways\n"); +[a, opt] = getversion(); +Version = opt(2); +ilib_verbose(0); +exec(pathconvert(root_tlbx + filesep() + "sci_gateway" + filesep() + "loader_gateway.sce",%f)); + +// Load and add help chapter +// ============================================================================= +if ( %t ) then +if or(getscilabmode() == ["NW";"STD"]) then + mprintf("\tLoad help\n"); + path_addchapter = pathconvert(root_tlbx+"/jar"); + if ( isdir(path_addchapter) <> [] ) then + add_help_chapter("FOSSEE_Signal_Processing_Toolbox", path_addchapter, %F); + clear add_help_chapter; + end + clear path_addchapter; +end +end + +// add demos +// ============================================================================= + +if ( %t ) then +if or(getscilabmode() == ["NW";"STD"]) then + mprintf("\tLoad demos\n"); +end +end + +// ============================================================================= + +clear etc_tlbx root_tlbx Version a opt lib_path; diff --git a/etc/README.rst b/etc/README.rst new file mode 100644 index 0000000..7e1375c --- /dev/null +++ b/etc/README.rst @@ -0,0 +1,14 @@ +DEMOS Files +=========== + +Start and exit files of the toolbox. + +.start +------- + +It will run a script when loader.sce is run from root toolbox directory. It will run loader files in all of the directories and link to important library. + +.quit +------- + +It will run a script when unloader.sce is run from root toolbox directory. It will unlink all of the important libraries. diff --git a/etc/README.rst~ b/etc/README.rst~ new file mode 100644 index 0000000..2ffc09f --- /dev/null +++ b/etc/README.rst~ @@ -0,0 +1,14 @@ +DEMOS Files +=========== + +Start and exit files of the toolbox. + +.start +------- + +It will run a script when loader.sce is run from root toolbox directory. It will run loader files in all of the directories and link to important library. + +.quit +------- + +It will run a script when unloader.sce is run from root toolbox directory. It will unlink all of the important library. diff --git a/help/builder_help.sce b/help/builder_help.sce new file mode 100644 index 0000000..e0d18eb --- /dev/null +++ b/help/builder_help.sce @@ -0,0 +1,21 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +// +// Author: Shamika Mohanan +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in +// This file must be used under the terms of the CeCILL. +// This source file is licensed as described in the file COPYING, which +// you should have received as part of this distribution. The terms +// are also available at +// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + +mode(-1) +lines(0) + +toolbox_title = "FOSSEE_Signal_Processing_Toolbox" + +help_dir = get_absolute_file_path('builder_help.sce'); + +tbx_builder_help_lang("en_US", help_dir); + +clear toolbox_title; diff --git a/help/builder_help.sce~ b/help/builder_help.sce~ new file mode 100644 index 0000000..697a619 --- /dev/null +++ b/help/builder_help.sce~ @@ -0,0 +1,21 @@ +// Copyright (C) 2015 - IIT Bombay - FOSSEE +// +// Author: Shamika Mohanan +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in +// This file must be used under the terms of the CeCILL. +// This source file is licensed as described in the file COPYING, which +// you should have received as part of this distribution. The terms +// are also available at +// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + +mode(-1) +lines(0) + +toolbox_title = "FOSSEE_Signal_Processing_Toolbox" + +help_dir = get_absolute_file_path('builder_help.sce'); + +tbx_builder_help_lang("en_US", help_dir); + +clear toolbox_title; diff --git a/help/en_US/ac2poly.xml b/help/en_US/ac2poly.xml new file mode 100644 index 0000000..e90759d --- /dev/null +++ b/help/en_US/ac2poly.xml @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from ac2poly.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="ac2poly" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>ac2poly</refname> + <refpurpose>Convert autocorrelation sequence to polynomial of prediction filter</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + a = ac2poly(r) + [a,e] = ac2poly(r) + + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>r:</term> + <listitem><para> Autocorrelation sequence to be represented with an FIR linear prediction filter</para></listitem></varlistentry> + <varlistentry><term>a:</term> + <listitem><para> Output polynomial representing the linear prediction filter e/(a(1) + a(2)z + a(3)z^2 .. a(N)z^N-1)</para></listitem></varlistentry> + <varlistentry><term>e:</term> + <listitem><para> Output scaling for the lienar prediction filter</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +Function ac2poly() finds the best fit polynomial for FIR linear prediction filter a, corresponding to the autocorrelation sequence r. a is the same length as r, and is normalized with the first element. So a(1) = 1. + </para> + <para> +Author +Parthe Pandit + </para> + <para> +</para> +</refsection> + +<refsection> + <title>Bibliography</title> + <para>Kay, Steven M. Modern Spectral Estimation. Englewood Cliffs, NJ: Prentice-Hall, 1988.</para> +</refsection> +</refentry> diff --git a/help/en_US/ac2rc.xml b/help/en_US/ac2rc.xml new file mode 100644 index 0000000..2e8a109 --- /dev/null +++ b/help/en_US/ac2rc.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from ac2rc.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="ac2rc" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>ac2rc</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + k = ac2rc(R) + [k,R0] = ac2rc(R) + </synopsis> +</refsynopsisdiv> +</refentry> diff --git a/help/en_US/arParEst.xml b/help/en_US/arParEst.xml new file mode 100644 index 0000000..c1e0a78 --- /dev/null +++ b/help/en_US/arParEst.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from arParEst.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="arParEst" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>arParEst</refname> + <refpurpose></refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/arburg.xml b/help/en_US/arburg.xml new file mode 100644 index 0000000..75648ba --- /dev/null +++ b/help/en_US/arburg.xml @@ -0,0 +1,69 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from arburg.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="arburg" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>arburg</refname> + <refpurpose>This function calculates coefficients of an autoregressive (AR) model of complex data.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + a = arburg(x, poles) + a = arburg(x, poles, criterion) + [a, v] = arburg(...) + [a, v, k] = arburg(...) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> vector of real or complex numbers, of length > 2</para></listitem></varlistentry> + <varlistentry><term>poles:</term> + <listitem><para> positive integer value < length(x) - 2</para></listitem></varlistentry> + <varlistentry><term>criterion:</term> + <listitem><para> string value, takes in "AKICc", "KIC", "AICc", "AIC" and "FPE", default it not using a model-selection criterion</para></listitem></varlistentry> + <varlistentry><term>a, v, k:</term> + <listitem><para> Output variables</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function calculates coefficients of an autoregressive (AR) model of complex data x using the whitening lattice-filter method of Burg. +The first argument is the data sampled. The second argument is the number of poles in the model (or limit in case a criterion is supplied). +The third parameter takes in the criterion to limit the number of poles. The acceptable values are "AIC", "AKICc", "KIC", "AICc" which are based on information theory. +Output variable a is a list of P+1 autoregression coefficients. +Output variable v is the mean square of residual noise from the whitening operation of the Burg lattice filter. +Output variable k corresponds to the reflection coefficients defining the lattice-filter embodiment of the model. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +arburg([1,2,3,4,5],2) +ans = +1.00000 -1.86391 0.95710 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/arcov.xml b/help/en_US/arcov.xml new file mode 100644 index 0000000..64a5364 --- /dev/null +++ b/help/en_US/arcov.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from arcov.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="arcov" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>arcov</refname> + <refpurpose></refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/armcov.xml b/help/en_US/armcov.xml new file mode 100644 index 0000000..62e33b7 --- /dev/null +++ b/help/en_US/armcov.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from armcov.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="armcov" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>armcov</refname> + <refpurpose></refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/aryule.xml b/help/en_US/aryule.xml new file mode 100644 index 0000000..9948a0f --- /dev/null +++ b/help/en_US/aryule.xml @@ -0,0 +1,63 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from aryule.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="aryule" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>aryule</refname> + <refpurpose>This function fits an AR (p)-model with Yule-Walker estimates.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + a = aryule (x, p) + [a, v] = aryule (x, p) + [a, v, k] = aryule (x, p) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> vector of real or complex numbers, length > 2</para></listitem></varlistentry> + <varlistentry><term>p:</term> + <listitem><para> positive integer value < length(x) - 1</para></listitem></varlistentry> + <varlistentry><term>a, v, k:</term> + <listitem><para> Output variables</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function fits an AR (p)-model with Yule-Walker estimates. +The first argument is the data vector which is to be estimated. +Output variable a gives the AR coefficients, v gives the variance of the white noise and k gives the reflection coefficients to be used in the lattice filter. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +aryule([1,2,3,4,5],2) +ans = +1. - 0.8140351 0.1192982 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/barthannwin.xml b/help/en_US/barthannwin.xml new file mode 100644 index 0000000..ad1139a --- /dev/null +++ b/help/en_US/barthannwin.xml @@ -0,0 +1,60 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from barthannwin.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="barthannwin" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>barthannwin</refname> + <refpurpose>This function returns the filter coefficients of a modified Bartlett-Hann window.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y = barthannwin(m) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>m:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>y:</term> + <listitem><para> output variable, vector of real numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function returns the filter coefficients of a modified Bartlett Hann window of length m supplied as input, to the output vector y. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +barthannwin(4) +ans = +0. +0.73 +0.73 +0. + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/bartlett.xml b/help/en_US/bartlett.xml new file mode 100644 index 0000000..41ef318 --- /dev/null +++ b/help/en_US/bartlett.xml @@ -0,0 +1,56 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from bartlett.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="bartlett" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>bartlett</refname> + <refpurpose>Generates a Bartlett window</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + w=bartlett(L) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +w=bartlett(L) returns an L-point Bartlett window in a column vector w +Example +w=bartlett(4) +w = + </para> + <para> +0. +0.6666667 +0.6666667 +0. +Author +Ankur Mallick +References +[1] Oppenheim, Alan V., Ronald W. Schafer, and John R. Buck. Discrete-Time Signal Processing. Upper Saddle River, NJ: Prentice Hall, 1999. +</para> +</refsection> +</refentry> diff --git a/help/en_US/besself.xml b/help/en_US/besself.xml new file mode 100644 index 0000000..b792eaf --- /dev/null +++ b/help/en_US/besself.xml @@ -0,0 +1,66 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from besself.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="besself" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>besself</refname> + <refpurpose>This function generates a Bessel filter.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [a, b] = besself(n, w) + [a, b] = besself (n, w, "high") + [a, b, c] = besself (…) + [a, b, c, d] = besself (…) + […] = besself (…, "z") + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>n:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> positive real value</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function generates a Bessel filter. The default is a Laplace space (s) filter. +The third parameter takes in high or low, the default value being low. The cutoff is pi*Wc radians. +[z,p,g] = besself(...) returns filter as zero-pole-gain rather than coefficients of the numerator and denominator polynomials. +[...] = besself(...,’z’) returns a discrete space (Z) filter. w must be less than 1. +[a,b,c,d] = besself(...) returns state-space matrices. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +[a,b]=besself(2,3,"low") +a = 9.0000 +b = +1.0000 5.1962 9.0000 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/bitrevorder.xml b/help/en_US/bitrevorder.xml new file mode 100644 index 0000000..996ed26 --- /dev/null +++ b/help/en_US/bitrevorder.xml @@ -0,0 +1,57 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from bitrevorder.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="bitrevorder" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>bitrevorder</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [y,i]=bitrevorder(x) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> Vector of real or complex values</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function returns the input data after reversing the bits of the indices and reordering the elements of the input array. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1. [y]=bitrevorder ([i,1,3,6i]) +y = [0 + 1i 3 + 0i 1 + 0i 0 + 6i] +2. [y,i]=bitrevorder (['a','b','c','d']) +y = acbd +i = [1 3 2 4] + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/blackman.xml b/help/en_US/blackman.xml new file mode 100644 index 0000000..83bc83d --- /dev/null +++ b/help/en_US/blackman.xml @@ -0,0 +1,60 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from blackman.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="blackman" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>blackman</refname> + <refpurpose>Generates a Blackman window</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + w=blackman(N) + w=blackman(N,sflag) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +w=blackman(N) returns an N-point symmetric Blackman window in a column vector w +w=blackman(N,sflag) +Returns an N point Blackman window using the type of sampling specified by sflag +sflag can be either 'symmetric' (default) or 'periodic' (used in spectral analysis) +Example +w=blackman(4) +w = + </para> + <para> +- 1.388D-17 +0.63 +0.63 +- 1.388D-17 +Author +Ankur Mallick +References +[1] Oppenheim, Alan V., Ronald W. Schafer, and John R. Buck. Discrete-Time Signal Processing. Upper Saddle River, NJ: Prentice Hall, 1999. +</para> +</refsection> +</refentry> diff --git a/help/en_US/blackmanharris.xml b/help/en_US/blackmanharris.xml new file mode 100644 index 0000000..25e09e2 --- /dev/null +++ b/help/en_US/blackmanharris.xml @@ -0,0 +1,65 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from blackmanharris.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="blackmanharris" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>blackmanharris</refname> + <refpurpose>This function returns the filter coefficients of a Blackman-Harris window.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + w = blackmanharris (m) + w = blackmanharris (m, opt) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>m:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>opt:</term> + <listitem><para> string value, takes "periodic" or "symmetric"</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> output variable, vector of real numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function returns the filter coefficients of a Blackman-Harris window of length m supplied as input, to the output vector w. +The second parameter can take the values "periodic" or "symmetric", depending on which the corresponding form of window is returned. The default is symmetric. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +blackmanharris(5,"periodic") +ans = +0.00006 +0.1030115 +0.7938335 +0.7938335 +0.1030115 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/blackmannuttall.xml b/help/en_US/blackmannuttall.xml new file mode 100644 index 0000000..fc4fd9a --- /dev/null +++ b/help/en_US/blackmannuttall.xml @@ -0,0 +1,56 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from blackmannuttall.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="blackmannuttall" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>blackmannuttall</refname> + <refpurpose>This function returns the filter coefficients of a Blackman-Nuttall window.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + w = blackmannuttall (m) + w = blackmannuttall (m, opt) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>m:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>opt:</term> + <listitem><para> string value, takes "periodic" or "symmetric"</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> output variable, vector of real numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +blackmannuttall(5,"symmetric") +ans = +0.0003628 +0.2269824 +1. +0.2269824 +0.0003628 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/bohmanwin.xml b/help/en_US/bohmanwin.xml new file mode 100644 index 0000000..082342d --- /dev/null +++ b/help/en_US/bohmanwin.xml @@ -0,0 +1,60 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from bohmanwin.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="bohmanwin" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>bohmanwin</refname> + <refpurpose>This function returns the filter coefficients of a Bohman window.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y = bohmanwin (m) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>m:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>y:</term> + <listitem><para> output variable, vector of real numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function returns the filter coefficients of a Bohman window of length m supplied as input, to the output vector y. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +bohmanwin(4) +ans = +0. +0.6089978 +0.6089978 +0. + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/boxcar.xml b/help/en_US/boxcar.xml new file mode 100644 index 0000000..ad5da0a --- /dev/null +++ b/help/en_US/boxcar.xml @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from boxcar.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="boxcar" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>boxcar</refname> + <refpurpose>This function returns the filter coefficients of a rectangular window.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y = boxcar (m) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>m:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>y:</term> + <listitem><para> output variable, vector of real numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function returns the filter coefficients of a rectangular window of length m supplied as input, to the output vector y. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +boxcar(6) +ans = +1. +1. +1. +1. +1. +1. + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/buffer.xml b/help/en_US/buffer.xml new file mode 100644 index 0000000..24b5214 --- /dev/null +++ b/help/en_US/buffer.xml @@ -0,0 +1,66 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from buffer.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="buffer" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>buffer</refname> + <refpurpose>This function buffers the given data into a matrix of signal frames</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [y] = buffer (x, n) + [y] = buffer (x, n, p) + [y] = buffer (x, n, p) + [y, z, opt] = buffer (...) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> Data to be buffered</para></listitem></varlistentry> + <varlistentry><term>n:</term> + <listitem><para> Positive integer equal to number of rows in the produced data buffer</para></listitem></varlistentry> + <varlistentry><term>p:</term> + <listitem><para> Integer less than n, default value 0</para></listitem></varlistentry> + <varlistentry><term>opt:</term> + <listitem><para> In case of overlap, it can be a vector of length p or the string "nodelay", In case of underlap, it is an integer between 0 and p</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This function buffers the given data into a matrix of signal frames +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +buffer(1,3,2) +ans = +0 0 +0 1 +1 0 +This function is being called from Octave + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/build_help.sce b/help/en_US/build_help.sce new file mode 100644 index 0000000..5d051c3 --- /dev/null +++ b/help/en_US/build_help.sce @@ -0,0 +1,16 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +// +// Author: Shamika Mohanan +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in +// This file must be used under the terms of the CeCILL. +// This source file is licensed as described in the file COPYING, which +// you should have received as part of this distribution. The terms +// are also available at +// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + +help_lang_dir = get_absolute_file_path('build_help.sce'); + +tbx_build_help(TOOLBOX_TITLE, help_lang_dir); + +clear help_lang_dir; diff --git a/help/en_US/butter.xml b/help/en_US/butter.xml new file mode 100644 index 0000000..bacacaf --- /dev/null +++ b/help/en_US/butter.xml @@ -0,0 +1,71 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from butter.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="butter" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>butter</refname> + <refpurpose>This function generates a Butterworth filter.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [a, b] = butter (n, w) + [a, b] = butter (n, w, "high") + [a, b] = butter (n, [wl, wh]) + [b, a] = butter (n, [wl, wh], "stop") + [a, b, c] = butter (…) + [a, b, c, d] = butter (…) + […] = butter (…, "s") + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>n:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> positive real value, w in the range [0,1]</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function generates a Butterworth filter. Default is a discrete space (Z) filter. +The third parameter takes in low or high, default value is low. The cutoff is pi*Wc radians. +[b,a] = butter(n, [Wl, Wh]) indicates a band pass filter with edges pi*Wl and pi*Wh radians. +[b,a] = butter(n, [Wl, Wh], ’stop’) indicates a band reject filter with edges pi*Wl and pi*Wh radians. +[z,p,g] = butter(...) returns filter as zero-pole-gain rather than coefficients of the numerator and denominator polynomials. +[...] = butter(...,’s’) returns a Laplace space filter, w can be larger than 1. +[a,b,c,d] = butter(...) returns state-space matrices. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +[a,b]=butter(3, 0.7) +a = +0.37445 1.12336 1.12336 0.37445 +b = +1.00000 1.16192 0.69594 0.13776 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/buttord.xml b/help/en_US/buttord.xml new file mode 100644 index 0000000..da92712 --- /dev/null +++ b/help/en_US/buttord.xml @@ -0,0 +1,70 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from buttord.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="buttord" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>buttord</refname> + <refpurpose>/This function computes the minimum filter order of a Butterworth filter with the desired response characteristics.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + n = buttord(Wp, Ws, Rp, Rs) + [n, Wc] = buttord(Wp, Ws, Rp, Rs) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>Wp:</term> + <listitem><para> scalar or vector of length 2</para></listitem></varlistentry> + <varlistentry><term>Ws:</term> + <listitem><para> scalar or vector of length 2, elements must be in the range [0,1]</para></listitem></varlistentry> + <varlistentry><term>Rp:</term> + <listitem><para> real or complex value</para></listitem></varlistentry> + <varlistentry><term>Rs:</term> + <listitem><para> real or complex value</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function computes the minimum filter order of a Butterworth filter with the desired response characteristics. +The filter frequency band edges are specified by the passband frequency wp and stopband frequency ws. +Frequencies are normalized to the Nyquist frequency in the range [0,1]. +Rp is measured in decibels and is the allowable passband ripple, and Rs is also in decibels and is the minimum attenuation in the stop band. +If ws>wp, the filter is a low pass filter. If wp>ws, the filter is a high pass filter. +If wp and ws are vectors of length 2, then the passband interval is defined by wp the stopband interval is defined by ws. +If wp is contained within the lower and upper limits of ws, the filter is a band-pass filter. If ws is contained within the lower and upper limits of wp the filter is a band-stop or band-reject filter. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +Wp = 40/500 +Ws = 150/500 +[n, Wn] = buttord(Wp, Ws, 3, 60) +n = 5 +Wn = 0.080038 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/cconv.xml b/help/en_US/cconv.xml new file mode 100644 index 0000000..5c9a665 --- /dev/null +++ b/help/en_US/cconv.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from cconv.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="cconv" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>cconv</refname> + <refpurpose>[nargout,nargin]=argn();</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/cell2sos.xml b/help/en_US/cell2sos.xml new file mode 100644 index 0000000..90df61d --- /dev/null +++ b/help/en_US/cell2sos.xml @@ -0,0 +1,100 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from cell2sos.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="cell2sos" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>cell2sos</refname> + <refpurpose>Converts a cell array to a second order section matrix</refpurpose> + </refnamediv> + + +<refsection> + <title>Parameters</title> + <variablelist> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +s=cell2sos(c) converts a a cell array c = { {B1},{A1}, {B2},{A2}, ... {BL},{AL}} +to an L-by-6 second-order-section matrix s given by: +s = [B1 A1 +B2 A2 +... +BL AL] +numerator vector Bi and denominator vector Ai contains the coefficients of a +linear or quadratic polynomial. If the polynomial is linear, the coefficients +zero-padded on the right. +[s,g]=cell2sos(c) estimates the gain from the leading term of the cell array +c={ {[g1,g2]},{B1},{A1}, {B2},{A2}, ... {BL},{AL}} to give g=g1/g2 as the gain +Example +c=cell(1,5); + </para> + <para> +c(1,1).entries=[2, 1]; + </para> + <para> +c(1,2).entries=rand(1,3); + </para> + <para> +c(1,3).entries=rand(1,3); + </para> + <para> +c(1,4).entries=rand(1,3); + </para> + <para> +c(1,5).entries=rand(1,3); + </para> + <para> +c = +column 1 to 3 + </para> + <para> +![2,1] [0.2113249,0.7560439,0.0002211] [0.3303271,0.6653811,0.6283918] ! + </para> + <para> +column 4 to 5 + </para> + <para> +![0.8497452,0.6857310,0.8782165] [0.0683740,0.5608486,0.6623569] ! +[s,g]=cell2sos(c); +s = + </para> + <para> +column 1 to 5 + </para> + <para> +0.2113249 0.7560439 0.0002211 0.3303271 0.6653811 +0.8497452 0.6857310 0.8782165 0.0683740 0.5608486 + </para> + <para> +column 6 + </para> + <para> +0.6283918 +0.6623569 + </para> + <para> +g = + </para> + <para> +2. +Author +Ankur Mallick +</para> +</refsection> +</refentry> diff --git a/help/en_US/cheb1ord.xml b/help/en_US/cheb1ord.xml new file mode 100644 index 0000000..e60a114 --- /dev/null +++ b/help/en_US/cheb1ord.xml @@ -0,0 +1,67 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from cheb1ord.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="cheb1ord" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>cheb1ord</refname> + <refpurpose>This function computes the minimum filter order of a Chebyshev type I filter with the desired response characteristics.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + n = cheb1ord(Wp, Ws, Rp, Rs) + [n, Wc] = cheb1ord(Wp, Ws, Rp, Rs) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>Wp:</term> + <listitem><para> scalar or vector of length 2, all elements must be in the range [0,1]</para></listitem></varlistentry> + <varlistentry><term>Ws:</term> + <listitem><para> scalar or vector of length 2, all elements must be in the range [0,1]</para></listitem></varlistentry> + <varlistentry><term>Rp:</term> + <listitem><para> real value</para></listitem></varlistentry> + <varlistentry><term>Rs:</term> + <listitem><para> real value</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function computes the minimum filter order of a Chebyshev type I filter with the desired response characteristics. +Stopband frequency ws and passband frequency wp specify the the filter frequency band edges. +Frequencies are normalized to the Nyquist frequency in the range [0,1]. +Rp is measured in decibels and is the allowable passband ripple and Rs is also measured in decibels and is the minimum attenuation in the stop band. +If ws>wp then the filter is a low pass filter. If wp>ws, then the filter is a high pass filter. +If wp and ws are vectors of length 2, then the passband interval is defined by wp and the stopband interval is defined by ws. +If wp is contained within the lower and upper limits of ws, the filter is a band-pass filter. If ws is contained within the lower and upper limits of wp, the filter is a band-stop or band-reject filter. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +cheb1ord(0.1,0.2,-0.3,4) +ans = 2 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/cheb2ord.xml b/help/en_US/cheb2ord.xml new file mode 100644 index 0000000..199c595 --- /dev/null +++ b/help/en_US/cheb2ord.xml @@ -0,0 +1,67 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from cheb2ord.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="cheb2ord" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>cheb2ord</refname> + <refpurpose>This function computes the minimum filter order of a Chebyshev type II filter with the desired response characteristics.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + n = cheb2ord(Wp, Ws, Rp, Rs) + [n, Wc] = cheb2ord(Wp, Ws, Rp, Rs) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>Wp:</term> + <listitem><para> scalar or vector of length 2, all elements must be in the range [0,1]</para></listitem></varlistentry> + <varlistentry><term>Ws:</term> + <listitem><para> scalar or vector of length 2, all elements must be in the range [0,1]</para></listitem></varlistentry> + <varlistentry><term>Rp:</term> + <listitem><para> real value</para></listitem></varlistentry> + <varlistentry><term>Rs:</term> + <listitem><para> real value</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function computes the minimum filter order of a Chebyshev type II filter with the desired response characteristics. +Stopband frequency ws and passband frequency wp specify the the filter frequency band edges. +Frequencies are normalized to the Nyquist frequency in the range [0,1]. +Rp is measured in decibels and is the allowable passband ripple and Rs is also measured in decibels and is the minimum attenuation in the stop band. +If ws>wp then the filter is a low pass filter. If wp>ws, then the filter is a high pass filter. +If wp and ws are vectors of length 2, then the passband interval is defined by wp and the stopband interval is defined by ws. +If wp is contained within the lower and upper limits of ws, the filter is a band-pass filter. If ws is contained within the lower and upper limits of wp, the filter is a band-stop or band-reject filter. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +cheb2ord([0.25,0.3],[0.2,0.8],0.3,0.4) +ans = 1 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/chebwin.xml b/help/en_US/chebwin.xml new file mode 100644 index 0000000..e901bef --- /dev/null +++ b/help/en_US/chebwin.xml @@ -0,0 +1,67 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from chebwin.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="chebwin" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>chebwin</refname> + <refpurpose>This function returns the filter coefficients of a Dolph-Chebyshev window.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + w = chebwin (m) + w = chebwin (m, at) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>m:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>at:</term> + <listitem><para> real scalar value</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> output variable, vector of real numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function returns the filter coefficients of a Dolph-Chebyshev window of length m supplied as input, to the output vector w. +The second parameter is the stop band attenuation of the Fourier transform in dB. The default value is 100 dB. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +chebwin(7) +ans = +0.0565041 +0.3166085 +0.7601208 +1. +0.7601208 +0.3166085 +0.0565041 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/cheby1.xml b/help/en_US/cheby1.xml new file mode 100644 index 0000000..92a7848 --- /dev/null +++ b/help/en_US/cheby1.xml @@ -0,0 +1,74 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from cheby1.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="cheby1" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>cheby1</refname> + <refpurpose>This function generates a Chebyshev type I filter with rp dB of passband ripple.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [a, b] = cheby1 (n, rp, w) + [a, b] = cheby1 (n, rp, w, "high") + [a, b] = cheby1 (n, rp, [wl, wh]) + [a, b] = cheby1 (n, rp, [wl, wh], "stop") + [a, b, c] = cheby1 (…) + [a, b, c, d] = cheby1 (…) + […] = cheby1 (…, "s") + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>n:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>rp:</term> + <listitem><para> non negative scalar value</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> vector, all elements must be in the range [0,1]</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function generates a Chebyshev type I filter with rp dB of passband ripple. +The fourth parameter takes in high or low, default value is low. The cutoff is pi*Wc radians. +[b, a] = cheby1(n, Rp, [Wl, Wh]) indicates a band pass filter with edges pi*Wl and pi*Wh radians. +[b, a] = cheby1(n, Rp, [Wl, Wh], ’stop’) indicates a band reject filter with edges pi*Wl and pi*Wh radians. +[z, p, g] = cheby1(...) returns filter as zero-pole-gain rather than coefficients of the numerator and denominator polynomials. +[...] = cheby1(...,’s’) returns a Laplace space filter, w can be larger than 1. +[a,b,c,d] = cheby1(...) returns state-space matrices. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +[a,b,c]=cheby1(2,6,0.7,"high") +a = +1 1 +b = +-0.62915 + 0.55372i -0.62915 - 0.55372i +c = 0.055649 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/cheby2.xml b/help/en_US/cheby2.xml new file mode 100644 index 0000000..24cef7d --- /dev/null +++ b/help/en_US/cheby2.xml @@ -0,0 +1,74 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from cheby2.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="cheby2" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>cheby2</refname> + <refpurpose>This function generates a Chebyshev type II filter with rs dB of stopband attenuation.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [a, b] = cheby2 (n, rs, wc) + [a, b] = cheby2 (n, rs, wc, "high") + [a, b] = cheby2 (n, rs, [wl, wh]) + [a, b] = cheby2 (n, rs, [wl, wh], "stop") + [a, b, c] = cheby2 (…) + [a, b, c, d] = cheby2 (…) + […] = cheby2 (…, "s") + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>n:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>rp:</term> + <listitem><para> non negative scalar value</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> vector, all elements must be in the range [0,1]</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function generates a Chebyshev type II filter with rs dB of stopband attenuation. +The fourth parameter takes in high or low, default value is low. The cutoff is pi*Wc radians. +[b, a] = cheby2(n, Rp, [Wl, Wh]) indicates a band pass filter with edges pi*Wl and pi*Wh radians. +[b, a] = cheby2(n, Rp, [Wl, Wh], ’stop’) indicates a band reject filter with edges pi*Wl and pi*Wh radians. +[z, p, g] = cheby2(...) returns filter as zero-pole-gain rather than coefficients of the numerator and denominator polynomials. +[...] = cheby2(...,’s’) returns a Laplace space filter, w can be larger than 1. +[a,b,c,d] = cheby2(...) returns state-space matrices. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +[a,b,c]=cheby2(2,5,0.7,"high") +a = +-0.31645 - 0.94861i -0.31645 + 0.94861i +b = +-0.39388 + 0.53138i -0.39388 - 0.53138i +c = 0.47528 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/check.xml b/help/en_US/check.xml new file mode 100644 index 0000000..f8956dc --- /dev/null +++ b/help/en_US/check.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from check.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="check" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>check</refname> + <refpurpose>funcprot(0);</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/chirp.xml b/help/en_US/chirp.xml new file mode 100644 index 0000000..31ccb71 --- /dev/null +++ b/help/en_US/chirp.xml @@ -0,0 +1,75 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from chirp.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="chirp" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>chirp</refname> + <refpurpose>This function evaluates a chirp signal at time t.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y = chirp(t) + y = chirp(t, f0) + y = chirp(t, f0, t1) + y = chirp(t, f0, t1, f1) + y = chirp(t, f0, t1, f1, frm) + y = chirp(t, f0, t1, f1, frm, phse) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>t:</term> + <listitem><para> vector</para></listitem></varlistentry> + <varlistentry><term>f0:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>t1:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>f1:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>frm:</term> + <listitem><para> string value, takes in "linear", "quadratic", "logarithmic"</para></listitem></varlistentry> + <varlistentry><term>phse:</term> + <listitem><para> </para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function evaluates a chirp signal at time t. A chirp signal is a frequency swept cosine wave. +The first argument is a vector of times to evaluate the chirp signal, second argument is the frequency at t=0, third argument is time t1 and fourth argument is frequency at t1. +The fifth argument is the form which takes in values "linear", "quadratic" and "logarithmic", the sixth argument gives the phase shift at t=0. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +chirp([4,3,2,1],4,5,0.9) +ans = +column 1 to 3 +0.9685832 0.2486899 0.0627905 +column 4 +- 0.3681246 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/clustersegment.xml b/help/en_US/clustersegment.xml new file mode 100644 index 0000000..d3ab0ee --- /dev/null +++ b/help/en_US/clustersegment.xml @@ -0,0 +1,60 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from clustersegment.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="clustersegment" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>clustersegment</refname> + <refpurpose>This function calculates boundary indexes of clusters of 1’s.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + c = clustersegment(s) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>s:</term> + <listitem><para> scalar, vector or matrix of real numbers (clusters of 1s)</para></listitem></varlistentry> + <varlistentry><term>c:</term> + <listitem><para> output variable, cell array of size 1 by N, where N is the number of rows in s</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function calculates boundary indexes of clusters of 1’s. +This function calculates the initial and end indices of the sequences of 1's present in the input argument. +The output variable c is a cell array of size 1 by N, where N is the number of rows in s and each element has two rows indicating the initial index and end index of the cluster of 1's respectively. The indexing starts from 1. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +y = clustersegment ([0,1,0,0,1,1]) +y = +2. 5. +2. 6. + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/cmorwavf.xml b/help/en_US/cmorwavf.xml new file mode 100644 index 0000000..aa03ba8 --- /dev/null +++ b/help/en_US/cmorwavf.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from cmorwavf.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="cmorwavf" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>cmorwavf</refname> + <refpurpose>funcprot(0);</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/convmtx.xml b/help/en_US/convmtx.xml new file mode 100644 index 0000000..80ff071 --- /dev/null +++ b/help/en_US/convmtx.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from convmtx.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="convmtx" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>convmtx</refname> + <refpurpose>n=double(n);</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/corrmtx.xml b/help/en_US/corrmtx.xml new file mode 100644 index 0000000..2d07fcb --- /dev/null +++ b/help/en_US/corrmtx.xml @@ -0,0 +1,129 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from corrmtx.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="corrmtx" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>corrmtx</refname> + <refpurpose>Generate data matrix for autocorrelation matrix estimation</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + X = corrmtx(x,m) + [X,R] = corrmtx(x,m) + X = corrmtx(x,m,s) + [X,R] = corrmtx(x,m,s) + + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> input vector of size N for which correlation matrix of size m is to be calculated</para></listitem></varlistentry> + <varlistentry><term>m:</term> + <listitem><para> size of correlation matrix to be computed. Positive integer strictly smaller than the length of the input x</para></listitem></varlistentry> + <varlistentry><term>X:</term> + <listitem><para> data matrix as specified according to the input 'method'</para></listitem></varlistentry> + <varlistentry><term>s:</term> + <listitem><para> method for type of output matrix X</para></listitem></varlistentry> + <varlistentry><term>'autocorrelation':</term> + <listitem><para> (default) X is the (n + m)-by-(m + 1) rectangular Toeplitz matrix that generates an autocorrelation estimate for the leng th-n data vector x, derived using prewindowed and postwindowed data, based on an mth-order prediction error model.</para></listitem></varlistentry> + <varlistentry><term>'prewindowed':</term> + <listitem><para> X is the n-by-(m + 1) rectangular Toeplitz matrix that generates an autocorrelation estimate for the length-n data vector x, derived using prewindowed data, based on an mth-order prediction error model.</para></listitem></varlistentry> + <varlistentry><term>'postwindowed':</term> + <listitem><para> X is the n-by-(m + 1) rectangular Toeplitz matrix that generates an autocorrelation estimate for the length-n data vector x , derived using postwindowed data, based on an mth-order prediction error model.</para></listitem></varlistentry> + <varlistentry><term>'covariance':</term> + <listitem><para> X is the (n – m)-by-(m + 1) rectangular Toeplitz matrix that generates an autocorrelation estimate for the length-n data vect or x, derived using nonwindowed data, based on an mth-order prediction error model.</para></listitem></varlistentry> + <varlistentry><term>'modified':</term> + <listitem><para> X is the 2(n – m)-by-(m + 1) modified rectangular Toeplitz matrix that generates an autocorrelation estimate for the length-n d ata vector x, derived using forward and backward prediction error estimates, based on an mth-order prediction error model.</para></listitem></varlistentry> + <varlistentry><term>R:</term> + <listitem><para> (m + 1)-by-(m + 1) autocorrelation matrix estimate calculated as X'*X</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +Consider the generic matrix X below +_ _ +| x(1) ..........0 | +| : . : | +| : . : | +| x(m+1).......x(1)| +| : . : | +| : . : | +X = | x(n-m).....x(m+1)| +| : . : | +| : . : | +| x(n).......x(n-m)| +| : . : | +| : . : | +|_0 ..........x(n)_| +-- +For different inputs of string s the output would vary ass described below +'autocorrelation' — (default) X = X, above. +'prewindowed' — X is the n-by-(m + 1) submatrix of X whose first row is [x(1) … 0] and whose last row is [x(n) … x(n – m)] +'postwindowed' — X is the n-by-(m + 1) submatrix of X whose first row is [x(m + 1) … x(1)] and whose last row is [0 … x(n)] +'covariance' — X is the (n – m)-by-(m + 1) submatrix of X whose first row is [x(m + 1) … x(1)] and whose last row is [x(n) … x(n – m)] +'modified' — X is the 2(n – m)-by-(m + 1) matrix X_mod shown below +_ _ +| x(m+1) ......x(1)| +| : . : | +| : . : | +| x(n-m).....x(m+1)| +| : . : | +| : . : | +| x(n).......x(n-m)| +X_mod= | x*(1).....x*(m+1)| +| : . : | +| : . : | +| x*(m+1)...x*(n-m)| +| : . : | +| : . : | +|_x*(n-m) ...x*(n)_| + </para> + <para> +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ + + + + ]]></programlisting> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + <member><link linkend="peig">peig</link></member> + <member><link linkend="pmusic">pmusic</link></member> + <member><link linkend="rooteig">rooteig</link></member> + <member><link linkend="rootmusic">rootmusic</link></member> + <member><link linkend="xcorr">xcorr</link></member> + <member><link linkend="Author:">Author:</link></member> + <member><link linkend="Parthe">Pandit</link></member> + <member><link linkend="Bilbligraphy">Bilbligraphy</link></member> + <member><link linkend="Marple,">S. Lawrence. Digital Spectral Analysis. Englewood Cliffs, NJ: Prentice-Hall, 1987.</link></member> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/cummax.xml b/help/en_US/cummax.xml new file mode 100644 index 0000000..76c863a --- /dev/null +++ b/help/en_US/cummax.xml @@ -0,0 +1,70 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from cummax.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="cummax" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>cummax</refname> + <refpurpose>Cumulative maximum</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + M = cummax(A) + returns the cumulative maximum of the arguments of A. The dimension + of M is same as the dimension of A. If A is a 2D matrix, the operation + is performed along the columns. For a hypermatrix, the operation is + performed along the first non-zero dimension + M = cummax(A,dim) + The operation is performed along the dimension specified by dim + M = cummax(_,direction) + direction specifies as the direction of operation + + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + </variablelist> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1) Cumulative maximum values in a vector +v = [8 9 1 10 6 1 3 6 10 10] +M = cummax(v) + +Expected output: [8 8 1 1 1 1 1 1 1 1] + + ]]></programlisting> +</refsection> + +<refsection> + <title>Authors</title> + <simplelist type="vert"> + <member>Ayush Baid</member> + </simplelist> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/cummin.xml b/help/en_US/cummin.xml new file mode 100644 index 0000000..e586d3d --- /dev/null +++ b/help/en_US/cummin.xml @@ -0,0 +1,70 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from cummin.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="cummin" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>cummin</refname> + <refpurpose>Cumulative minimum</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + M = cummin(A) + returns the cumulative minimum of the arguments of A. The dimension + of M is same as the dimension of A. If A is a 2D matrix, the operation + is performed along the columns. For a hypermatrix, the operation is + performed along the first non-zero dimension + M = cummin(A,dim) + The operation is performed along the dimension specified by dim + M = cummin(_,direction) + direction specifies as the direction of operation + + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + </variablelist> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1) Cumulative minimum values in a vector +v = [8 9 1 10 6 1 3 6 10 10] +M = cummin(v) + +Expected output: [8 8 1 1 1 1 1 1 1 1] + + ]]></programlisting> +</refsection> + +<refsection> + <title>Authors</title> + <simplelist type="vert"> + <member>Ayush Baid</member> + </simplelist> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/db.xml b/help/en_US/db.xml new file mode 100644 index 0000000..5066562 --- /dev/null +++ b/help/en_US/db.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from db.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="db" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>db</refname> + <refpurpose></refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/db2pow.xml b/help/en_US/db2pow.xml new file mode 100644 index 0000000..2f126fa --- /dev/null +++ b/help/en_US/db2pow.xml @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from db2pow.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="db2pow" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>db2pow</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>ydb :</term> + <listitem><para> scalar or vector or matrix or N-D array</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +ydb = 20 +y=mag2pow(ydb) + ]]></programlisting> +</refsection> + +<refsection> + <title>Authors</title> + <simplelist type="vert"> + <member>Ishita Bedi</member> + <member>Modified to handle char i/p by Debdeep Dey</member> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/dctmtx.xml b/help/en_US/dctmtx.xml new file mode 100644 index 0000000..0b05453 --- /dev/null +++ b/help/en_US/dctmtx.xml @@ -0,0 +1,58 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from dctmtx.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="dctmtx" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>dctmtx</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [y]=dctmtx(n) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>n:</term> + <listitem><para> Real scalar integer greater than or equal to 1</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function +dctmtx(n) returns a Discrete cosine transform matrix of order n-by-n. It is useful for jpeg image compression. D*A is the DCT of the columns of A and D'*A is the inverse DCT of the columns of A (when A is n-by-n). +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1. dctmtx(2) +ans = [0.70711 0.70711; 0.70711 -0.70711] +2. dctmtx(3) +ans = [5.7735e-01 5.7735e-01 5.7735e-01; +7.0711e-01 4.9996e-17 -7.0711e-01; +4.0825e-01 -8.1650e-01 4.0825e-01] + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/decimate.xml b/help/en_US/decimate.xml new file mode 100644 index 0000000..bc0efe7 --- /dev/null +++ b/help/en_US/decimate.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from decimate.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="decimate" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>decimate</refname> + <refpurpose>rhs = argn(2)</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/dftmtx.xml b/help/en_US/dftmtx.xml new file mode 100644 index 0000000..ed6ecf7 --- /dev/null +++ b/help/en_US/dftmtx.xml @@ -0,0 +1,56 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from dftmtx.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="dftmtx" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>dftmtx</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [d]=dftmtx(n) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>n:</term> + <listitem><para> Real positive scalar number</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function +This fuction gives a complex matrix of values whose product with a vector produces the discrete Fourier transform. This can also be achieved by directly using the fft function i.e. y=fft(x) is same as y=A*x where A=dftmtx(n). +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1. dftmtx(3) +ans = 1.00000 + 0.00000i 1.00000 + 0.00000i 1.00000 + 0.00000i +1.00000 + 0.00000i -0.50000 - 0.86603i -0.50000 + 0.86603i +1.00000 - 0.00000i -0.50000 + 0.86603i -0.50000 - 0.86603i + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/diric.xml b/help/en_US/diric.xml new file mode 100644 index 0000000..fdbc3fa --- /dev/null +++ b/help/en_US/diric.xml @@ -0,0 +1,58 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from diric.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="diric" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>diric</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [y]=diric(x,n) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> Real valued vector or matrix</para></listitem></varlistentry> + <varlistentry><term>n:</term> + <listitem><para> Real positive integer or complex integer</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function +y=diric(x,n) returns the dirichlet function values of parameter x. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1. diric([1 2 3],3) +ans= 0.6935349 0.0559021 -0.3266617 +2. diric(1,2) +ans= 0.8775826 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/downsample.xml b/help/en_US/downsample.xml new file mode 100644 index 0000000..bbdfcd0 --- /dev/null +++ b/help/en_US/downsample.xml @@ -0,0 +1,61 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from downsample.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="downsample" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>downsample</refname> + <refpurpose>This function downsamples the signal by selecting every nth element.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y = downsample (x, n) + y = downsample (x, n, phase) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> scalar, vector or matrix of real or complex numbers</para></listitem></varlistentry> + <varlistentry><term>n:</term> + <listitem><para> real number or vector</para></listitem></varlistentry> + <varlistentry><term>phase:</term> + <listitem><para> integer value, 0 <= phase <= (n - 1), default value 0, or logical</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function downsamples the signal by selecting every nth element supplied as parameter 2. If x is a matrix, the function downsamples every column. +If the phase is specified, every nth element is selected starting from the sample phase. The default phase is 0. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +downsample([1,2,4],2) +ans = +1. 4. + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/dutycycle.xml b/help/en_US/dutycycle.xml new file mode 100644 index 0000000..0fb782a --- /dev/null +++ b/help/en_US/dutycycle.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from dutycycle.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="dutycycle" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>dutycycle</refname> + <refpurpose></refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/ellip.xml b/help/en_US/ellip.xml new file mode 100644 index 0000000..847f91e --- /dev/null +++ b/help/en_US/ellip.xml @@ -0,0 +1,74 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from ellip.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="ellip" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>ellip</refname> + <refpurpose>This function generates an elliptic or Cauer filter with rp dB of passband ripple and rs dB of stopband attenuation.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [a, b] = ellip (n, rp, rs, wp) + [a, b] = ellip (n, rp, rs, wp, "high") + [a, b] = ellip (n, rp, rs, [wl, wh]) + [a, b] = ellip (n, rp, rs, [wl, wh], "stop") + [a, b, c] = ellip (…) + [a, b, c, d] = ellip (…) + […] = ellip (…, "s") + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>n:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>rp:</term> + <listitem><para> non negative scalar value</para></listitem></varlistentry> + <varlistentry><term>rs:</term> + <listitem><para> non negative scalar value</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> scalar or vector, all elements should be in the range [0,1]</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function generates an elliptic or Cauer filter with rp dB of passband ripple and rs dB of stopband attenuation. +[b, a] = ellip(n, Rp, Rs, Wp) indicates low pass filter with order n, Rp decibels of ripple in the passband and a stopband Rs decibels down and cutoff of pi*Wp radians. If the fifth argument is high, then the filter is a high pass filter. +[b, a] = ellip(n, Rp, Rs, [Wl, Wh]) indictaes band pass filter with band pass edges pi*Wl and pi*Wh. If the fifth argument is stop, the filter is a band reject filter. +[z, p, g] = ellip(...) returns filter as zero-pole-gain. +[...] = ellip(...,’s’) returns a Laplace space filter, w can be larger than 1. +[a, b, c, d] = ellip(...) returns state-space matrices. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +[a,b]=ellip(2, 0.5, 0.7, [0.3,0.4]) +a = +0.88532 -1.58410 2.40380 -1.58410 0.88532 +b = +1.00000 -1.78065 2.68703 -1.75725 0.97454 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/ellipord.xml b/help/en_US/ellipord.xml new file mode 100644 index 0000000..0f562c8 --- /dev/null +++ b/help/en_US/ellipord.xml @@ -0,0 +1,68 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from ellipord.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="ellipord" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>ellipord</refname> + <refpurpose>This function computes the minimum filter order of an elliptic filter with the desired response characteristics.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [n] = ellipord(Wp, Ws, Rp, Rs) + [n, Wp] = ellipord(Wp, Ws, Rp, Rs) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>Wp:</term> + <listitem><para> scalar or vector of length 2, all elements must be in the range [0,1]</para></listitem></varlistentry> + <varlistentry><term>Ws:</term> + <listitem><para> scalar or vector of length 2, all elements must be in the range [0,1]</para></listitem></varlistentry> + <varlistentry><term>Rp:</term> + <listitem><para> real or complex value</para></listitem></varlistentry> + <varlistentry><term>Rs:</term> + <listitem><para> real or complex value</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function computes the minimum filter order of an elliptic filter with the desired response characteristics. +Stopband frequency ws and passband frequency wp specify the the filter frequency band edges. +Frequencies are normalized to the Nyquist frequency in the range [0,1]. +Rp is measured in decibels and is the allowable passband ripple and Rs is also measured in decibels and is the minimum attenuation in the stop band. +If ws>wp then the filter is a low pass filter. If wp>ws, then the filter is a high pass filter. +If wp and ws are vectors of length 2, then the passband interval is defined by wp and the stopband interval is defined by ws. +If wp is contained within the lower and upper limits of ws, the filter is a band-pass filter. If ws is contained within the lower and upper limits of wp, the filter is a band-stop or band-reject filter. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +[a,b]=ellipord(0.2, 0.5, 0.7, 0.4) +a = 1 +b = 0.20000 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/enbw.xml b/help/en_US/enbw.xml new file mode 100644 index 0000000..d7c2972 --- /dev/null +++ b/help/en_US/enbw.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from enbw.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="enbw" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>enbw</refname> + <refpurpose></refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/eqtflength.xml b/help/en_US/eqtflength.xml new file mode 100644 index 0000000..cfb2823 --- /dev/null +++ b/help/en_US/eqtflength.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from eqtflength.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="eqtflength" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>eqtflength</refname> + <refpurpose>Modifies the input vector to give output vectors of the same length</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [b,a] = eqtflength(b,a) + [b,a,N,M] = eqtflength(b,a) + </synopsis> +</refsynopsisdiv> +</refentry> diff --git a/help/en_US/falltime.xml b/help/en_US/falltime.xml new file mode 100644 index 0000000..eb398e4 --- /dev/null +++ b/help/en_US/falltime.xml @@ -0,0 +1,73 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from falltime.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="falltime" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>falltime</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + r=falltime(x) + r=falltime(x, t) + r=falltime(x, Fs) + r=falltime(x, t, 'PercentReferenceLevels', N ) + r=falltime(x, t, 'Tolerance', M) + r=falltime(x, t,'StateLevels', O) + [r lowercrossvalue uppercrossvalue lowerreference upperreference]=falltime(x) + [r lowercrossvalue uppercrossvalue lowerreference upperreference]=falltime(x, Fs) + [r lowercrossvalue uppercrossvalue lowerreference upperreference]=falltime(x, t) + [r lowercrossvalue uppercrossvalue lowerreference upperreference]=falltime(x, t, 'PercentReferenceLevels', N ) + [r lowercrossvalue uppercrossvalue lowerreference upperreference]= falltime(x, t, 'Tolerance', M) + [r lowercrossvalue uppercrossvalue lowerreference upperreference]= falltime(x, t,'StateLevels', O) + [r lowercrossvalue uppercrossvalue lowerreference upperreference]= falltime(x, t,'StateLevels', O, 'fig', on or off) + + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> real vector.</para></listitem></varlistentry> + <varlistentry><term>Fs:</term> + <listitem><para> specifies the sample rate, Fs, as a positive scalar, where the first sample instant corresponds to a time of zero.</para></listitem></varlistentry> + <varlistentry><term>t:</term> + <listitem><para> defiene instant sample time t as vector with same length of x, or specifies the sample rate, t, as a positive scalar.</para></listitem></varlistentry> + <varlistentry><term>PercentReferenceLevels:</term> + <listitem><para> specify the percentreferenceleves as a percentage, default value of N is [10 90].</para></listitem></varlistentry> + <varlistentry><term>Tolerance:</term> + <listitem><para> define the tolerance value as real scaler value, where default value of M is 2.0.</para></listitem></varlistentry> + <varlistentry><term>StateLevels:</term> + <listitem><para> define the lower and upper state levels as two element real vector.</para></listitem></varlistentry> + <varlistentry><term>fig:</term> + <listitem><para> specify the logical input value to display figure as one of 'on' or 'off', where the default input in 'off'.</para></listitem></varlistentry> + <varlistentry><term>f:</term> + <listitem><para> return fall time of negative-going bilevel waveform transitions X.</para></listitem></varlistentry> + <varlistentry><term>lowercrossvalue:</term> + <listitem><para> return the lowerc cross value.</para></listitem></varlistentry> + <varlistentry><term>uppercrossvalue:</term> + <listitem><para> return the upper cross value.</para></listitem></varlistentry> + <varlistentry><term>lowerreference:</term> + <listitem><para> return lower reference value corrosponding to lower percent reference value.</para></listitem></varlistentry> + <varlistentry><term>upperreference:</term> + <listitem><para> return upper reference value corrosponding to upper percent reference value.</para></listitem></varlistentry> + </variablelist> +</refsection> +</refentry> diff --git a/help/en_US/fftfilt.xml b/help/en_US/fftfilt.xml new file mode 100644 index 0000000..868244f --- /dev/null +++ b/help/en_US/fftfilt.xml @@ -0,0 +1,74 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from fftfilt.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="fftfilt" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>fftfilt</refname> + <refpurpose>Performs FFT-based FIR filtering using overlap-add method</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> real|complex numbers - vector|matrix</para></listitem></varlistentry> + <varlistentry><term>b:</term> + <listitem><para> real|complex numbers - vector|matrix</para></listitem></varlistentry> + <varlistentry><term>n:</term> + <listitem><para> positive integer</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +y = fftfilt(b,x) filters the data in vector x with the filter described +by coefficient vector b. +y = fftfilt(b,x,n) uses n to determine the length of the FFT. + </para> + <para> +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1) Filtering a sine wave +x = sin(1:2000); +b = [1 1/2]; +y = fftfilt(b,x); +2) Multiple filters (1,1/3) and (1/4,1/5); +x = sin(1:2000); +b = [1 1/4;1/3 1/5]; +y = fftfilt(b,x); + + ]]></programlisting> +</refsection> + +<refsection> + <title>Authors</title> + <simplelist type="vert"> + <member>Ayush Baid</member> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/filternorm.xml b/help/en_US/filternorm.xml new file mode 100644 index 0000000..7e897ba --- /dev/null +++ b/help/en_US/filternorm.xml @@ -0,0 +1,75 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from filternorm.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="filternorm" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>filternorm</refname> + <refpurpose>Calculates the L-2 norm or L-infinity norm of a digital filter</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + L = filternorm(b,a) + L = filternorm(b,a,pnorm) + L = filternorm(b,a,2,tol) + + + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>b:</term> + <listitem><para> The filter numerator coefficients.</para></listitem></varlistentry> + <varlistentry><term>a:</term> + <listitem><para> The filter denominator coefficients.</para></listitem></varlistentry> + <varlistentry><term>pnorm:</term> + <listitem><para> The L-norm to be calculated. The values accepted are 2 (L2 norm) or %inf (L-infinity norm). Default value is 2.</para></listitem></varlistentry> + <varlistentry><term>tol:</term> + <listitem><para> The tolerance of the L-2 norm to be calculated. If tol not specified, it defaults to 10^(-8). tol must be a positive scalar</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +// 1) L-2 norm of an IIR filter with tol = 10^(-10) +b = [-3 2]; +a = [1 -0.5]; +L = filternorm(b, a, 2, 10d-10); + + + ]]></programlisting> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + <member><link linkend="norm">norm</link></member> + <member><link linkend="zp2sos">zp2sos</link></member> + </simplelist> +</refsection> + +<refsection> + <title>Authors</title> + <simplelist type="vert"> + <member>Ayush Baid</member> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/filtfilt.xml b/help/en_US/filtfilt.xml new file mode 100644 index 0000000..baf8dfe --- /dev/null +++ b/help/en_US/filtfilt.xml @@ -0,0 +1,58 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from filtfilt.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="filtfilt" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>filtfilt</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [y]=filtfilt(b,a,x) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>b:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + <varlistentry><term>a:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + <varlistentry><term>x:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function +In theory, it forwards and reverse filters the signal and corrects phase distortion upto an extent by a one-pass filter but squares the magnitude response in the process. Practically though, the correction isn't perfect and magnitude response, particularly the stop band is distorted. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1. [a,b]=filtfilt (1,2i,[i -4 0]) +a = [0.00000 - 0.25000i 1.00000 + 0.00000i 0.00000 + 0.00000i] + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/filtic.xml b/help/en_US/filtic.xml new file mode 100644 index 0000000..ec5e08e --- /dev/null +++ b/help/en_US/filtic.xml @@ -0,0 +1,65 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from filtic.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="filtic" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>filtic</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + zf = filtic (b, a, y) + zf = filtic (b, a, y, x) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>b:</term> + <listitem><para> vector of real or complex numbers</para></listitem></varlistentry> + <varlistentry><term>a:</term> + <listitem><para> vector of real or complex numbers</para></listitem></varlistentry> + <varlistentry><term>y:</term> + <listitem><para> vector of real or complex numbers</para></listitem></varlistentry> + <varlistentry><term>x:</term> + <listitem><para> vector of real or complex numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This function finds the initial conditions for the delays in the transposed direct-form II filter implementation. +The vectors b and a represent the numerator and denominator coefficients of the filter's transfer function. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +filtic([i,1,-i,5], [1,2,3i], [0.8i,7,9]) +ans = +0.00000 - 22.60000i +2.40000 + 0.00000i +0.00000 + 0.00000i +This function is being called from Octave + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/filtord.xml b/help/en_US/filtord.xml new file mode 100644 index 0000000..aa8037c --- /dev/null +++ b/help/en_US/filtord.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from filtord.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="filtord" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>filtord</refname> + <refpurpose>and denominator coefficients, a.</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/firpmord.xml b/help/en_US/firpmord.xml new file mode 100644 index 0000000..f4bd81a --- /dev/null +++ b/help/en_US/firpmord.xml @@ -0,0 +1,91 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from firpmord.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="firpmord" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>firpmord</refname> + <refpurpose>Parks-McClennan optimal FIR filter order estimation</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>f:</term> + <listitem><para> double - positive - vector</para></listitem></varlistentry> + <varlistentry><term>a:</term> + <listitem><para> double - positive - vector</para></listitem></varlistentry> + <varlistentry><term>dev:</term> + <listitem><para> double - positive - vector</para></listitem></varlistentry> + <varlistentry><term>n:</term> + <listitem><para> int - scalar</para></listitem></varlistentry> + <varlistentry><term>fo:</term> + <listitem><para> double - positive - vector</para></listitem></varlistentry> + <varlistentry><term>ao:</term> + <listitem><para> double - positive - vector</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> double - vector</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +[1] A low-pass filter +f = [1500 2000]; // frequency edges for bands +a = [1 0]; // desired amplitude for each band +dev = [0.01 0.1]; // Acceptable deviation for each band +fs = 8000; // Sampling frequency +[n,fo,ao,w] = firpmord(f,a,dev,fs); + +[2] A bandstop filter +f = [1000 1800 2400 3000]; +a = [1 0 0.5]; +dev = [0.01 0.1 0.03]; +fs = 8000; +[n,fo,ao,w] = firpmord(f,a,dev,fs); + + +References +[1] Rabiner, Lawrence R., and Bernard Gold. "Theory and application of +digital signal processing." Englewood Cliffs, NJ, Prentice-Hall, Inc., +1975. 777 p. 156-7 (1975). +[2] Rabiner, Lawrence R., and Otto Herrmann. "The predictability of certain +optimum finite-impulse-response digital filters." Circuit Theory, +IEEE Transactions on 20.4 (1973): 401-408. + + ]]></programlisting> +</refsection> + +<refsection> + <title>Authors</title> + <simplelist type="vert"> + <member>Ayush Baid</member> + </simplelist> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/firtype.xml b/help/en_US/firtype.xml new file mode 100644 index 0000000..8050565 --- /dev/null +++ b/help/en_US/firtype.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from firtype.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="firtype" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>firtype</refname> + <refpurpose>if (type(b)~=1) then</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/flattopwin.xml b/help/en_US/flattopwin.xml new file mode 100644 index 0000000..d990123 --- /dev/null +++ b/help/en_US/flattopwin.xml @@ -0,0 +1,69 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from flattopwin.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="flattopwin" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>flattopwin</refname> + <refpurpose>This function returns the filter coefficients of a Flat Top window.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + w = flattopwin (m) + w = flattopwin (m, opt) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>m:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>opt:</term> + <listitem><para> string value, takes in "periodic" or "symmetric"</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> output variable, vector of real numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function returns the filter coefficients of a Flat Top window of length m supplied as input, to the output vector w. +The second parameter can take the values "periodic" or "symmetric", depending on which the corresponding form of window is returned. The default is symmetric. +This window has low pass-band ripple but a high bandwidth. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +flattopwin(8,"periodic") +ans = +0.0009051 +- 0.0264124 +- 0.0555580 +0.4435496 +1. +0.4435496 +- 0.0555580 +- 0.0264124 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/fracshift.xml b/help/en_US/fracshift.xml new file mode 100644 index 0000000..8825f71 --- /dev/null +++ b/help/en_US/fracshift.xml @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from fracshift.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="fracshift" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>fracshift</refname> + <refpurpose>This function shifts the series x supplied as input argument by a number of samples d.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y = fracshift(x, d) + y = fracshift(x, d, h) + [y, h] = fracshift(...) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>d:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>h:</term> + <listitem><para> </para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function shifts the series x supplied as input argument by a number of samples d. +The third parameter is the interpolator, which is designed with a Kaiser-windowed sinecard by default, if not supplied. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +fracshift([1,2,3],5) +ans = +1. 2. 3. + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/fwhm.xml b/help/en_US/fwhm.xml new file mode 100644 index 0000000..dad3e8a --- /dev/null +++ b/help/en_US/fwhm.xml @@ -0,0 +1,43 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from fwhm.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="fwhm" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>fwhm</refname> + <refpurpose>This function computes peak full width at half minimum or at another level of peak minimum for vector or matrix data y supplied as input.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + f = fwhm (y) + f = fwhm (x, y) + f = fwhm (…, "zero") + f = fwhm (…, "min") + f = fwhm (…, "alevel", level) + f = fwhm (…, "rlevel", level) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>y:</term> + <listitem><para> vector or matrix</para></listitem></varlistentry> + </variablelist> +</refsection> +</refentry> diff --git a/help/en_US/fwhmjlt.xml b/help/en_US/fwhmjlt.xml new file mode 100644 index 0000000..4663d1a --- /dev/null +++ b/help/en_US/fwhmjlt.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from fwhmjlt.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="fwhmjlt" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>fwhmjlt</refname> + <refpurpose>rhs = argn(2)</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/gauspuls.xml b/help/en_US/gauspuls.xml new file mode 100644 index 0000000..e24d9e4 --- /dev/null +++ b/help/en_US/gauspuls.xml @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from gauspuls.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="gauspuls" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>gauspuls</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [y]=gauspuls(t,fc,bw) + [y]=gauspuls(t,fc) + [y]=gauspuls(t) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>t:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + <varlistentry><term>fc:</term> + <listitem><para> Real non negative number or complex number</para></listitem></varlistentry> + <varlistentry><term>bw:</term> + <listitem><para> Real positive number or complex number</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function +This function returns a Gaussian RF pulse of unity amplitude at the times indicated in array t. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1. gauspuls(1,2,3) +ans= 1.427D-56 +2. gauspuls([1 2 3],1,1) +ans= 0.0281016 0.0000006 1.093D-14 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/gaussdesign.xml b/help/en_US/gaussdesign.xml new file mode 100644 index 0000000..2b81543 --- /dev/null +++ b/help/en_US/gaussdesign.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from gaussdesign.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="gaussdesign" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>gaussdesign</refname> + <refpurpose>GAUSSDESIGN designs a Gaussian pulse-shaping filter which is a low pass FIR</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/gaussian.xml b/help/en_US/gaussian.xml new file mode 100644 index 0000000..5a0ab2e --- /dev/null +++ b/help/en_US/gaussian.xml @@ -0,0 +1,65 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from gaussian.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="gaussian" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>gaussian</refname> + <refpurpose>This function returns a Gaussian convolution window.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + w = gaussian (m) + w = gaussian (m, a) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>m:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>a:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> output variable, vector of real numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function returns a Gaussian convolution window of length m supplied as input, to the output vector w. +The second parameter is the width measured in sample rate/number of samples and should be f for time domain and 1/f for frequency domain. The width is inversely proportional to a. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +gaussian(5,6) +ans = +5.380D-32 +1.523D-08 +1. +1.523D-08 +5.380D-32 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/gausswin.xml b/help/en_US/gausswin.xml new file mode 100644 index 0000000..9d1af4a --- /dev/null +++ b/help/en_US/gausswin.xml @@ -0,0 +1,63 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from gausswin.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="gausswin" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>gausswin</refname> + <refpurpose>This function returns the filter coefficients of a Gaussian window.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + w = gausswin (m) + w = gausswin (m, a) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>m:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>a:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> output variable, vector of real numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function returns the filter coefficients of a Gaussian window of length m supplied as input, to the output vector w. +The second parameter is the width measured in sample rate/number of samples and should be f for time domain and 1/f for frequency domain. The width is inversely proportional to a. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +gausswin(3) +ans = +0.2493522 +1. +0.2493522 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/gmonopuls.xml b/help/en_US/gmonopuls.xml new file mode 100644 index 0000000..72436d9 --- /dev/null +++ b/help/en_US/gmonopuls.xml @@ -0,0 +1,51 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from gmonopuls.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="gmonopuls" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>gmonopuls</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>t:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + <varlistentry><term>fc:</term> + <listitem><para> Real non-negative value or complex value or a vector or matrix with not all real values negative.</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function +This function returns samples of the Gaussian monopulse of amplitude unity. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1. gmonopuls([1 2 3],0.1) +ans= 0.85036 0.94070 0.52591 +2. gmonopuls([1 2 3]) +ans= 0 0 0 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/goertzel.xml b/help/en_US/goertzel.xml new file mode 100644 index 0000000..95772a3 --- /dev/null +++ b/help/en_US/goertzel.xml @@ -0,0 +1,67 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from goertzel.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="goertzel" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>goertzel</refname> + <refpurpose>Computes DFT using the second order Goertzel Algorithm</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + Y = goertzel(X,INDVEC,DIM) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +goertzel(X,INDVEC) +Computes the DFT of X at indices INDVEC using the second order algorithm along +the first non-singleton dimension. Elements of INDVEC must be positive integers +less than the length of the first non-singleton dimension. If INDVEC is empty +the DFT is computed at all indices along the first non-singleton dimension +goertzel(X,INDVEC,DIM) +Implements the algorithm along dimension DIM +In general goertzel is slower than fft when computing the DFT for all indices +along a particular dimension. However it is computationally more efficient when +the DFT at only a subset of indices is desired +Example +x=rand(1,5) +x = + </para> + <para> +0.6283918 0.8497452 0.6857310 0.8782165 0.0683740 +y=goertzel(x,2); +y = + </para> + <para> +- 0.3531539 - 0.6299881i +Author +Ankur Mallick +References +Goertzel, G. (January 1958), "An Algorithm for the Evaluation of Finite Trigonometric Series", American Mathematical Monthly 65 (1): 34–35, doi:10.2307/2310304 +</para> +</refsection> +</refentry> diff --git a/help/en_US/grpdelay.xml b/help/en_US/grpdelay.xml new file mode 100644 index 0000000..dba4587 --- /dev/null +++ b/help/en_US/grpdelay.xml @@ -0,0 +1,35 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from grpdelay.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="grpdelay" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>grpdelay</refname> + <refpurpose>This function computes the group delay of a filter.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + gd = grpdelay(b) + gd = grpdelay(b, a) + gd = grpdelay(b, a, nfft) + gd = grpdelay(b, a, nfft, whole) + gd = grpdelay(b, a, nfft, whole, Fs) + [gd, w] = grpdelay(...) + </synopsis> +</refsynopsisdiv> +</refentry> diff --git a/help/en_US/hann.xml b/help/en_US/hann.xml new file mode 100644 index 0000000..2387cce --- /dev/null +++ b/help/en_US/hann.xml @@ -0,0 +1,67 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from hann.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="hann" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>hann</refname> + <refpurpose>This function returns the filter coefficients of a Hanning window.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + w = hann(m) + w = hann(m, "symmteric") + w = hann(m, "periodic") + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>m:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>opt:</term> + <listitem><para> string value, takes in "periodic" or "symmetric"</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> output variable, vector of real numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function returns the filter coefficients of a Hanning window of length m supplied as input, to the output vector w. +The second parameter can take the values "periodic" or "symmetric", depending on which the corresponding form of window is returned. The default is symmetric. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +hann(6,"symmetric") +ans = +0. +0.3454915 +0.9045085 +0.9045085 +0.3454915 +0. + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/helperHarmonicDistortionAmplifier.xml b/help/en_US/helperHarmonicDistortionAmplifier.xml new file mode 100644 index 0000000..c58cc51 --- /dev/null +++ b/help/en_US/helperHarmonicDistortionAmplifier.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from helperHarmonicDistortionAmplifier.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="helperHarmonicDistortionAmplifier" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>helperHarmonicDistortionAmplifier</refname> + <refpurpose>helperHarmonicDistortionADC Helper function for HarmonicDistortionExample.m</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/icceps.xml b/help/en_US/icceps.xml new file mode 100644 index 0000000..bd10adc --- /dev/null +++ b/help/en_US/icceps.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from icceps.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="icceps" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>icceps</refname> + <refpurpose>ICCEPS computes the inverse cepstrum of a real-valued input. This spectrum</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/iirlp2mb.xml b/help/en_US/iirlp2mb.xml new file mode 100644 index 0000000..5cf6819 --- /dev/null +++ b/help/en_US/iirlp2mb.xml @@ -0,0 +1,67 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from iirlp2mb.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="iirlp2mb" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>iirlp2mb</refname> + <refpurpose>This function does IIR Low Pass Filter to Multiband Filter Transformation.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [Num, Den, AllpassNum, AllpassDen] = iirlp2mb(B, A, Wo, Wt) + [Num, Den, AllpassNum, AllpassDen] = iirlp2mb(B, A, Wo, Wt, Pass) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>B:</term> + <listitem><para> real or complex value</para></listitem></varlistentry> + <varlistentry><term>A:</term> + <listitem><para> real or complex value</para></listitem></varlistentry> + <varlistentry><term>Wo:</term> + <listitem><para> scalar or vector</para></listitem></varlistentry> + <varlistentry><term>Wt:</term> + <listitem><para> scalar or vector, elements must be monotonically increasing and >= 0 and <= 1.</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function does IIR Low Pass Filter to Multiband Filter Transformation. +The first two parameters give the numerator and denominator of the prototype low pass filter. +The third parameter is the normalized angular frequency/pi to be transformed. +The fourth parameter is the normalized angular frequency/pi target vector. +The first two output variables are the numerator and denominator of the transformed filter. +The third and fourth output variables are the numerator and denominator of the allpass transform. +The fifth parameter can have values pass or stop, default value is pass. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +iirlp2mb(5,9,0.3,0.4) +ans = 0.55556 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/impinvar.xml b/help/en_US/impinvar.xml new file mode 100644 index 0000000..446586c --- /dev/null +++ b/help/en_US/impinvar.xml @@ -0,0 +1,68 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from impinvar.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="impinvar" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>impinvar</refname> + <refpurpose>This function converts analog filter with coefficients b and a to digital, conserving impulse response.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [b, a] = impinvar (b, a) + [b, a] = impinvar (b, a, fs) + [b, a] = impinvar (b, a, fs, tol) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>b:</term> + <listitem><para> real or complex valued scalar or vector</para></listitem></varlistentry> + <varlistentry><term>a:</term> + <listitem><para> real or complex valued scalar or vector, order should be greater than b</para></listitem></varlistentry> + <varlistentry><term>fs:</term> + <listitem><para> real or complex value, default value 1Hz</para></listitem></varlistentry> + <varlistentry><term>tol:</term> + <listitem><para> real or complex value, default value 0.0001</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function converts analog filter with coefficients b and a to digital, conserving impulse response. +This function does the inverse of impinvar. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +b = 0.0081000 +a = [2.0000000, 0.56435378, 0.4572792, 0.00705544, 0.091000] +[ay,by] = impinvar(b,a,10) +ay = +0.0000e+00 7.5293e-08 2.9902e-07 7.4238e-08 +by = +1.00000 -3.96992 5.91203 -3.91428 0.97218 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/impz.xml b/help/en_US/impz.xml new file mode 100644 index 0000000..3cde46f --- /dev/null +++ b/help/en_US/impz.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from impz.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="impz" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>impz</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + x_r = impz(b) + x_r = impz(b, a) + x_r = impz(b, a, n) + x_r = impz(b, a, n, fs) + [x_r, t_r] = impz(b, a, n, fs) + </synopsis> +</refsynopsisdiv> +</refentry> diff --git a/help/en_US/impzlength.xml b/help/en_US/impzlength.xml new file mode 100644 index 0000000..1b5adc8 --- /dev/null +++ b/help/en_US/impzlength.xml @@ -0,0 +1,76 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from impzlength.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="impzlength" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>impzlength</refname> + <refpurpose>Impulse response length</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + len = impzlength(b, a, tol) + returns the impulse response length for the causal discrete-time filter + with the transfer function coefficients for numerator and denominator in + a and b respectively. For stable IIR filters, len is the effective length + impulse response length, i.e. the length after which the response is + essentially zero + len = impzlength(sos) + returns the impulse response length of the filter specified by second + order sections matrix. sos is a Kx6 matrix, where K is the number of + sections. Each row of the sos matrix corresponds to a second order + biquad filter + len = impzlength(__, tol) + specifies a tolerance for estimating the effective impulse response + length in case of an IIR filter. By default, tol is 5e-5. Increasing tol + leads to shorter len and vice-versa + + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + </variablelist> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1) Low pass IIR filter with pole at 0.9 +b = 1; +a = [1 -0.9]; +len = impzlength(b,a); + + ]]></programlisting> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + <member><link linkend="designfilt">| digitalFilter | impz | zp2sos</link></member> + </simplelist> +</refsection> + +<refsection> + <title>Authors</title> + <simplelist type="vert"> + <member>Ayush Baid</member> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/interp.xml b/help/en_US/interp.xml new file mode 100644 index 0000000..ec22cbc --- /dev/null +++ b/help/en_US/interp.xml @@ -0,0 +1,64 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from interp.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="interp" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>interp</refname> + <refpurpose>function y = interp(x, q, n, Wc)</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y = interp(x, q) + y = interp(x, q, n) + y = interp(x, q, n, Wc) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> scalar or vector of complex or real numbers</para></listitem></varlistentry> + <varlistentry><term>q:</term> + <listitem><para> positive integer value, or logical</para></listitem></varlistentry> + <varlistentry><term>n:</term> + <listitem><para> positive integer, default value 4</para></listitem></varlistentry> + <varlistentry><term>Wc:</term> + <listitem><para> non decreasing vector or scalar, starting from 0 uptill 1, default value 0.5</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function upsamples the signal x by a factor of q, using an order 2*q*n+1 FIR filter. +The second argument q must be an integer. The default values of the third and fourth arguments (n, Wc) are 4 and 0.5 respectively. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +interp(1,2) +ans = +0.4792743 0.3626016 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/intfilt.xml b/help/en_US/intfilt.xml new file mode 100644 index 0000000..a674813 --- /dev/null +++ b/help/en_US/intfilt.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from intfilt.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="intfilt" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>intfilt</refname> + <refpurpose></refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/invimpinvar.xml b/help/en_US/invimpinvar.xml new file mode 100644 index 0000000..5517be5 --- /dev/null +++ b/help/en_US/invimpinvar.xml @@ -0,0 +1,71 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from invimpinvar.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="invimpinvar" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>invimpinvar</refname> + <refpurpose>This function converts digital filter with coefficients b and a to analog, conserving impulse response.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [b, a] = impinvar (b, a) + [b, a] = impinvar (b, a, fs) + [b, a] = impinvar (b, a, fs, tol) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>b:</term> + <listitem><para> real or complex valued scalar or vector</para></listitem></varlistentry> + <varlistentry><term>a:</term> + <listitem><para> real or complex valued scalar or vector, order should be greater than b</para></listitem></varlistentry> + <varlistentry><term>fs:</term> + <listitem><para> real or complex value, default value 1Hz</para></listitem></varlistentry> + <varlistentry><term>tol:</term> + <listitem><para> real or complex value, default value 0.0001</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function converts digital filter with coefficients b and a to analog, conserving impulse response. +This function does the inverse of impinvar. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +b = 0.0081000 +a = [2.0000000, 0.56435378, 0.4572792, 0.00705544, 0.091000] +[ay, by] = invimpinvar(b,a,10) +ay = +-1.6940e-16 4.6223e+00 -4.5210e+00 7.2880e+02 +by = +Columns 1 through 4: +1.0000e+00 3.0900e+01 9.6532e+02 1.2232e+04 +Column 5: +1.1038e+05 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/is2rc.xml b/help/en_US/is2rc.xml new file mode 100644 index 0000000..8f1bd14 --- /dev/null +++ b/help/en_US/is2rc.xml @@ -0,0 +1,74 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from is2rc.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="is2rc" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>is2rc</refname> + <refpurpose>Convert inverse sine parameters to reflection coefficients</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + K = is2rc(isin) + + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>isin:</term> + <listitem><para> input inverse sine parameters. Needs to be an array real numbers</para></listitem></varlistentry> + <varlistentry><term>k:</term> + <listitem><para> output reflection coefficients corresponding to the reflection coefficients in input</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This function returns a vector of reflection coefficients from a vector of inverse sine parameters +output array has k(i) = sin(pi/2*isin(i)) + </para> + <para> +Example +k = [0.3090 0.9801 0.0031 0.0082 -0.0082]; +isin = rc2is(k) //Gives inverse sine parameters +k_dash = is2rc(isin) + </para> + <para> +</para> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + <member><link linkend="rc2is">rc2is</link></member> + <member><link linkend="rc2poly">rc2poly</link></member> + <member><link linkend="rc2ac">rc2ac</link></member> + <member><link linkend="rc2lar">rc2lar</link></member> + <member><link linkend="Author">Author</link></member> + <member><link linkend="Parthe">Pandit</link></member> + </simplelist> +</refsection> + +<refsection> + <title>Bibliography</title> + <para>J.R. Deller, J.G. Proakis, J.H.L. Hansen, "Discrete-Time Processing of Speech Signals", Prentice Hall, Section 7.4.5</para> +</refsection> +</refentry> diff --git a/help/en_US/isallpass.xml b/help/en_US/isallpass.xml new file mode 100644 index 0000000..b519d07 --- /dev/null +++ b/help/en_US/isallpass.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from isallpass.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="isallpass" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>isallpass</refname> + <refpurpose>[nargout,nargin]=argn();</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/isfir.xml b/help/en_US/isfir.xml new file mode 100644 index 0000000..7aa7e0d --- /dev/null +++ b/help/en_US/isfir.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from isfir.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="isfir" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>isfir</refname> + <refpurpose>[nargout,nargin]=argn();</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/islinphase.xml b/help/en_US/islinphase.xml new file mode 100644 index 0000000..54ba2d7 --- /dev/null +++ b/help/en_US/islinphase.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from islinphase.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="islinphase" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>islinphase</refname> + <refpurpose>[nargout,nargin]=argn();</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/ismaxphase.xml b/help/en_US/ismaxphase.xml new file mode 100644 index 0000000..67b480d --- /dev/null +++ b/help/en_US/ismaxphase.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from ismaxphase.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="ismaxphase" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>ismaxphase</refname> + <refpurpose>[nargout,nargin]=argn();</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/isminphase.xml b/help/en_US/isminphase.xml new file mode 100644 index 0000000..f395fbe --- /dev/null +++ b/help/en_US/isminphase.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from isminphase.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="isminphase" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>isminphase</refname> + <refpurpose>[nargout,nargin]=argn();</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/isstable.xml b/help/en_US/isstable.xml new file mode 100644 index 0000000..295c1d4 --- /dev/null +++ b/help/en_US/isstable.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from isstable.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="isstable" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>isstable</refname> + <refpurpose>SOS matrix corresponds to [bi(1) bi(2) bi(3) ai(1) ai(2) ai(3)].</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/kaiser.xml b/help/en_US/kaiser.xml new file mode 100644 index 0000000..394119b --- /dev/null +++ b/help/en_US/kaiser.xml @@ -0,0 +1,66 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from kaiser.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="kaiser" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>kaiser</refname> + <refpurpose>This function returns the filter coefficients of a Kaiser window.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + w = kaiser (m) + w = kaiser (m, beta) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>m:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>beta:</term> + <listitem><para> real scalar value</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> output variable, vector of real numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function returns the filter coefficients of a Kaiser window of length m supplied as input, to the output vector w. +The second parameter gives the stop band attenuation of the Fourier transform of the window on derivation. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +kaiser(6,0.2) +ans = +0.9900745 +0.9964211 +0.9996020 +0.9996020 +0.9964211 +0.9900745 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/lar2rc.xml b/help/en_US/lar2rc.xml new file mode 100644 index 0000000..5f07b8d --- /dev/null +++ b/help/en_US/lar2rc.xml @@ -0,0 +1,60 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from lar2rc.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="lar2rc" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>lar2rc</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + k = lar2rc(g) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>g:</term> + <listitem><para> define log area ratios.</para></listitem></varlistentry> + <varlistentry><term>k:</term> + <listitem><para> returns the reflection coefficients.</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +X = [7 6 5 8 3 6 8 7 5 2 4 7 4 3 2 5 4 9 5 3 5 7 3 9 4 1 2 0 5 4 8 6 4 6 5 3]; +k = lar2rc(X) +or t=[2 5 6; 8 6 5; 8 9 4] +k = lar2rc(t) + + ]]></programlisting> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + <member><link linkend="Author">Author</link></member> + <member><link linkend="Jitendra">Singh</link></member> + <member><link linkend="Modified">to match MATLAB o/p when i/p is of type char and is a string by Debdeep Dey</link></member> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/latc2tf.xml b/help/en_US/latc2tf.xml new file mode 100644 index 0000000..8e90565 --- /dev/null +++ b/help/en_US/latc2tf.xml @@ -0,0 +1,89 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from latc2tf.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="latc2tf" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>latc2tf</refname> + <refpurpose>Convert lattice filter parameters to transfer function coefficients</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Description</title> + <para> +[num,den] = latc2tf(k,v) +Finds the transfer function of the IIR filter from the lattice +coefficients k and ladder coefficients v. +[num,den] = latc2tf(k,'iiroption') +Finds the transfer function of the allpass or allpole (specified by +the iiroption flag) IIR filter. +num = latc2tf(k,'firoption') +Finds the transfer function of the FIR filter from the lattice +coefficients k. The firoption flag specifies the type of the FIR +filter (can be 'min, 'max', or 'FIR') + </para> + <para> +Parameters: +k - double - vector +Lattice coefficients +Lattice coefficients for FIR/IIR filter. Can be real or complex. +v - double - vector +Ladder coefficients +Ladder coefficients for IIR filters. Can be real or complex. +iiroption - string flag - 'allpole', or 'allpass' +Specification of the type if IIR filter +firoption - string flag - 'min', 'max', or 'FIR' (default) +Speficication of the type of FIR filter + </para> + <para> +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1) FIR filter +k1 = [1/2 1/2 1/4]; +[num1,den1] = latc2tf(k1); + + ]]></programlisting> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + <member><link linkend="latcfilt">| tf2latc</link></member> + <member><link linkend="References">References</link></member> + <member><link linkend="[1]">J.G. Proakis, D.G. Manolakis, Digital Signal Processing,</link></member> + <member><link linkend="3rd">ed., Prentice Hall, N.J., 1996, Chapter 7.</link></member> + <member><link linkend="[2]">S. K. Mitra, Digital Signal Processing, A Computer</link></member> + <member><link linkend="Based">Approach, McGraw-Hill, N.Y., 1998, Chapter 6.</link></member> + </simplelist> +</refsection> + +<refsection> + <title>Authors</title> + <simplelist type="vert"> + <member>Ayush Baid</member> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/latcfilt.xml b/help/en_US/latcfilt.xml new file mode 100644 index 0000000..d1a7327 --- /dev/null +++ b/help/en_US/latcfilt.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from latcfilt.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="latcfilt" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>latcfilt</refname> + <refpurpose>function [f,g,zo]=latcfilt(k,x,v,zi,dim)</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/latcfilt1.xml b/help/en_US/latcfilt1.xml new file mode 100644 index 0000000..75cd7b1 --- /dev/null +++ b/help/en_US/latcfilt1.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from latcfilt1.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="latcfilt1" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>latcfilt1</refname> + <refpurpose>function [f,g,zo]=latcfilt1(k,v,x,zi)</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/levdown.xml b/help/en_US/levdown.xml new file mode 100644 index 0000000..35cafba --- /dev/null +++ b/help/en_US/levdown.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from levdown.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="levdown" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>levdown</refname> + <refpurpose></refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/levin.xml b/help/en_US/levin.xml new file mode 100644 index 0000000..e8c3a2f --- /dev/null +++ b/help/en_US/levin.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from levin.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="levin" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>levin</refname> + <refpurpose>[ar,sigma2,rc]=lev(r)</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/levinson.xml b/help/en_US/levinson.xml new file mode 100644 index 0000000..056795f --- /dev/null +++ b/help/en_US/levinson.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from levinson.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="levinson" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>levinson</refname> + <refpurpose></refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/lpc.xml b/help/en_US/lpc.xml new file mode 100644 index 0000000..1ebe531 --- /dev/null +++ b/help/en_US/lpc.xml @@ -0,0 +1,90 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from lpc.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="lpc" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>lpc</refname> + <refpurpose>Linear prediction filter coefficients</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [a,g] = lpc(x) + [a,g] = lpc(x,p) + + + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Description</title> + <para> +[a,g] = lpc(x,p) +Determines the coefficients of a pth order forward linear predictor +filter by minimizing the squared error. If p is unspecified, a +default value of length(x)-1 is used. + </para> + <para> +</para> +</refsection> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> double</para></listitem></varlistentry> + <varlistentry><term>p:</term> + <listitem><para> int, natural number, scalar</para></listitem></varlistentry> + <varlistentry><term>a:</term> + <listitem><para> double</para></listitem></varlistentry> + <varlistentry><term>g:</term> + <listitem><para> double</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1) +noise = randn(20000,1); +x = filter(1,[1 1/5 1/3 1/4],noise); +x = x(15904:20000); +[a,g] = lpc(x,3); + + +References +[1] Hayes, Monson H. Statistical digital signal processing and modeling. +John Wiley & Sons, 2009, pg. 220 + + ]]></programlisting> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + <member><link linkend="aryule">| levinson | prony | pyulear | stmcb</link></member> + </simplelist> +</refsection> + +<refsection> + <title>Authors</title> + <simplelist type="vert"> + <member>Ayush Baid</member> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/lsf2poly.xml b/help/en_US/lsf2poly.xml new file mode 100644 index 0000000..799c953 --- /dev/null +++ b/help/en_US/lsf2poly.xml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from lsf2poly.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="lsf2poly" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>lsf2poly</refname> + <refpurpose>lsf2poly function convert line spectral frequencies to prediction polynomial.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + a = lsf2poly(lsf) + </synopsis> +</refsynopsisdiv> +</refentry> diff --git a/help/en_US/mag2db.xml b/help/en_US/mag2db.xml new file mode 100644 index 0000000..79c952d --- /dev/null +++ b/help/en_US/mag2db.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from mag2db.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="mag2db" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>mag2db</refname> + <refpurpose>funcprot(0);</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/marcumq.xml b/help/en_US/marcumq.xml new file mode 100644 index 0000000..dfcf658 --- /dev/null +++ b/help/en_US/marcumq.xml @@ -0,0 +1,67 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from marcumq.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="marcumq" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>marcumq</refname> + <refpurpose>This function computes the generalized Marcum Q function of order m with noncentrality parameter a and argument b.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + q = marcumq (a, b) + q = marcumq (a, b, m) + q = marcumq (a, b, m, tol) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>a:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>b:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>m:</term> + <listitem><para> default value 1</para></listitem></varlistentry> + <varlistentry><term>tol:</term> + <listitem><para> default value eps</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function computes the generalized Marcum Q function of order m with noncentrality parameter a and argument b. +The third argument m is the order, which by default is 1. +The fourth argument tol is the tolerance, which by default is eps. +If input arguments are vectors which correspond in size and degree, the output is a table of values. +This function calculates Marcum’s Q function using the infinite Bessel series, which is truncated when the relative error is less than the specified tolerance. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +marcumq([1,2,3],4) +ans = +0.0028895 0.0341348 0.1965122 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/master_help.xml b/help/en_US/master_help.xml new file mode 100644 index 0000000..106caf6 --- /dev/null +++ b/help/en_US/master_help.xml @@ -0,0 +1,407 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE book [ +<!--Begin Entities--> +<!ENTITY a8e75e2f5f673f69ccd0ae09125797d10 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/ac2poly.xml"> +<!ENTITY a8698c4d44c8ce172c217eb47cd000ea3 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/ac2rc.xml"> +<!ENTITY a9d1665ef65fdaa93ef13b176bc16529e SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/arParEst.xml"> +<!ENTITY a55c1e2ad33f3d75c402e537971532a0a SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/arburg.xml"> +<!ENTITY a9027b53eba3ee61dcdbaa35b92fe7829 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/arcov.xml"> +<!ENTITY a96b52cc26fd89e3022c2a5768cc56d8a SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/armcov.xml"> +<!ENTITY a443f825a765223fab736b148da793816 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/aryule.xml"> +<!ENTITY ab4c0962c14b71fa4cacfd98f459345e4 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/barthannwin.xml"> +<!ENTITY ad9c3c5b06a31582bc282df99b7b845eb SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/bartlett.xml"> +<!ENTITY a44d80d0ac68235cfbf038d7a193b9f10 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/besself.xml"> +<!ENTITY ab03dc752c1da189c627b8783906fa76b SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/bitrevorder.xml"> +<!ENTITY adcb9fb4a800ec7b2fd13bb33f9766b1a SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/blackman.xml"> +<!ENTITY ad0fc244a7a0869e73c52cbb255a7c9e8 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/blackmanharris.xml"> +<!ENTITY aa14d0f03ebbac6c15ee5d89a1ea93a29 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/blackmannuttall.xml"> +<!ENTITY a005b7e2c74c17718cb7e0dcca39bd261 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/bohmanwin.xml"> +<!ENTITY ad2efdaa4e35523bfbb5902da68839989 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/boxcar.xml"> +<!ENTITY a194e2a5a331d499be6685a2f39ba5ff8 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/buffer.xml"> +<!ENTITY af22dc2a9e4e808bafb802645e936f447 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/butter.xml"> +<!ENTITY ac55b7d0869c84e19055314b6971e514c SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/buttord.xml"> +<!ENTITY af9d99c26c08904ffc9f7d8b996e9e86f SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/cconv.xml"> +<!ENTITY a7673ace47843f711108b78014852a88e SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/cell2sos.xml"> +<!ENTITY ac33d653d4d7cda5520d9895f2aa1089a SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/cheb1ord.xml"> +<!ENTITY a43d1540783efb7668fa7b766016c8c99 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/cheb2ord.xml"> +<!ENTITY af76714376c5fd6bff0f31ac678affc51 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/chebwin.xml"> +<!ENTITY ab2115b60b35ffe3c8aabdb4441053c00 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/cheby1.xml"> +<!ENTITY ab389cee380fa623af5b9ae26b3cbdb82 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/cheby2.xml"> +<!ENTITY ad478932b4e35edffa08a1be79b8876f7 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/check.xml"> +<!ENTITY a3d0715f8b1b4a18139c1ac0a514a2e84 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/chirp.xml"> +<!ENTITY a0dfd63add3dca95707c8010f6f69a75b SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/clustersegment.xml"> +<!ENTITY ad0dee706535fb983f399d473bd589b2a SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/cmorwavf.xml"> +<!ENTITY a967f78b0140824612ed21bdb17aee5f6 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/convmtx.xml"> +<!ENTITY ad06b04cb5e735d0fff94ef46da0289c6 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/corrmtx.xml"> +<!ENTITY a892b214d9b58ab41f43c02fff0d1a250 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/cummax.xml"> +<!ENTITY ae628d184073dc8b9e5cec77857cbb8a8 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/cummin.xml"> +<!ENTITY a307e359bab74e1f6e35ac898ebe7525c SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/db.xml"> +<!ENTITY afb635c762fa6b1cd1e5c771f8e5ad08f SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/db2pow.xml"> +<!ENTITY a2c3f175d27b87a930061a14eaf3e3f23 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/dctmtx.xml"> +<!ENTITY a75a86194f96641596e5387107e818233 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/decimate.xml"> +<!ENTITY ae9d2df2945b14ad556786b0b1469b020 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/dftmtx.xml"> +<!ENTITY aa110b7e7ed354bb26ba186681daa7e8a SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/diric.xml"> +<!ENTITY ab15334923e7443bd6634b3e0fefb0333 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/downsample.xml"> +<!ENTITY a569d537054fcf95a73612fcf9acd2291 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/dutycycle.xml"> +<!ENTITY aa02e2518de5af4e4e5fbcc32c5edcfaa SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/ellip.xml"> +<!ENTITY a942486fd491be41a7ad2da3ee9366519 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/ellipord.xml"> +<!ENTITY a44ba9dcd9c1d4106d0e8c595f270b7ec SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/enbw.xml"> +<!ENTITY a4152e28096697dbe49bcf70f6e871ded SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/eqtflength.xml"> +<!ENTITY a18cc9ad24dc1aafb9af8f65f7002c1ec SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/falltime.xml"> +<!ENTITY a79203e89cf82c61110b5f27aac9e17d5 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/fftfilt.xml"> +<!ENTITY ac8db34ffb4976ff2c3e7d2b298e43c62 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/filternorm.xml"> +<!ENTITY af18f36cebda1b17c14b7785292e4353e SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/filtfilt.xml"> +<!ENTITY a620797510ef2d4000e7c6aec6cf28be6 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/filtic.xml"> +<!ENTITY ac17d8a5e8f73038abcd81df6c7f905eb SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/filtord.xml"> +<!ENTITY a9fec4a403abc78dc378df8fa06835c85 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/firpmord.xml"> +<!ENTITY a144425d50aaa1c62be0c1a33d83624ae SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/firtype.xml"> +<!ENTITY aaa48dd3a630f2ca1cab1d959967f8906 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/flattopwin.xml"> +<!ENTITY a7694bdb5fc6021bb11fabb84ca00eb27 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/fracshift.xml"> +<!ENTITY a7877ea8005cd4ef5ce60fe943900b457 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/fwhm.xml"> +<!ENTITY a6b9cf1e6c76d1c3499a8eb6bf584bd85 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/fwhmjlt.xml"> +<!ENTITY af765ef7b9e207d5c67526c33e4730b1a SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/gauspuls.xml"> +<!ENTITY ad40c44b180e6f3be2dfbc829c55fc3a4 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/gaussdesign.xml"> +<!ENTITY a5db68e6f9e9d2a92c95a11bf5812855c SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/gaussian.xml"> +<!ENTITY a913be93dfeda659524816a197150997f SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/gausswin.xml"> +<!ENTITY ad63a1c86f4395c4612c1d502ba65a9bb SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/gmonopuls.xml"> +<!ENTITY a7ccf09e207e8b9763051ac7308890fa7 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/goertzel.xml"> +<!ENTITY a812a4f9b6d901b68c03810b8f6687c8a SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/grpdelay.xml"> +<!ENTITY ae8efee9d6f31f248a6703d185e7b2266 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/hann.xml"> +<!ENTITY a5adc482d68f91b1f4fe2021adb5de85b SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/helperHarmonicDistortionAmplifier.xml"> +<!ENTITY ab542a75b88b0c20cb71d53133c8ed088 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/icceps.xml"> +<!ENTITY accd65bee2471f08818e98ffa5bd17f01 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/iirlp2mb.xml"> +<!ENTITY ae9d6517ebb60ed1cb31db4d017389d21 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/impinvar.xml"> +<!ENTITY aacab2d9a1c22106fc834d853da1c2f53 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/impz.xml"> +<!ENTITY ab8332a55a72a2bc6b1cf9c2893f04c53 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/impzlength.xml"> +<!ENTITY a06d31e8edeffffa6b0208faed0adc4f0 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/interp.xml"> +<!ENTITY a63e522f69f57aace003e96c6b830a760 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/intfilt.xml"> +<!ENTITY ad60ebd26a7b623cb8b1645d626f179bd SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/invimpinvar.xml"> +<!ENTITY a7d102cee9280f768c6b66f39303d9636 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/is2rc.xml"> +<!ENTITY aa9250783105902e0ffad19d9b2179924 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/isallpass.xml"> +<!ENTITY ab8dfc64e82f4d873d57a647dcf6a1f08 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/isfir.xml"> +<!ENTITY adf251e74692179e55d8e1d277f85d0e5 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/islinphase.xml"> +<!ENTITY a0a9842cda9f4a75035ae1cc165f5c238 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/ismaxphase.xml"> +<!ENTITY a5705761b49f75a467b21ab12263fc95c SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/isminphase.xml"> +<!ENTITY a7661d7b8726e8b5bd21fe5227b711bdd SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/isstable.xml"> +<!ENTITY afad1b0983f118f2dfce0e61e2346180b SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/kaiser.xml"> +<!ENTITY acac25a9885906a295270c8b29bf4d655 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/lar2rc.xml"> +<!ENTITY a0d219a239fd82774d2d1d99fce5437bd SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/latc2tf.xml"> +<!ENTITY a6ab4cd3430a5ee6c247dd996ae6f603f SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/latcfilt.xml"> +<!ENTITY af5fa9037e50040b93d57631d178a3e5a SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/latcfilt1.xml"> +<!ENTITY a8f8409cf8a6c2267183a71b9049960a0 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/levdown.xml"> +<!ENTITY a694ea0ded4d1948179e59913b0058367 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/levin.xml"> +<!ENTITY aac4f1655004a6daa3380d56fcff40a67 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/levinson.xml"> +<!ENTITY a3ad096374bab4ff61d2f146979ac865b SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/lpc.xml"> +<!ENTITY aac9c17d1b0d4d3509e0d3109a2b94e9e SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/lsf2poly.xml"> +<!ENTITY a0a9faead39dc5f6606356efb9f02210c SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/mag2db.xml"> +<!ENTITY ab9aa3e340540b59108eb031e96931df9 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/marcumq.xml"> +<!ENTITY a97f85c47a50fa146fd22c832a9ebdf0a SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/medfilt1.xml"> +<!ENTITY a6556bbf6ee0a4d82400b419c1c04489a SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/mexihat.xml"> +<!ENTITY a5d52f44eb481698d004649a31a2fe0dc SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/meyeraux.xml"> +<!ENTITY a1456b32b6b9e56f90c00116c11c736e1 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/midcross.xml"> +<!ENTITY ae1d7875ac5b63a4a0c3be678343accf8 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/modulate.xml"> +<!ENTITY aa32293def90aa3b1874516200db328d5 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/morlet.xml"> +<!ENTITY aab590ca9f4d8ca0e2b5f675463bfc300 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/movingrms.xml"> +<!ENTITY a1c30b7de37036dba8d3bb734cd22de0b SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/musicBase.xml"> +<!ENTITY a3e766977e63212874110b86d7ecf1765 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/nnls.xml"> +<!ENTITY ab102da2711e22a7cac825996d81cadd4 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/nuttallwin.xml"> +<!ENTITY a0328ca8d1568dddc13d9e23f1fd4b703 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/parzenwin.xml"> +<!ENTITY a645c259b80a0f955a6306ec2967a8eb9 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/pchip.xml"> +<!ENTITY ab924736b80d89c93615913b18a95c344 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/pchips.xml"> +<!ENTITY a1832b1e95e340a77f4157db588479108 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/peak2peak.xml"> +<!ENTITY aa02e63e2d25b73e391fae3e2dbcad1f1 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/peak2rms.xml"> +<!ENTITY a3bfc3d20afdc1d063a63545e8ad965fc SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/peig.xml"> +<!ENTITY a6feedb45ae38053db8f2e8b72f837c0b SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/periodogram.xml"> +<!ENTITY a285e144c3c079ac4818c2d3ce9aa4018 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/phaseInputParseAs_ab.xml"> +<!ENTITY ab522640f1b1a2a101d7f53fa74bc978c SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/phaseInputParseAs_sos.xml"> +<!ENTITY a6c08f92e9bb8f5656e91de8c51017e41 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/phasedelay.xml"> +<!ENTITY aabdbe0536cb3407c147692f63553197c SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/phasez.xml"> +<!ENTITY a45e066455b84854cfdda03c20f62e8e5 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/pmusic.xml"> +<!ENTITY ad1696054ba2bfb10269b1fa910487b67 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/poly2ac.xml"> +<!ENTITY a0f54ae2eab9726d0738f2a7c9d0bd9cd SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/poly2lsf.xml"> +<!ENTITY ade43da0f6c567ff714386e206302823c SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/poly2rc.xml"> +<!ENTITY ade6da79e5a48de635fe20e4b09c7f829 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/polyscale.xml"> +<!ENTITY ade753389e5a2c97effba10e92032e0e8 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/polystab.xml"> +<!ENTITY a6a61f9dfc5ef2f11c47c79e727e109dc SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/polyval.xml"> +<!ENTITY a0cca39e78f1ec0603dd2f06987c2cdfb SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/pow2db.xml"> +<!ENTITY afbc00ee33daf188fb4f0a6593b7315be SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/primitive.xml"> +<!ENTITY abe6c42fca4bae2c4dc5e732ac22c3122 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/prony.xml"> +<!ENTITY a9c36a3aed30b5423f7f9453f226b1624 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/pulseperiod.xml"> +<!ENTITY a7cc46dcdf3803a6bbf4b9a8b6ac26a57 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/pulsesep.xml"> +<!ENTITY ad2cf53fdd272bf952c7544e82ceb790e SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/pulsewidth.xml"> +<!ENTITY a0b77ff76f3e818ba4f841e6063167d2c SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/pulstran.xml"> +<!ENTITY a4990cb4fa6c142b57fe598fa4b74cc8a SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/rc2ac.xml"> +<!ENTITY a8da047c9aca5e030952f7ae4e939ea55 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/rc2is.xml"> +<!ENTITY acbac18223b7471266e4fc0e121bdc4a4 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/rc2lar.xml"> +<!ENTITY a1720c052be76bca87e73fb612ab4e04c SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/rc2poly.xml"> +<!ENTITY a79f8b36da75404a592746fbc6335abe3 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/rcosdesign.xml"> +<!ENTITY aef606774f5beec095d689029a3d563d6 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/rectpuls.xml"> +<!ENTITY a5b201b6796866ce5d38144266a973e11 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/rectwin.xml"> +<!ENTITY a7fcb51352d97a9cb749966952dd010b1 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/resample.xml"> +<!ENTITY aa06417a31fcb80db2a2560f36c98b0d9 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/residued.xml"> +<!ENTITY af7f01dc50588ef2deb2dad013313c56f SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/residuez.xml"> +<!ENTITY a51ff9771bd9999742fbabd10dfa2716b SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/risetime.xml"> +<!ENTITY aa0a5fbcfd08afdf4f84469058d92d1b5 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/rlevinson.xml"> +<!ENTITY a4a0497e282b0dee6e2309390c240a7ae SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/rms.xml"> +<!ENTITY a6d49fdfc4a900f1f8d758cb4229b6ddb SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/rooteig.xml"> +<!ENTITY a6e4658c28a0474ebb2fea282abe1d59e SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/rootmusic.xml"> +<!ENTITY ac2e0e9545520ef05df36059b909d6ae1 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/rssq.xml"> +<!ENTITY a244a3b223653502f9bf275b4b9e4925f SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/sampled2continuous.xml"> +<!ENTITY a9b9b052aa492836c08fbd4af8c7783da SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/sawtooth.xml"> +<!ENTITY a569e8f685b6287195edd6236c53d5c63 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/schtrig.xml"> +<!ENTITY ac74798a64bc1d88978516068f70f9e68 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/schurrc.xml"> +<!ENTITY aed956088f60a12caa0569fc8478bc218 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/seqperiod.xml"> +<!ENTITY a725f95169d84a3abe52b0e03db4d11ba SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/sgolay.xml"> +<!ENTITY a1dba4dbeb4eb7770b2ca70130edf7713 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/sgolayfilt.xml"> +<!ENTITY a8b6d83f2be510c010a3499436a70fbe9 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/shanwavf.xml"> +<!ENTITY a4cb31f498133b6843ccf6f5fdfc5fed9 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/shiftdata.xml"> +<!ENTITY ab843d19e9c9afa8e872740dd912327fd SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/slewrate.xml"> +<!ENTITY a45111da85ffc61c3f563a32b831422b3 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/sos2cell.xml"> +<!ENTITY af66bfc74ef194665e1b60d3ac550fcba SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/sos2ss.xml"> +<!ENTITY a229ffc7922972e9a5e84c4d10872f52a SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/sos2tf.xml"> +<!ENTITY a219cfc5f0bd2be7a19358ac60b0fb3c3 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/sos2zp.xml"> +<!ENTITY a5497a91c45a1b70ec63c7f7c5a148f81 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/sosbreak.xml"> +<!ENTITY a5f8524aefcfe2305f7a7017dc38d3ceb SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/sosfilt.xml"> +<!ENTITY a30ebe998b15912620798f0512d096ca2 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/specgram.xml"> +<!ENTITY a0f705a4d8c6f08b857346ab10eadcb0b SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/ss2sos.xml"> +<!ENTITY a6c436701bc497e6c93e5f950566605d7 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/statelevels.xml"> +<!ENTITY ab182ea39f47038b9005130f5d519e648 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/stmcb.xml"> +<!ENTITY a4b53351dc581d8e4948057e814e76fd7 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/strips.xml"> +<!ENTITY abba93c3b1d3f5a503f4e2ad9a7d54a8d SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/subspaceMethodsInputParser.xml"> +<!ENTITY a6296e3deda4e6c9bd8e6f3994690122b SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/tf2sos.xml"> +<!ENTITY ac20fa1256a2de142ba84e34cd40974fb SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/tf2zp.xml"> +<!ENTITY adc926a477bdb182543bee17047f2c7c3 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/tf2zpk.xml"> +<!ENTITY acdc9f3523ddc956e44044f9dbfd089b5 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/transpose.xml"> +<!ENTITY a5727da581c8709cfa7b75376d497f36f SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/trial_iirlp2mb.xml"> +<!ENTITY ab3991a2aec7325b003280f9199434aef SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/triang.xml"> +<!ENTITY ad84a256705dd9aa1c5f74170fb2e87c0 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/tripuls.xml"> +<!ENTITY a701b6f0713e2988dd019f4f7988ec8f8 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/truth.xml"> +<!ENTITY a2e4b0f9a66fc5e3d3f2bf6018b49d528 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/tukeywin.xml"> +<!ENTITY abf76556997ccc83a28d7b4ec0fb04f3c SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/udecode.xml"> +<!ENTITY a65802ed5cf1fb48fc2bb8103aebf1d9a SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/uencode.xml"> +<!ENTITY a4def601539b165a9da9997247d829cc7 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/ultrwin.xml"> +<!ENTITY ab99b898aa4758140e41b66f864df28a1 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/unshiftdata.xml"> +<!ENTITY ad5cf155b5dcfb52b9a3a005b41884e5d SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/upfirdn.xml"> +<!ENTITY a09257104ca20108fdcf17c3d85a10b07 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/upsample.xml"> +<!ENTITY af890c6202b5508327e2c287f59a4744f SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/upsamplefill.xml"> +<!ENTITY ac6897d48b5566b88659b2d5b3268c1d5 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/var.xml"> +<!ENTITY af470bf6a7f0c3f3f8a1d2b2d82239a58 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/vco.xml"> +<!ENTITY a20bd69f5194f8e9e09bc9fd7133243e5 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/welchwin.xml"> +<!ENTITY adb3ad1a31fc33817fca351c23c0d5bb1 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/window.xml"> +<!ENTITY ad9bc567c8394038af449ba10dac0ac13 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/wkeep.xml"> +<!ENTITY ab72c0c71abca81b50aea3a054a1083e9 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/wrev.xml"> +<!ENTITY ab4390b2f1ce7bc5f99a492e2f75b34d2 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/xcorr2.xml"> +<!ENTITY a860bf01ed306029ec8353d2c49d020dc SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/zerocrossing.xml"> +<!ENTITY a3bc890eeb5eaedd91f617135e61263a5 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/zp2sos.xml"> +<!ENTITY af9edce4b9863afc1c36b0bf6c772ce00 SYSTEM "/home/fossee/Desktop/FOSSEE-Signal-Processing-Toolbox/help/en_US/zplane.xml"> +<!--End Entities--> +]> +<book version="5.0-subset Scilab" xml:lang="en_US" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:xi="http://www.w3.org/2001/XInclude" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:html="http://www.w3.org/1999/xhtml" + xmlns:db="http://docbook.org/ns/docbook"> + <info xml:id='fossee_signal_processing_toolbox_manual'> + <title>FOSSEE Signal Processing Toolbox</title> + </info> + +<part xml:id='section_be19baaac84b122b8ad501d34462f5bf'> +<title>FOSSEE Signal Processing Toolbox</title> +&a8e75e2f5f673f69ccd0ae09125797d10; +&a8698c4d44c8ce172c217eb47cd000ea3; +&a9d1665ef65fdaa93ef13b176bc16529e; +&a55c1e2ad33f3d75c402e537971532a0a; +&a9027b53eba3ee61dcdbaa35b92fe7829; +&a96b52cc26fd89e3022c2a5768cc56d8a; +&a443f825a765223fab736b148da793816; +&ab4c0962c14b71fa4cacfd98f459345e4; +&ad9c3c5b06a31582bc282df99b7b845eb; +&a44d80d0ac68235cfbf038d7a193b9f10; +&ab03dc752c1da189c627b8783906fa76b; +&adcb9fb4a800ec7b2fd13bb33f9766b1a; +&ad0fc244a7a0869e73c52cbb255a7c9e8; +&aa14d0f03ebbac6c15ee5d89a1ea93a29; +&a005b7e2c74c17718cb7e0dcca39bd261; +&ad2efdaa4e35523bfbb5902da68839989; +&a194e2a5a331d499be6685a2f39ba5ff8; +&af22dc2a9e4e808bafb802645e936f447; +&ac55b7d0869c84e19055314b6971e514c; +&af9d99c26c08904ffc9f7d8b996e9e86f; +&a7673ace47843f711108b78014852a88e; +&ac33d653d4d7cda5520d9895f2aa1089a; +&a43d1540783efb7668fa7b766016c8c99; +&af76714376c5fd6bff0f31ac678affc51; +&ab2115b60b35ffe3c8aabdb4441053c00; +&ab389cee380fa623af5b9ae26b3cbdb82; +&ad478932b4e35edffa08a1be79b8876f7; +&a3d0715f8b1b4a18139c1ac0a514a2e84; +&a0dfd63add3dca95707c8010f6f69a75b; +&ad0dee706535fb983f399d473bd589b2a; +&a967f78b0140824612ed21bdb17aee5f6; +&ad06b04cb5e735d0fff94ef46da0289c6; +&a892b214d9b58ab41f43c02fff0d1a250; +&ae628d184073dc8b9e5cec77857cbb8a8; +&a307e359bab74e1f6e35ac898ebe7525c; +&afb635c762fa6b1cd1e5c771f8e5ad08f; +&a2c3f175d27b87a930061a14eaf3e3f23; +&a75a86194f96641596e5387107e818233; +&ae9d2df2945b14ad556786b0b1469b020; +&aa110b7e7ed354bb26ba186681daa7e8a; +&ab15334923e7443bd6634b3e0fefb0333; +&a569d537054fcf95a73612fcf9acd2291; +&aa02e2518de5af4e4e5fbcc32c5edcfaa; +&a942486fd491be41a7ad2da3ee9366519; +&a44ba9dcd9c1d4106d0e8c595f270b7ec; +&a4152e28096697dbe49bcf70f6e871ded; +&a18cc9ad24dc1aafb9af8f65f7002c1ec; +&a79203e89cf82c61110b5f27aac9e17d5; +&ac8db34ffb4976ff2c3e7d2b298e43c62; +&af18f36cebda1b17c14b7785292e4353e; +&a620797510ef2d4000e7c6aec6cf28be6; +&ac17d8a5e8f73038abcd81df6c7f905eb; +&a9fec4a403abc78dc378df8fa06835c85; +&a144425d50aaa1c62be0c1a33d83624ae; +&aaa48dd3a630f2ca1cab1d959967f8906; +&a7694bdb5fc6021bb11fabb84ca00eb27; +&a7877ea8005cd4ef5ce60fe943900b457; +&a6b9cf1e6c76d1c3499a8eb6bf584bd85; +&af765ef7b9e207d5c67526c33e4730b1a; +&ad40c44b180e6f3be2dfbc829c55fc3a4; +&a5db68e6f9e9d2a92c95a11bf5812855c; +&a913be93dfeda659524816a197150997f; +&ad63a1c86f4395c4612c1d502ba65a9bb; +&a7ccf09e207e8b9763051ac7308890fa7; +&a812a4f9b6d901b68c03810b8f6687c8a; +&ae8efee9d6f31f248a6703d185e7b2266; +&a5adc482d68f91b1f4fe2021adb5de85b; +&ab542a75b88b0c20cb71d53133c8ed088; +&accd65bee2471f08818e98ffa5bd17f01; +&ae9d6517ebb60ed1cb31db4d017389d21; +&aacab2d9a1c22106fc834d853da1c2f53; +&ab8332a55a72a2bc6b1cf9c2893f04c53; +&a06d31e8edeffffa6b0208faed0adc4f0; +&a63e522f69f57aace003e96c6b830a760; +&ad60ebd26a7b623cb8b1645d626f179bd; +&a7d102cee9280f768c6b66f39303d9636; +&aa9250783105902e0ffad19d9b2179924; +&ab8dfc64e82f4d873d57a647dcf6a1f08; +&adf251e74692179e55d8e1d277f85d0e5; +&a0a9842cda9f4a75035ae1cc165f5c238; +&a5705761b49f75a467b21ab12263fc95c; +&a7661d7b8726e8b5bd21fe5227b711bdd; +&afad1b0983f118f2dfce0e61e2346180b; +&acac25a9885906a295270c8b29bf4d655; +&a0d219a239fd82774d2d1d99fce5437bd; +&a6ab4cd3430a5ee6c247dd996ae6f603f; +&af5fa9037e50040b93d57631d178a3e5a; +&a8f8409cf8a6c2267183a71b9049960a0; +&a694ea0ded4d1948179e59913b0058367; +&aac4f1655004a6daa3380d56fcff40a67; +&a3ad096374bab4ff61d2f146979ac865b; +&aac9c17d1b0d4d3509e0d3109a2b94e9e; +&a0a9faead39dc5f6606356efb9f02210c; +&ab9aa3e340540b59108eb031e96931df9; +&a97f85c47a50fa146fd22c832a9ebdf0a; +&a6556bbf6ee0a4d82400b419c1c04489a; +&a5d52f44eb481698d004649a31a2fe0dc; +&a1456b32b6b9e56f90c00116c11c736e1; +&ae1d7875ac5b63a4a0c3be678343accf8; +&aa32293def90aa3b1874516200db328d5; +&aab590ca9f4d8ca0e2b5f675463bfc300; +&a1c30b7de37036dba8d3bb734cd22de0b; +&a3e766977e63212874110b86d7ecf1765; +&ab102da2711e22a7cac825996d81cadd4; +&a0328ca8d1568dddc13d9e23f1fd4b703; +&a645c259b80a0f955a6306ec2967a8eb9; +&ab924736b80d89c93615913b18a95c344; +&a1832b1e95e340a77f4157db588479108; +&aa02e63e2d25b73e391fae3e2dbcad1f1; +&a3bfc3d20afdc1d063a63545e8ad965fc; +&a6feedb45ae38053db8f2e8b72f837c0b; +&a285e144c3c079ac4818c2d3ce9aa4018; +&ab522640f1b1a2a101d7f53fa74bc978c; +&a6c08f92e9bb8f5656e91de8c51017e41; +&aabdbe0536cb3407c147692f63553197c; +&a45e066455b84854cfdda03c20f62e8e5; +&ad1696054ba2bfb10269b1fa910487b67; +&a0f54ae2eab9726d0738f2a7c9d0bd9cd; +&ade43da0f6c567ff714386e206302823c; +&ade6da79e5a48de635fe20e4b09c7f829; +&ade753389e5a2c97effba10e92032e0e8; +&a6a61f9dfc5ef2f11c47c79e727e109dc; +&a0cca39e78f1ec0603dd2f06987c2cdfb; +&afbc00ee33daf188fb4f0a6593b7315be; +&abe6c42fca4bae2c4dc5e732ac22c3122; +&a9c36a3aed30b5423f7f9453f226b1624; +&a7cc46dcdf3803a6bbf4b9a8b6ac26a57; +&ad2cf53fdd272bf952c7544e82ceb790e; +&a0b77ff76f3e818ba4f841e6063167d2c; +&a4990cb4fa6c142b57fe598fa4b74cc8a; +&a8da047c9aca5e030952f7ae4e939ea55; +&acbac18223b7471266e4fc0e121bdc4a4; +&a1720c052be76bca87e73fb612ab4e04c; +&a79f8b36da75404a592746fbc6335abe3; +&aef606774f5beec095d689029a3d563d6; +&a5b201b6796866ce5d38144266a973e11; +&a7fcb51352d97a9cb749966952dd010b1; +&aa06417a31fcb80db2a2560f36c98b0d9; +&af7f01dc50588ef2deb2dad013313c56f; +&a51ff9771bd9999742fbabd10dfa2716b; +&aa0a5fbcfd08afdf4f84469058d92d1b5; +&a4a0497e282b0dee6e2309390c240a7ae; +&a6d49fdfc4a900f1f8d758cb4229b6ddb; +&a6e4658c28a0474ebb2fea282abe1d59e; +&ac2e0e9545520ef05df36059b909d6ae1; +&a244a3b223653502f9bf275b4b9e4925f; +&a9b9b052aa492836c08fbd4af8c7783da; +&a569e8f685b6287195edd6236c53d5c63; +&ac74798a64bc1d88978516068f70f9e68; +&aed956088f60a12caa0569fc8478bc218; +&a725f95169d84a3abe52b0e03db4d11ba; +&a1dba4dbeb4eb7770b2ca70130edf7713; +&a8b6d83f2be510c010a3499436a70fbe9; +&a4cb31f498133b6843ccf6f5fdfc5fed9; +&ab843d19e9c9afa8e872740dd912327fd; +&a45111da85ffc61c3f563a32b831422b3; +&af66bfc74ef194665e1b60d3ac550fcba; +&a229ffc7922972e9a5e84c4d10872f52a; +&a219cfc5f0bd2be7a19358ac60b0fb3c3; +&a5497a91c45a1b70ec63c7f7c5a148f81; +&a5f8524aefcfe2305f7a7017dc38d3ceb; +&a30ebe998b15912620798f0512d096ca2; +&a0f705a4d8c6f08b857346ab10eadcb0b; +&a6c436701bc497e6c93e5f950566605d7; +&ab182ea39f47038b9005130f5d519e648; +&a4b53351dc581d8e4948057e814e76fd7; +&abba93c3b1d3f5a503f4e2ad9a7d54a8d; +&a6296e3deda4e6c9bd8e6f3994690122b; +&ac20fa1256a2de142ba84e34cd40974fb; +&adc926a477bdb182543bee17047f2c7c3; +&acdc9f3523ddc956e44044f9dbfd089b5; +&a5727da581c8709cfa7b75376d497f36f; +&ab3991a2aec7325b003280f9199434aef; +&ad84a256705dd9aa1c5f74170fb2e87c0; +&a701b6f0713e2988dd019f4f7988ec8f8; +&a2e4b0f9a66fc5e3d3f2bf6018b49d528; +&abf76556997ccc83a28d7b4ec0fb04f3c; +&a65802ed5cf1fb48fc2bb8103aebf1d9a; +&a4def601539b165a9da9997247d829cc7; +&ab99b898aa4758140e41b66f864df28a1; +&ad5cf155b5dcfb52b9a3a005b41884e5d; +&a09257104ca20108fdcf17c3d85a10b07; +&af890c6202b5508327e2c287f59a4744f; +&ac6897d48b5566b88659b2d5b3268c1d5; +&af470bf6a7f0c3f3f8a1d2b2d82239a58; +&a20bd69f5194f8e9e09bc9fd7133243e5; +&adb3ad1a31fc33817fca351c23c0d5bb1; +&ad9bc567c8394038af449ba10dac0ac13; +&ab72c0c71abca81b50aea3a054a1083e9; +&ab4390b2f1ce7bc5f99a492e2f75b34d2; +&a860bf01ed306029ec8353d2c49d020dc; +&a3bc890eeb5eaedd91f617135e61263a5; +&af9edce4b9863afc1c36b0bf6c772ce00; +</part> +</book> diff --git a/help/en_US/medfilt1.xml b/help/en_US/medfilt1.xml new file mode 100644 index 0000000..2766e88 --- /dev/null +++ b/help/en_US/medfilt1.xml @@ -0,0 +1,98 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from medfilt1.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="medfilt1" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>medfilt1</refname> + <refpurpose>1D median filtering</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Description</title> + <para> +y = medfilt1(x) +Applies a 3rd order 1-dimensional median filter to input x along the +first non-zero dimension. The function appropriately pads the signal +with zeros at the endings. For a segment, a median is calculated as +the middle value (average of two middle values) for odd number +number (even number) of data points. +y = medfilt1(x,n) +Applies a nth order 1-dimensional median filter. +y = medfilt1(x,n,dim) +Applies the median filter along the n-th dimension +y = medfilt1(__, nanflag, padding) +nanflag specifies how NaN values are treated. padding specifies the +type of filtering to be performed at the signal edges. + </para> + <para> +</para> +</refsection> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> int | double</para></listitem></varlistentry> + <varlistentry><term>n:</term> + <listitem><para> positive integer scalar</para></listitem></varlistentry> + <varlistentry><term>dim:</term> + <listitem><para> positive integer scalar</para></listitem></varlistentry> + <varlistentry><term>nanflag:</term> + <listitem><para> 'includenan' (default) | 'omitnan'</para></listitem></varlistentry> + <varlistentry><term>* includenan:</term> + <listitem><para> Filtering such that the median of any segment</para></listitem></varlistentry> + <varlistentry><term>* omitnan:</term> + <listitem><para> Filtering with NaNs omitted in each segment. If a segment</para></listitem></varlistentry> + <varlistentry><term>y:</term> + <listitem><para> int | double</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1) Noise supression using median filtering +fs = 1e3; +t = 1:1/fs:1; +s = sin(2*%pi*2*t)+ cos(2*%pi*5*t); +// Adding noise +x = s + 0.1*randn(size(s)); +y = medfilt1(x); + + ]]></programlisting> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + <member><link linkend="filter">| hampel | median | sgolayfilt</link></member> + </simplelist> +</refsection> + +<refsection> + <title>Authors</title> + <simplelist type="vert"> + <member>Ayush Baid</member> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/mexihat.xml b/help/en_US/mexihat.xml new file mode 100644 index 0000000..3306e6f --- /dev/null +++ b/help/en_US/mexihat.xml @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from mexihat.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="mexihat" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>mexihat</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [psi,x]=mexihat(lb,ub,n) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>lb:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + <varlistentry><term>ub:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + <varlistentry><term>n:</term> + <listitem><para> Real strictly positive scalar number</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function +This function returns values of the Mexican hat wavelet in the specified interval at all the sample points. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1. [a,b]= mexihat(1,2,3) +a = [0.00000 -0.35197 -0.35214] +b = [1.0000 1.5000 2.0000] +2. [a,b]= mexihat([1 2 3],1,1) +a = [0;0;0] +b = [1;1;1] + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/meyeraux.xml b/help/en_US/meyeraux.xml new file mode 100644 index 0000000..897a8fa --- /dev/null +++ b/help/en_US/meyeraux.xml @@ -0,0 +1,56 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from meyeraux.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="meyeraux" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>meyeraux</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [y]=meyeraux(x) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function returns values of the auxiliary function used for Meyer wavelet generation. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1. meyeraux([1 2 3]) +ans= [1 -208 -10287] +2. meyeraux([1 2 3;4 5 6]) +ans= [1 -208 -10287 ; -118016 -709375 -2940624 ] + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/midcross.xml b/help/en_US/midcross.xml new file mode 100644 index 0000000..b8fe623 --- /dev/null +++ b/help/en_US/midcross.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from midcross.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="midcross" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>midcross</refname> + <refpurpose></refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/modulate.xml b/help/en_US/modulate.xml new file mode 100644 index 0000000..f8a4859 --- /dev/null +++ b/help/en_US/modulate.xml @@ -0,0 +1,82 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from modulate.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="modulate" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>modulate</refname> + <refpurpose>Modulates signal according to the modulation method</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y=modulate(x,fc,fs,method,opt) + [y,t]=modulate(x,fc,fs,method,opt) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +[y,t]=modulate(x,fc,fs,method,opt) +Returns the modulated vector y and the time vector 't' +Modulation is performed according to the following table +METHOD MODULATION SCHEME +'am', Amplitude modulation, double side-band, suppressed carrier +'amdsb-sc' opt not used. This is the default method. +'amdsb-tc' Amplitude modulation, double side-band, transmitted carrier +opt is a scalar subtracted from x before multiplying x +with the carrier wave. It defaults to min(min(x)) so that +the input signal after offset is always non-negative +'amssb' Amplitude modulation, single side-band +OPT not used. +'fm' Frequency modulation +opt is the constant of frequency modulation. +opt = (fc/fs)*2*pi/max(max(abs(x))) by default +'pm' Phase modulation +OPT is the constant of phase modulation. +opt = pi/max(max(abs(x))) by default +Phase lies between -pi and +pi +'pwm' Pulse width modulation +opt='left' corresponds to left justified pulses. +opt='centered' correspondes to centered pulses. +The default value of opt is 'left'. +'ppm' Pulse position modulation +opt is a scalar between 0 and 1 which specifies the pulse +width in fractions of the carrier period with default value 0.1. +'qam' Quadrature amplitude modulation +opt is a matrix of the same size as X which is modulated in +quadrature with x. + </para> + <para> +If x is a matrix, its columns are modulated. +Example +y = + </para> + <para> +1. 1. 0. 0. +Author +Ankur Mallick +</para> +</refsection> +</refentry> diff --git a/help/en_US/morlet.xml b/help/en_US/morlet.xml new file mode 100644 index 0000000..612568d --- /dev/null +++ b/help/en_US/morlet.xml @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from morlet.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="morlet" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>morlet</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [psi,x]= morlet(lb,ub,n) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>lb:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + <varlistentry><term>ub:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + <varlistentry><term>n:</term> + <listitem><para> Real strictly positive scalar number</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function +This function returns values of the Morlet wavelet in the specified interval for all the sample points. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1. [a,b]=morlet(1,2,3) +a = [0.17205 0.11254 -0.11356] +b = [1.0000 1.5000 2.0000] +2. [a,b]=morlet([1 2 3],[1 2 3],1) +a = [0.1720498; -0.1135560; -0.0084394] +b = [1; 2; 3] + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/movingrms.xml b/help/en_US/movingrms.xml new file mode 100644 index 0000000..c40672d --- /dev/null +++ b/help/en_US/movingrms.xml @@ -0,0 +1,68 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from movingrms.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="movingrms" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>movingrms</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [rmsx,w]=movingrms(x,w,rc,Fs=1) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> Real or complex scalar value</para></listitem></varlistentry> + <varlistentry><term>rc:</term> + <listitem><para> Real or complex scalar value</para></listitem></varlistentry> + <varlistentry><term>Fs:</term> + <listitem><para> Real or complex scalar value</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +The signal is convoluted against a sigmoid window of width w and risetime rc with the units of these parameters relative to the value of the sampling frequency given in Fs (Default value=1). +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1. [a,b]=movingrms ([4.4 94 1;-2 5i 5],1,-2) +a = 0.91237 17.71929 0.96254 +0.91237 17.71929 0.96254 +b = 0.18877 +0.18877 +2. [a,b]=movingrms ([4.4 94 1;-2 5i 5],1,-2,2) +a = 4.8332 93.8669 5.0990 +4.8332 93.8669 5.0990 +b = 1 +1 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/musicBase.xml b/help/en_US/musicBase.xml new file mode 100644 index 0000000..e95d3ff --- /dev/null +++ b/help/en_US/musicBase.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from musicBase.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="musicBase" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>musicBase</refname> + <refpurpose>Implements the core of the MUSIC algorithm</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/nnls.xml b/help/en_US/nnls.xml new file mode 100644 index 0000000..ca50d34 --- /dev/null +++ b/help/en_US/nnls.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from nnls.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="nnls" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>nnls</refname> + <refpurpose>Non Negative Least Squares (nnls) for Ex=f with the constraint x>=0</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/nuttallwin.xml b/help/en_US/nuttallwin.xml new file mode 100644 index 0000000..5732027 --- /dev/null +++ b/help/en_US/nuttallwin.xml @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from nuttallwin.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="nuttallwin" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>nuttallwin</refname> + <refpurpose>This function returns the filter coefficients of a Blackman-Harris window.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + w = nuttallwin (m) + w = nuttallwin (m, opt) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>m:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>opt:</term> + <listitem><para> string value, takes in "periodic" or "symmetric"</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> output variable, vector of real numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function returns the filter coefficients of a Blackman-Harris window defined by Nuttall of length m supplied as input, to the output vector w. +The second parameter can take the values "periodic" or "symmetric", depending on which the corresponding form of window is returned. The default is symmetric. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +nuttallwin(2, "periodic") +ans = +- 2.429D-17 +1. + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/parzenwin.xml b/help/en_US/parzenwin.xml new file mode 100644 index 0000000..e3bbbee --- /dev/null +++ b/help/en_US/parzenwin.xml @@ -0,0 +1,59 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from parzenwin.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="parzenwin" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>parzenwin</refname> + <refpurpose>This function returns the filter coefficients of a Parzen window.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y = parzenwin (m) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>m:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>y:</term> + <listitem><para> output variable, vector of real numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function returns the filter coefficients of a Parzen window of length m supplied as input, to the output vector y. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +parzenwin(3) +ans = +0.0740741 +1. +0.0740741 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/pchip.xml b/help/en_US/pchip.xml new file mode 100644 index 0000000..c9aaa34 --- /dev/null +++ b/help/en_US/pchip.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from pchip.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="pchip" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>pchip</refname> + <refpurpose></refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/pchips.xml b/help/en_US/pchips.xml new file mode 100644 index 0000000..8f356f5 --- /dev/null +++ b/help/en_US/pchips.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from pchips.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="pchips" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>pchips</refname> + <refpurpose></refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/peak2peak.xml b/help/en_US/peak2peak.xml new file mode 100644 index 0000000..cdc3221 --- /dev/null +++ b/help/en_US/peak2peak.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from peak2peak.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="peak2peak" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>peak2peak</refname> + <refpurpose>funcprot(0);</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/peak2rms.xml b/help/en_US/peak2rms.xml new file mode 100644 index 0000000..dd21dae --- /dev/null +++ b/help/en_US/peak2rms.xml @@ -0,0 +1,140 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from peak2rms.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="peak2rms" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>peak2rms</refname> + <refpurpose>This function calculates the ratio of peak magnitude to the Root Mean Square(RMS) value.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + OUT=peak2rms(IN) + OUT=peak2rms(IN,orientation) + + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>in:</term> + <listitem><para>Vector or Matrix of real or complex elements.</para></listitem></varlistentry> + <varlistentry><term>orientation:</term> + <listitem><para> A string with possible values "r", "c" or "m" giving the dimension along which the peak2rms value is to be calculated.</para></listitem></varlistentry> + <varlistentry><term>out:</term> + <listitem><para>A scalar with real value when input is a vector.When input is a matrix, out is the peak magnitude to RMS value along the orientation specified or the default one when not specified.</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +For vector as input, the output is the ratio of peak value to the RMS value. The RMS value can be calculated by taking the square root of mean value of the squared sum of the elements. + </para> + <para> +When a matrix is given as input the output is peak to RMS ratio in the orientation specified. +The orientation can be given as string with values "r","c" or "m". + </para> + <para> +peak2rms(in, 1) calculates the values of ratio of peak to RMS of columns of matrix. The output in this case is a row vector with peak2rms value of each column of in. + </para> + <para> +peak2rms(in, 2) calculates the values of ratio of peak to RMS of rows of matrix, where the output would be a column vector having peak2rms value of each row of in. + </para> + <para> +The default orientation is chosen to be the index of first dimension of input greater than 1.Hence peak2rms(in) is equivalent to peak2rms(in, "m"). + </para> + <para> +For an N dimensional array the orientation is the index of first non singleton dimension of the array. + </para> + <para> +If the elements of matrix are complex the absolute values are considered in the calculation of RMS value. + </para> + <para> +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +To calculate peak2rms of a vector: +IN=[6 19 10 25] +OUT=peak2rms(IN) +The output is OUT= +1.4638501 +1.3887301 +1.119186 + + ]]></programlisting> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +To calculate peak2rms of rows of matrix: +IN=[1 3 5;2 4 6;7 8 9] +OUT=peak2rms(IN,2) +The output is +OUT= 1.3719887 + + ]]></programlisting> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +To calculate peak magnitude to RMS value of sinusoid: + +t=0:0.6:9 +IN=cos(6*%pi*t); +OUT= peak2rms(IN) +The output is +OUT= 1.3719887 + ]]></programlisting> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + <member><link linkend="abs">abs</link></member> + <member><link linkend="mean">mean</link></member> + <member><link linkend="max">max</link></member> + <member><link linkend="sqrt">sqrt</link></member> + <member><link linkend="isempty">isempty</link></member> + </simplelist> +</refsection> + +<refsection> + <title>Authors</title> + <simplelist type="vert"> + <member>Indira Askaukar</member> + </simplelist> +</refsection> + +<refsection> + <title>Bibliography</title> + <para>Matlab help document.</para> + <para>Modified to accept char i/p</para> + <para>MOdified function to match MATLAB input arguments</para> + <para>Now for calculating the values of ratio of peak to RMS of columns of matrix use peak2rms(in,1)</para> + <para>And for calculates the values of ratio of peak to RMS of rows of matrix. use peak2rms(in,2)</para> + <para>Updated help comments accordingly</para> + <para>MOdifications done by by Debdeep Dey</para> +</refsection> +</refentry> diff --git a/help/en_US/peig.xml b/help/en_US/peig.xml new file mode 100644 index 0000000..8c85698 --- /dev/null +++ b/help/en_US/peig.xml @@ -0,0 +1,101 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from peig.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="peig" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>peig</refname> + <refpurpose>Psuedospectrum using the eigenvector method.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [S,w] = peig(x,p) + [S,w] = peig(x,p,w) + [S,w] = peig(x,p,nfft) + [S,w] = peig(x,p,nfft,fs) + [S,w] = peig(x,p,f,fs) + [S,f] = peig(...,'corr') + [S,f] = peig(x,p,nfft,fs,nwin,noverlap) + [...] = peig(...,freqrange) + [...,v,e] = peig(...) + + Parameters: + x - int|double - vector|matrix + Input signal. In case of a matrix, each row of x represents a + seperate observation of the signal. If 'corr' flag is specified, + then x is the correlation matrix. + If w is not specified in the input, it is determined by the + algorithm. If x is real valued, then range of w is [0, pi]. + Otherwise, the range of w is [0, 2pi) + p - int|double - scalar|vector + p(1) is the dimension of the signal subspace + p(2), if specified, represents a threshold that is multiplied by + the smallest estimated eigenvalue of the signal's correlation matrix. + w - int|double - vector + w is the vector of normalized frequencies over which the + pseuspectrogram is to be computed. + nfft - int - scalar (Default = 256) + Length of the fft used to compute pseudospectrum. The length of S + (and hence w/f) depends on the type of values in x and nfft. + If x is real, length of s is (nfft/2 + 1) {Range of w = [0, pi]} if + nfft is even and (nfft+1)/2 {Range of w = [0, pi)} otherwise. + If x is complex, length of s is nfft. + fs - int|double - scalar (Default = 1) + Sampling rate. Used to convert the normalized frequencies (w) to + actual values (f) and vice-versa. + nwin - int|double - scalar (int only)|vector (Default = 2*p(1)) + If nwin is scalar, it is the length of the rectangular window. + Otherwise, the vector input is considered as the window coefficients. + Not used if 'corr' flag present. + If x is a vector, windowing not done in nwin in scalar. If x is a + matrix, + noverlap - int - scalar (Default = nwin-1) + number of points by which successive windows overlap. noverlap not + used if x is a matrix + freqrange - string + The range of frequencies over which the pseudospetrogram is + computed. Three possible values - 'onesided', 'twosided', 'centered' + 'corr' flag + Presence indicates that the primary input x is actually a + correlation matrix + + Examples: + TODO: + + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + <member><link linkend="rooteig">| pmusic | pmtm | pcov | pmcov | pburg | pyulear | pwelch | corrmtx</link></member> + </simplelist> +</refsection> + +<refsection> + <title>Authors</title> + <simplelist type="vert"> + <member>Ayush Baid</member> + <member>References</member> + <member>[1] Petre Stoica and Randolph Moses, Introduction To Spectral</member> + <member>Analysis, Prentice-Hall, 1997, pg. 15</member> + <member>[2] S. J. Orfanidis, Optimum Signal Processing. An Introduction.</member> + <member>2nd Ed., Macmillan, 1988.</member> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/periodogram.xml b/help/en_US/periodogram.xml new file mode 100644 index 0000000..8b5b2ed --- /dev/null +++ b/help/en_US/periodogram.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from periodogram.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="periodogram" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>periodogram</refname> + <refpurpose>funcprot(0);</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/phaseInputParseAs_ab.xml b/help/en_US/phaseInputParseAs_ab.xml new file mode 100644 index 0000000..e396476 --- /dev/null +++ b/help/en_US/phaseInputParseAs_ab.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from phaseInputParseAs_ab.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="phaseInputParseAs_ab" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>phaseInputParseAs_ab</refname> + <refpurpose>fs=0;</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/phaseInputParseAs_sos.xml b/help/en_US/phaseInputParseAs_sos.xml new file mode 100644 index 0000000..30d79d3 --- /dev/null +++ b/help/en_US/phaseInputParseAs_sos.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from phaseInputParseAs_sos.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="phaseInputParseAs_sos" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>phaseInputParseAs_sos</refname> + <refpurpose>fs=0;</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/phasedelay.xml b/help/en_US/phasedelay.xml new file mode 100644 index 0000000..5790eb1 --- /dev/null +++ b/help/en_US/phasedelay.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from phasedelay.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="phasedelay" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>phasedelay</refname> + <refpurpose>cas variable is 2 if sos form is involved and 1 if direct rational form is given</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/phasez.xml b/help/en_US/phasez.xml new file mode 100644 index 0000000..7127566 --- /dev/null +++ b/help/en_US/phasez.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from phasez.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="phasez" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>phasez</refname> + <refpurpose>cas variable is 2 if sos form is involved and 1 if direct rational form is given</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/pmusic.xml b/help/en_US/pmusic.xml new file mode 100644 index 0000000..d299b3a --- /dev/null +++ b/help/en_US/pmusic.xml @@ -0,0 +1,101 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from pmusic.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="pmusic" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>pmusic</refname> + <refpurpose>Psuedospectrum using MUSIC algorithm</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [S,w] = pmusic(x,p) + [S,w] = pmusic(x,p,w) + [S,w] = pmusic(x,p,nfft) + [S,w] = pmusic(x,p,nfft,fs) + [S,w] = pmusic(x,p,f,fs) + [S,f] = pmusic(...,'corr') + [S,f] = pmusic(x,p,nfft,fs,nwin,noverlap) + [...] = pmusic(...,freqrange) + [...,v,e] = pmusic(...) + + Parameters: + x - int|double - vector|matrix + Input signal. In case of a matrix, each row of x represents a + seperate observation of the signal. If 'corr' flag is specified, + then x is the correlation matrix. + If w is not specified in the input, it is determined by the + algorithm. If x is real valued, then range of w is [0, pi]. + Otherwise, the range of w is [0, 2pi) + p - int|double - scalar|vector + p(1) is the dimension of the signal subspace + p(2), if specified, represents a threshold that is multiplied by + the smallest estimated eigenvalue of the signal's correlation matrix. + w - int|double - vector + w is the vector of normalized frequencies over which the + pseuspectrogram is to be computed. + nfft - int - scalar (Default = 256) + Length of the fft used to compute pseudospectrum. The length of S + (and hence w/f) depends on the type of values in x and nfft. + If x is real, length of s is (nfft/2 + 1) {Range of w = [0, pi]} if + nfft is even and (nfft+1)/2 {Range of w = [0, pi)} otherwise. + If x is complex, length of s is nfft. + fs - int|double - scalar (Default = 1) + Sampling rate. Used to convert the normalized frequencies (w) to + actual values (f) and vice-versa. + nwin - int|double - scalar (int only)|vector (Default = 2*p(1)) + If nwin is scalar, it is the length of the rectangular window. + Otherwise, the vector input is considered as the window coefficients. + Not used if 'corr' flag present. + If x is a vector, windowing not done in nwin in scalar. If x is a + matrix, + noverlap - int - scalar (Default = nwin-1) + number of points by which successive windows overlap. noverlap not + used if x is a matrix + freqrange - string + The range of frequencies over which the pseudospetrogram is + computed. Three possible values - 'onesided', 'twosided', 'centered' + 'corr' flag + Presence indicates that the primary input x is actually a + correlation matrix + + Examples: + TODO: + + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + <member><link linkend="pburg">| peig | periodogram | pmtm | prony | pwelch | rooteig | rootmusic</link></member> + </simplelist> +</refsection> + +<refsection> + <title>Authors</title> + <simplelist type="vert"> + <member>Ayush Baid</member> + <member>References</member> + <member>[1] Petre Stoica and Randolph Moses, Introduction To Spectral</member> + <member>Analysis, Prentice-Hall, 1997, pg. 15</member> + <member>[2] S. J. Orfanidis, Optimum Signal Processing. An Introduction.</member> + <member>2nd Ed., Macmillan, 1988.</member> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/poly2ac.xml b/help/en_US/poly2ac.xml new file mode 100644 index 0000000..f7ac3e0 --- /dev/null +++ b/help/en_US/poly2ac.xml @@ -0,0 +1,80 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from poly2ac.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="poly2ac" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>poly2ac</refname> + <refpurpose>Convert prediction polynomial to autocorrelation sequence.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + R = poly2ac(a,efinal) + + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>a:</term> + <listitem><para> input prediction polynomial with 1st element 1 (if not, poly2ac normalizes it to 1 before proceeding).</para></listitem></varlistentry> + <varlistentry><term>efinal:</term> + <listitem><para> input prediction error</para></listitem></varlistentry> + <varlistentry><term>r:</term> + <listitem><para> output autocorrelation sequence</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This function obtains the underlying autocorrelation sequence that would best fit a linear prediction filter described by the +denominator polynomial and the numerator scaling. The filter is H(z) = efinal/(a(1) + a(2) x z a(3) x z^2 ... a(n) x z^n-1) + </para> + <para> +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +a = [1.0000 0.4288 0.76 0.0404 -0.02]; +efinal = 0.2; // Step prediction error +r = poly2ac(a,efinal) // Autocorrelation sequence + + ]]></programlisting> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + <member><link linkend="ac2poly">ac2poly</link></member> + <member><link linkend="poly2rc">poly2rc</link></member> + <member><link linkend="rc2poly">rc2poly</link></member> + <member><link linkend="rc2ac">rc2ac</link></member> + <member><link linkend="ac2rc">ac2rc</link></member> + <member><link linkend="Author:">Parthe Pandit</link></member> + </simplelist> +</refsection> + +<refsection> + <title>Bibliography</title> + <para>S. Kay, Modern Spectral Estimation, Prentice Hall, N.J., 1987, Chapter 6.</para> +</refsection> +</refentry> diff --git a/help/en_US/poly2lsf.xml b/help/en_US/poly2lsf.xml new file mode 100644 index 0000000..27ca6a2 --- /dev/null +++ b/help/en_US/poly2lsf.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from poly2lsf.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="poly2lsf" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>poly2lsf</refname> + <refpurpose></refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/poly2rc.xml b/help/en_US/poly2rc.xml new file mode 100644 index 0000000..ad61ebc --- /dev/null +++ b/help/en_US/poly2rc.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from poly2rc.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="poly2rc" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>poly2rc</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + kr = poly2rc(a) + [kr, R0] = rc2poly(a, efinal) + </synopsis> +</refsynopsisdiv> +</refentry> diff --git a/help/en_US/polyscale.xml b/help/en_US/polyscale.xml new file mode 100644 index 0000000..f689e36 --- /dev/null +++ b/help/en_US/polyscale.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from polyscale.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="polyscale" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>polyscale</refname> + <refpurpose>errcheck1</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/polystab.xml b/help/en_US/polystab.xml new file mode 100644 index 0000000..7c9010b --- /dev/null +++ b/help/en_US/polystab.xml @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from polystab.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="polystab" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>polystab</refname> + <refpurpose>This function stabilizes the polynomial transfer function.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + b = polystab(a) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>a:</term> + <listitem><para> </para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function stabilizes the polynomial transfer function by replacing all roots outside the unit circle with their reflection inside the unit circle. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +polystab([1,3,5]) +ans = +1. 0.6 0.2 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/polyval.xml b/help/en_US/polyval.xml new file mode 100644 index 0000000..f041227 --- /dev/null +++ b/help/en_US/polyval.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from polyval.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="polyval" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>polyval</refname> + <refpurpose></refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/pow2db.xml b/help/en_US/pow2db.xml new file mode 100644 index 0000000..cc6a49b --- /dev/null +++ b/help/en_US/pow2db.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from pow2db.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="pow2db" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>pow2db</refname> + <refpurpose>rhs = argn(2)</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/primitive.xml b/help/en_US/primitive.xml new file mode 100644 index 0000000..c31f555 --- /dev/null +++ b/help/en_US/primitive.xml @@ -0,0 +1,60 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from primitive.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="primitive" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>primitive</refname> + <refpurpose>This function calculates the primitive of a given function supplied as input.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y = primitive(f, t) + y = primitive(f, t, x) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>f:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>t:</term> + <listitem><para> </para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function calculates the primitive of a given function supplied as input. +The second parameter t is a vector at which the output is evaluated (at the points t). This vector should be ascending and ordered. +The function approximates the primitive (indefinite integral) of the univariate function handle f with constant of integration x. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +primitive([1,4,5],3,9) +ans = +9. + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/prony.xml b/help/en_US/prony.xml new file mode 100644 index 0000000..25734a1 --- /dev/null +++ b/help/en_US/prony.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from prony.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="prony" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>prony</refname> + <refpurpose></refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/pulseperiod.xml b/help/en_US/pulseperiod.xml new file mode 100644 index 0000000..7fc379f --- /dev/null +++ b/help/en_US/pulseperiod.xml @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from pulseperiod.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="pulseperiod" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>pulseperiod</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + p=pulseperiod(x) + p=pulseperiod(x, Fs) + p=pulseperiod(x, t) + p=pulseperiod (x, t, 'Polarity', pol) + p=pulseperiod(x, t, 'MidPercentReferenceLevel', N ) + p=pulseperiod(x, t, 'Tolerance', M) + p=pulseperiod(x, t,'StateLevels', O) + </synopsis> +</refsynopsisdiv> +</refentry> diff --git a/help/en_US/pulsesep.xml b/help/en_US/pulsesep.xml new file mode 100644 index 0000000..4c28fd4 --- /dev/null +++ b/help/en_US/pulsesep.xml @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from pulsesep.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="pulsesep" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>pulsesep</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + s=pulsesep(x) + s=pulsesep(x, Fs) + s=pulsesep(x, t) + s=pulsesep (x, t, 'Polarity', pol) + s=pulsesep(x, t, 'MidPercentReferenceLevel', N ) + s=pulsesep(x, t, 'Tolerance', M) + s=pulsesep(x, t,'StateLevels', [O 1]) + </synopsis> +</refsynopsisdiv> +</refentry> diff --git a/help/en_US/pulsewidth.xml b/help/en_US/pulsewidth.xml new file mode 100644 index 0000000..ee08682 --- /dev/null +++ b/help/en_US/pulsewidth.xml @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from pulsewidth.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="pulsewidth" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>pulsewidth</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + w=pulsewidth(x) + w=pulsewidth(x, Fs) + w=pulsewidth(x, t) + w=pulsewidth (x, t, 'Polarity', pol) + w=pulsewidth(x, t, 'MidPercentReferenceLevel', N ) + w=pulsewidth(x, t, 'Tolerance', M) + w=pulsewidth(x, t,'StateLevels', O) + </synopsis> +</refsynopsisdiv> +</refentry> diff --git a/help/en_US/pulstran.xml b/help/en_US/pulstran.xml new file mode 100644 index 0000000..96ef0c0 --- /dev/null +++ b/help/en_US/pulstran.xml @@ -0,0 +1,67 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from pulstran.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="pulstran" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>pulstran</refname> + <refpurpose>This function generates the signal y = sum(func(t+d,...)) for each d.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y = pulstran (t, d, func, ...) + y = pulstran (t, d, p) + y = pulstran (t, d, p, fs) + y = pulstran (t, d, p, Ffs, meth) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>t:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>d:</term> + <listitem><para> vector or matrix</para></listitem></varlistentry> + <varlistentry><term>p:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>fs:</term> + <listitem><para> default value 1Hz</para></listitem></varlistentry> + <varlistentry><term>func:</term> + <listitem><para> function which accepts vector (of times)</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function generates the signal y = sum(func(t+d,...)) for each d. If d is a matrix of two columns, the first column is the delay d and the second column is the amplitude a, and y = sum(a*func(t+d)) for each d, a. Here, func is a function which accepts a vector of times. +If a pulse shape sampled at frequency Fs (default 1 Hz) is supplied instead of a function name, an interpolated version of the pulse is added at each delay d. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +pulstran([0.5,9,8,7],[4,6],[-7,0.5]) +ans = +0. 0. 0. 0.5 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/rc2ac.xml b/help/en_US/rc2ac.xml new file mode 100644 index 0000000..acfe121 --- /dev/null +++ b/help/en_US/rc2ac.xml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from rc2ac.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="rc2ac" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>rc2ac</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + a = rc2ac(k, R0) + </synopsis> +</refsynopsisdiv> +</refentry> diff --git a/help/en_US/rc2is.xml b/help/en_US/rc2is.xml new file mode 100644 index 0000000..1761ce6 --- /dev/null +++ b/help/en_US/rc2is.xml @@ -0,0 +1,80 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from rc2is.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="rc2is" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>rc2is</refname> + <refpurpose>Convert reflection coefficients to inverse sine parameters</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + isin = rc2is(K) + + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>k:</term> + <listitem><para> input reflection coefficients. Needs to be an array of real numbers between -1 and 1</para></listitem></varlistentry> + <varlistentry><term>isin:</term> + <listitem><para> inverse sine parameters corresponding to the reflection coefficients in input</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This function returns the inverse sine parameters corresponding to the input reflection coefficients K. +output array has isin(i) = 2/pi*asin(k(i)) + </para> + <para> +Example +k = [0.3090 0.9801 0.0031 0.0082 -0.0082]; +isin = rc2is(k) //Gives inverse sine parameters + </para> + <para> +</para> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + <member><link linkend="is2rc">is2rc</link></member> + <member><link linkend="rc2poly">rc2poly</link></member> + <member><link linkend="rc2ac">rc2ac</link></member> + <member><link linkend="rc2lar">rc2lar</link></member> + </simplelist> +</refsection> + +<refsection> + <title>Authors</title> + <simplelist type="vert"> + <member>Parthe Pandit</member> + </simplelist> +</refsection> + +<refsection> + <title>Bibliography</title> + <para>J.R. Deller, J.G. Proakis, J.H.L. Hansen, "Discrete-Time Processing of Speech Signals", Prentice Hall, Section 7.4.5</para> + <para>modified function to handle char i/p and also changed error statements to match those of MATLAB by Debdeep Dey</para> + <para>convert char i/p to their respective ascii values</para> +</refsection> +</refentry> diff --git a/help/en_US/rc2lar.xml b/help/en_US/rc2lar.xml new file mode 100644 index 0000000..3dd7bcf --- /dev/null +++ b/help/en_US/rc2lar.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from rc2lar.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="rc2lar" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>rc2lar</refname> + <refpurpose></refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/rc2poly.xml b/help/en_US/rc2poly.xml new file mode 100644 index 0000000..f8c66a4 --- /dev/null +++ b/help/en_US/rc2poly.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from rc2poly.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="rc2poly" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>rc2poly</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + a = rc2poly(kr) + [a, efinal] = rc2poly(kr,R0) + </synopsis> +</refsynopsisdiv> +</refentry> diff --git a/help/en_US/rcosdesign.xml b/help/en_US/rcosdesign.xml new file mode 100644 index 0000000..e586d0d --- /dev/null +++ b/help/en_US/rcosdesign.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from rcosdesign.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="rcosdesign" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>rcosdesign</refname> + <refpurpose>RCOSDESIGN computes the raised cosine FIR filter</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/rectpuls.xml b/help/en_US/rectpuls.xml new file mode 100644 index 0000000..261d203 --- /dev/null +++ b/help/en_US/rectpuls.xml @@ -0,0 +1,60 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from rectpuls.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="rectpuls" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>rectpuls</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [y]=rectpuls(t) + [y]=rectpuls(t,w) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>t:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function +y = rectpuls(t) returns a continuous, aperiodic, unity-height rectangular pulse depending upon input t, centered about t=0 and having default width of 1. +y = rectpuls(t,w) generates a rectangle of width w. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1. rectpuls([10 100 1000 13 839],27) +ans = 1 0 0 1 0 +2. rectpuls([1000 1000 100 100]) +ans = 0 0 0 0 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/rectwin.xml b/help/en_US/rectwin.xml new file mode 100644 index 0000000..c91a49b --- /dev/null +++ b/help/en_US/rectwin.xml @@ -0,0 +1,59 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from rectwin.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="rectwin" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>rectwin</refname> + <refpurpose>This function returns the filter coefficients of a rectangular window.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y = rectwin (m) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>m:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>y:</term> + <listitem><para> output variable, vector of real numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function returns the filter coefficients of a rectangular window of length m supplied as input, to the output vector y. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +rectwin(3) +ans = +1. +1. +1. + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/resample.xml b/help/en_US/resample.xml new file mode 100644 index 0000000..aab50da --- /dev/null +++ b/help/en_US/resample.xml @@ -0,0 +1,63 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from resample.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="resample" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>resample</refname> + <refpurpose>This function resamples in the input sequence x supplied by a factor of p/q.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y = resample(x, p, q) + y = resample(x, p, q, h) + [y, h] = resample(...) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> scalar, vector or matrix of real or complex numbers</para></listitem></varlistentry> + <varlistentry><term>p:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>q:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>h:</term> + <listitem><para> scalar, vector or matrix of real or complex numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function resamples in the input sequence x supplied by a factor of p/q. If x is a matrix, then every column is resampled.hange the sample rate of x by a factor of p/q. +This is performed using a polyphase algorithm. The impulse response h, given as parameter 4, of the antialiasing filter is either specified or designed with a Kaiser-windowed sinecard. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +resample(1,2,3) +ans = 0.66667 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/residued.xml b/help/en_US/residued.xml new file mode 100644 index 0000000..8bdecc5 --- /dev/null +++ b/help/en_US/residued.xml @@ -0,0 +1,59 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from residued.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="residued" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>residued</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [r,p,f,m]=residued(b,a) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>b:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + <varlistentry><term>a:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +Similar to the "residuez" function. The difference being in the function "residuez", the IIR part (poles p and residues r) is driven in parallel with the FIR part(f) whereas in the function "residued", the IIR part is driven by the output of the FIR part. In signal modeling applications, this structure can be more accurate. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1. [a,b,c,d]=residued([1 i;3 -4],[1 2; 3 4]) +a = [ 0.19405 - 1.31377i; 0.08329 + 0.99163i; -0.27734 + 0.32215i] +b = [ -0.10184 - 1.19167i; -0.10184 + 1.19167i; -2.79632 - 0.00000i] +c = 1 +d = [ 1 ; 1 ; 1] + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/residuez.xml b/help/en_US/residuez.xml new file mode 100644 index 0000000..4655c59 --- /dev/null +++ b/help/en_US/residuez.xml @@ -0,0 +1,59 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from residuez.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="residuez" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>residuez</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [r,p,f,m]=residuez(b,a) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>b:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + <varlistentry><term>a:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function +It compute the PFE of filter H(z)= B(z)/A(z) where inputs b and a are vectors specifying the digital filter. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1. [a,b,c,d]=residuez([i 2i 3i; -4 1 4i],[1 2 3]) +a = [0.6262 - 1.4412i; -0.4039 + 1.4658i] +b = [-1.0000 - 1.4142i; -1.0000 + 1.4142i] +c = [-0.22222 - 0.97531i 0.33333 + 0.51852i 0.00000 - 0.11111i; 0.00000 - 1.33333i] +d = 1 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/risetime.xml b/help/en_US/risetime.xml new file mode 100644 index 0000000..e973c45 --- /dev/null +++ b/help/en_US/risetime.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from risetime.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="risetime" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>risetime</refname> + <refpurpose></refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/rlevinson.xml b/help/en_US/rlevinson.xml new file mode 100644 index 0000000..799fcb1 --- /dev/null +++ b/help/en_US/rlevinson.xml @@ -0,0 +1,33 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from rlevinson.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="rlevinson" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>rlevinson</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + a = rlevinson(a, efinal) + [a, U] = rlevinson(a, efinal) + [a, U, kr] = rlevinson(a, efinal) + [a, U, kr, e] = rlevinson(a, efinal) + </synopsis> +</refsynopsisdiv> +</refentry> diff --git a/help/en_US/rms.xml b/help/en_US/rms.xml new file mode 100644 index 0000000..4bac697 --- /dev/null +++ b/help/en_US/rms.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from rms.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="rms" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>rms</refname> + <refpurpose>convert i/p values to their ascii values if they are of type char</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/rooteig.xml b/help/en_US/rooteig.xml new file mode 100644 index 0000000..9b2abe2 --- /dev/null +++ b/help/en_US/rooteig.xml @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from rooteig.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="rooteig" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>rooteig</refname> + <refpurpose>Frequencies and power of sinusoids using eigenvector algorithm</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + w = rooteig(x,p) + [w,pow] = rooteig(x,p) + [f,pow] = rooteig(...,fs) + [w,pow] = rooteig(...,'corr') + + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>Examples:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>1) 3 complex exponentials:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>n=0:</term> + <listitem><para>99;</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + <member><link linkend="corrmtx">| peig | pmusic | rootmusic</link></member> + <member><link linkend="References">References</link></member> + <member><link linkend="1)">Stoica, P. and R. Moses, INTRODUCTION TO SPECTRAL ANALYSIS,</link></member> + <member><link linkend="Prentice-Hall">Prentice-Hall</link></member> + <member><link linkend="Output">arguments</link></member> + <member><link linkend="w">- double - vector</link></member> + <member><link linkend="Estimated">frequencies of the complex sinusoids</link></member> + <member><link linkend="pow">- double - vector</link></member> + <member><link linkend="estimated">absolute value squared amplitudes of the sinusoids at</link></member> + <member><link linkend="the">frequencies w</link></member> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/rootmusic.xml b/help/en_US/rootmusic.xml new file mode 100644 index 0000000..82178e1 --- /dev/null +++ b/help/en_US/rootmusic.xml @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from rootmusic.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="rootmusic" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>rootmusic</refname> + <refpurpose>Frequencies and power of sinusoids using the root MUSIC algorithm</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + w = rootmusic(x,p) + [w,pow] = rootmusic(x,p) + [f,pow] = rootmusc(...,fs) + [w,pow] = rootmusic(...,'corr') + + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>Examples:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>1) 3 complex exponentials:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>n=0:</term> + <listitem><para>99;</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + <member><link linkend="corrmtx">| peig | pmusic | rooteig</link></member> + <member><link linkend="References">References</link></member> + <member><link linkend="1)">Monson H. Hayes, Statistical Digital Signal Processing And Modeling,</link></member> + <member><link linkend="Wiley">& Sons, Inc, [Section 8.6.3]</link></member> + <member><link linkend="Output">arguments</link></member> + <member><link linkend="w">- double - vector</link></member> + <member><link linkend="Estimated">frequencies of the complex sinusoids</link></member> + <member><link linkend="pow">- double - vector</link></member> + <member><link linkend="estimated">absolute value squared amplitudes of the sinusoids at</link></member> + <member><link linkend="the">frequencies w</link></member> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/rssq.xml b/help/en_US/rssq.xml new file mode 100644 index 0000000..251eb88 --- /dev/null +++ b/help/en_US/rssq.xml @@ -0,0 +1,121 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from rssq.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="rssq" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>rssq</refname> + <refpurpose>This function calculates the square root of the sum of values of input vector IN.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + OUT=rssq(IN) + OUT=rssq(IN,orientation) + + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>in:</term> + <listitem><para>Vector or Matrix of real or complex elements.</para></listitem></varlistentry> + <varlistentry><term>orientation:</term> + <listitem><para> A string with possible values "r", "c" or "m" or numericals such as '1' or '2',giving the dimension along which the rssq value is to be calculated.</para></listitem></varlistentry> + <varlistentry><term>out:</term> + <listitem><para>A scalar with real value when input is a vector.When input is a matrix, out is the root sum squared value along the orientation specified or the default one when not specified.</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +For vector as input, the output is real valued scalar containing the rssq value. The rssq value can be calculated by taking the square root of the squared sum of the elements. +If the input IN is a matrix, the output of function is rssq value of each column stored in a row vector OUT. + </para> + <para> +When the elements of IN are COMPLEX, the absolute value of the element is used to calculate the output. +When the orientation is not specified for N dimensional array, it is taken as the index of the first dimension of IN that is greater than 1 and calculation is done along that orientation. + </para> + <para> +When the orientation is specified the output is calculated along that dimension. +The orientation can be specified as 1 for rssq value of columns of matrix IN or as r. +For rssq value of rows of matrix orientation should be 2 or c. + </para> + <para> +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +To calculate rssq of a vector: +IN=[2 4 6] +OUT=rssq(IN) +The output is 7.4833148 + + ]]></programlisting> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +To calculate rssq of rows of matrix: +IN=[1 3 5;2 4 6;7 8 9] +OUT=rssq(IN,2) +The output should be OUT= +5.9160798 +7.4833148 +13.928388 + + ]]></programlisting> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +To calculate rssq of a columns of complex matrix: + +IN=[5+%i*3 2+%i*4; 3+%i*6 1+%i*2] +OUT=rssq(IN,1) +The output should be OUT= 8.8881944 5. + ]]></programlisting> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + <member><link linkend="abs">abs</link></member> + <member><link linkend="mean">mean</link></member> + <member><link linkend="sqrt">sqrt</link></member> + <member><link linkend="isempty">isempty</link></member> + </simplelist> +</refsection> + +<refsection> + <title>Authors</title> + <simplelist type="vert"> + <member>Indira Askaukar</member> + </simplelist> +</refsection> + +<refsection> + <title>Bibliography</title> + <para>Matlab help document.</para> +</refsection> +</refentry> diff --git a/help/en_US/sampled2continuous.xml b/help/en_US/sampled2continuous.xml new file mode 100644 index 0000000..a08d04a --- /dev/null +++ b/help/en_US/sampled2continuous.xml @@ -0,0 +1,60 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from sampled2continuous.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="sampled2continuous" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>sampled2continuous</refname> + <refpurpose>This function calculates the output reconstructed from the samples n supplied as input, at a rate of 1/s samples per unit time.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + x = sampled2continuous (n, s, t) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>n:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>s:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>t:</term> + <listitem><para> </para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function calculates the output reconstructed from the samples n supplied as input, at a rate of 1/s samples per unit time. +The third parameter t is all the instants where output x is needed from intput n and this time is relative to x(0). +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +sampled2continuous([1,2,3],5,6) +ans = +2.4166806 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/sawtooth.xml b/help/en_US/sawtooth.xml new file mode 100644 index 0000000..aee4088 --- /dev/null +++ b/help/en_US/sawtooth.xml @@ -0,0 +1,59 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from sawtooth.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="sawtooth" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>sawtooth</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [y]=sawtooth(t) + [y]=sawtooth(t,width) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>t:</term> + <listitem><para> Real valued vector or matrix</para></listitem></varlistentry> + <varlistentry><term>width:</term> + <listitem><para> Real number between 0 and 1</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function +This function returns a sawtooth wave with period 2*pi with +1/-1 as the maximum and minimum values for elements of t. If width is specified, it determines where the maximum is in the interval [0,2*pi]. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1. sawtooth([1 2 3 4 5],0.5) +ans = [-0.36338 0.27324 0.90986 0.45352 -0.18310] +2. sawtooth([1 2; 4 5]) +ans = [-0.68169 -0.36338; 0.27324 0.59155] + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/schtrig.xml b/help/en_US/schtrig.xml new file mode 100644 index 0000000..9e7b08b --- /dev/null +++ b/help/en_US/schtrig.xml @@ -0,0 +1,61 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from schtrig.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="schtrig" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>schtrig</refname> + <refpurpose>This function implements a multisignal Schmitt triggers with lev levels supplied as input.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + v = schtrig (x, lev) + v = schtrig (x, lev, rs) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> vector or matrix of real numbers</para></listitem></varlistentry> + <varlistentry><term>lev:</term> + <listitem><para> real number</para></listitem></varlistentry> + <varlistentry><term>rs:</term> + <listitem><para> default value 1</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function implements a multisignal Schmitt triggers with lev levels supplied as input. +The argument 1 is a matrix (or a vector) and this trigger works along its first dimension. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +schtrig([0.2,-3,5],-4) +ans = +0. 0. 1. + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/schurrc.xml b/help/en_US/schurrc.xml new file mode 100644 index 0000000..b269840 --- /dev/null +++ b/help/en_US/schurrc.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from schurrc.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="schurrc" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>schurrc</refname> + <refpurpose>narginchk(1,1,argn(2));</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS b/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS Binary files differnew file mode 100644 index 0000000..b34c648 --- /dev/null +++ b/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS diff --git a/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS.TAB b/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS.TAB Binary files differnew file mode 100644 index 0000000..dbc9308 --- /dev/null +++ b/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS.TAB diff --git a/help/en_US/scilab_en_US_help/JavaHelpSearch/OFFSETS b/help/en_US/scilab_en_US_help/JavaHelpSearch/OFFSETS Binary files differnew file mode 100644 index 0000000..7ada103 --- /dev/null +++ b/help/en_US/scilab_en_US_help/JavaHelpSearch/OFFSETS diff --git a/help/en_US/scilab_en_US_help/JavaHelpSearch/POSITIONS b/help/en_US/scilab_en_US_help/JavaHelpSearch/POSITIONS Binary files differnew file mode 100644 index 0000000..a8af3fe --- /dev/null +++ b/help/en_US/scilab_en_US_help/JavaHelpSearch/POSITIONS diff --git a/help/en_US/scilab_en_US_help/JavaHelpSearch/SCHEMA b/help/en_US/scilab_en_US_help/JavaHelpSearch/SCHEMA new file mode 100644 index 0000000..677736a --- /dev/null +++ b/help/en_US/scilab_en_US_help/JavaHelpSearch/SCHEMA @@ -0,0 +1,2 @@ +JavaSearch 1.0 +TMAP bs=2048 rt=1 fl=-1 id1=1967 id2=1 diff --git a/help/en_US/scilab_en_US_help/JavaHelpSearch/TMAP b/help/en_US/scilab_en_US_help/JavaHelpSearch/TMAP Binary files differnew file mode 100644 index 0000000..721288e --- /dev/null +++ b/help/en_US/scilab_en_US_help/JavaHelpSearch/TMAP diff --git a/help/en_US/scilab_en_US_help/ScilabCaution.png b/help/en_US/scilab_en_US_help/ScilabCaution.png Binary files differnew file mode 100644 index 0000000..8edb56e --- /dev/null +++ b/help/en_US/scilab_en_US_help/ScilabCaution.png diff --git a/help/en_US/scilab_en_US_help/ScilabEdit.png b/help/en_US/scilab_en_US_help/ScilabEdit.png Binary files differnew file mode 100644 index 0000000..e139988 --- /dev/null +++ b/help/en_US/scilab_en_US_help/ScilabEdit.png diff --git a/help/en_US/scilab_en_US_help/ScilabExecute.png b/help/en_US/scilab_en_US_help/ScilabExecute.png Binary files differnew file mode 100644 index 0000000..4acd4b9 --- /dev/null +++ b/help/en_US/scilab_en_US_help/ScilabExecute.png diff --git a/help/en_US/scilab_en_US_help/ScilabImportant.png b/help/en_US/scilab_en_US_help/ScilabImportant.png Binary files differnew file mode 100644 index 0000000..3b51020 --- /dev/null +++ b/help/en_US/scilab_en_US_help/ScilabImportant.png diff --git a/help/en_US/scilab_en_US_help/ScilabNote.png b/help/en_US/scilab_en_US_help/ScilabNote.png Binary files differnew file mode 100644 index 0000000..ed46c3e --- /dev/null +++ b/help/en_US/scilab_en_US_help/ScilabNote.png diff --git a/help/en_US/scilab_en_US_help/ScilabTip.png b/help/en_US/scilab_en_US_help/ScilabTip.png Binary files differnew file mode 100644 index 0000000..ed46c3e --- /dev/null +++ b/help/en_US/scilab_en_US_help/ScilabTip.png diff --git a/help/en_US/scilab_en_US_help/ScilabWarning.png b/help/en_US/scilab_en_US_help/ScilabWarning.png Binary files differnew file mode 100644 index 0000000..8edb56e --- /dev/null +++ b/help/en_US/scilab_en_US_help/ScilabWarning.png diff --git a/help/en_US/scilab_en_US_help/ac2poly.html b/help/en_US/scilab_en_US_help/ac2poly.html new file mode 100644 index 0000000..ead05e8 --- /dev/null +++ b/help/en_US/scilab_en_US_help/ac2poly.html @@ -0,0 +1,81 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>ac2poly</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="section_be19baaac84b122b8ad501d34462f5bf.html"><< FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="ac2rc.html">ac2rc >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > ac2poly</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">ac2poly</h1> + <p class="refpurpose">Convert autocorrelation sequence to polynomial of prediction filter</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">a</span><span class="default"> = </span><span class="functionid">ac2poly</span><span class="default">(</span><span class="default">r</span><span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">,</span><span class="default">e</span><span class="default">] = </span><span class="functionid">ac2poly</span><span class="default">(</span><span class="default">r</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">r:</span> + <dd><p class="para">Autocorrelation sequence to be represented with an FIR linear prediction filter</p></dd></dt> + <dt><span class="term">a:</span> + <dd><p class="para">Output polynomial representing the linear prediction filter e/(a(1) + a(2)z + a(3)z^2 .. a(N)z^N-1)</p></dd></dt> + <dt><span class="term">e:</span> + <dd><p class="para">Output scaling for the lienar prediction filter</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">Function ac2poly() finds the best fit polynomial for FIR linear prediction filter a, corresponding to the autocorrelation sequence r. a is the same length as r, and is normalized with the first element. So a(1) = 1. +Author: +Parthe Pandit</p> + <p class="para"></p></div> + +<div class="refsection"><h3 class="title">Bibliography</h3> + <p class="para">Kay, Steven M. Modern Spectral Estimation. Englewood Cliffs, NJ: Prentice-Hall, 1988.</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="section_be19baaac84b122b8ad501d34462f5bf.html"><< FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="ac2rc.html">ac2rc >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/ac2rc.html b/help/en_US/scilab_en_US_help/ac2rc.html new file mode 100644 index 0000000..01f9570 --- /dev/null +++ b/help/en_US/scilab_en_US_help/ac2rc.html @@ -0,0 +1,64 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>ac2rc</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="ac2poly.html"><< ac2poly</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="arParEst.html">arParEst >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > ac2rc</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">ac2rc</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">k</span><span class="default"> = </span><span class="functionid">ac2rc</span><span class="default">(</span><span class="default">R</span><span class="default">)</span> +<span class="default">[</span><span class="default">k</span><span class="default">,</span><span class="default">R0</span><span class="default">] = </span><span class="functionid">ac2rc</span><span class="default">(</span><span class="default">R</span><span class="default">)</span></pre></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="ac2poly.html"><< ac2poly</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="arParEst.html">arParEst >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/arParEst.html b/help/en_US/scilab_en_US_help/arParEst.html new file mode 100644 index 0000000..9289365 --- /dev/null +++ b/help/en_US/scilab_en_US_help/arParEst.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>arParEst</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="ac2rc.html"><< ac2rc</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="arburg.html">arburg >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > arParEst</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">arParEst</h1> + <p class="refpurpose"></p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="ac2rc.html"><< ac2rc</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="arburg.html">arburg >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/arburg.html b/help/en_US/scilab_en_US_help/arburg.html new file mode 100644 index 0000000..17f4d46 --- /dev/null +++ b/help/en_US/scilab_en_US_help/arburg.html @@ -0,0 +1,90 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>arburg</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="arParEst.html"><< arParEst</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="arcov.html">arcov >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > arburg</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">arburg</h1> + <p class="refpurpose">This function calculates coefficients of an autoregressive (AR) model of complex data.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">a</span><span class="default"> = </span><span class="functionid">arburg</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">poles</span><span class="default">)</span> +<span class="default">a</span><span class="default"> = </span><span class="functionid">arburg</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">poles</span><span class="default">, </span><span class="default">criterion</span><span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">v</span><span class="default">] = </span><span class="functionid">arburg</span><span class="default">(...)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">v</span><span class="default">, </span><span class="default">k</span><span class="default">] = </span><span class="functionid">arburg</span><span class="default">(...)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">vector of real or complex numbers, of length > 2</p></dd></dt> + <dt><span class="term">poles:</span> + <dd><p class="para">positive integer value < length(x) - 2</p></dd></dt> + <dt><span class="term">criterion:</span> + <dd><p class="para">string value, takes in "AKICc", "KIC", "AICc", "AIC" and "FPE", default it not using a model-selection criterion</p></dd></dt> + <dt><span class="term">a, v, k:</span> + <dd><p class="para">Output variables</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function calculates coefficients of an autoregressive (AR) model of complex data x using the whitening lattice-filter method of Burg. +The first argument is the data sampled. The second argument is the number of poles in the model (or limit in case a criterion is supplied). +The third parameter takes in the criterion to limit the number of poles. The acceptable values are "AIC", "AKICc", "KIC", "AICc" which are based on information theory. +Output variable a is a list of P+1 autoregression coefficients. +Output variable v is the mean square of residual noise from the whitening operation of the Burg lattice filter. +Output variable k corresponds to the reflection coefficients defining the lattice-filter embodiment of the model.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">arburg</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">5</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">1.00000</span> <span class="scilaboperator">-</span><span class="scilabnumber">1.86391</span> <span class="scilabnumber">0.95710</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="arParEst.html"><< arParEst</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="arcov.html">arcov >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/arcov.html b/help/en_US/scilab_en_US_help/arcov.html new file mode 100644 index 0000000..22cce4e --- /dev/null +++ b/help/en_US/scilab_en_US_help/arcov.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>arcov</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="arburg.html"><< arburg</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="armcov.html">armcov >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > arcov</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">arcov</h1> + <p class="refpurpose"></p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="arburg.html"><< arburg</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="armcov.html">armcov >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/armcov.html b/help/en_US/scilab_en_US_help/armcov.html new file mode 100644 index 0000000..cc094ca --- /dev/null +++ b/help/en_US/scilab_en_US_help/armcov.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>armcov</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="arcov.html"><< arcov</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="aryule.html">aryule >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > armcov</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">armcov</h1> + <p class="refpurpose"></p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="arcov.html"><< arcov</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="aryule.html">aryule >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/aryule.html b/help/en_US/scilab_en_US_help/aryule.html new file mode 100644 index 0000000..1e52983 --- /dev/null +++ b/help/en_US/scilab_en_US_help/aryule.html @@ -0,0 +1,84 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>aryule</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="armcov.html"><< armcov</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="barthannwin.html">barthannwin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > aryule</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">aryule</h1> + <p class="refpurpose">This function fits an AR (p)-model with Yule-Walker estimates.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">a</span><span class="default"> = </span><span class="functionid">aryule</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">p</span><span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">v</span><span class="default">] = </span><span class="functionid">aryule</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">p</span><span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">v</span><span class="default">, </span><span class="default">k</span><span class="default">] = </span><span class="functionid">aryule</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">p</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">vector of real or complex numbers, length > 2</p></dd></dt> + <dt><span class="term">p:</span> + <dd><p class="para">positive integer value < length(x) - 1</p></dd></dt> + <dt><span class="term">a, v, k:</span> + <dd><p class="para">Output variables</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function fits an AR (p)-model with Yule-Walker estimates. +The first argument is the data vector which is to be estimated. +Output variable a gives the AR coefficients, v gives the variance of the white noise and k gives the reflection coefficients to be used in the lattice filter.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">aryule</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">5</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">1.</span> <span class="scilaboperator">-</span> <span class="scilabnumber">0.8140351</span> <span class="scilabnumber">0.1192982</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="armcov.html"><< armcov</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="barthannwin.html">barthannwin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/barthannwin.html b/help/en_US/scilab_en_US_help/barthannwin.html new file mode 100644 index 0000000..359499b --- /dev/null +++ b/help/en_US/scilab_en_US_help/barthannwin.html @@ -0,0 +1,81 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>barthannwin</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="aryule.html"><< aryule</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="bartlett.html">bartlett >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > barthannwin</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">barthannwin</h1> + <p class="refpurpose">This function returns the filter coefficients of a modified Bartlett-Hann window.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default"> = </span><span class="functionid">barthannwin</span><span class="default">(</span><span class="default">m</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">m:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">y:</span> + <dd><p class="para">output variable, vector of real numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function returns the filter coefficients of a modified Bartlett Hann window of length m supplied as input, to the output vector y.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">barthannwin</span><span class="scilabopenclose">(</span><span class="scilabnumber">4</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.</span> +<span class="scilabnumber">0.73</span> +<span class="scilabnumber">0.73</span> +<span class="scilabnumber">0.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="aryule.html"><< aryule</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="bartlett.html">bartlett >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/bartlett.html b/help/en_US/scilab_en_US_help/bartlett.html new file mode 100644 index 0000000..25ca48a --- /dev/null +++ b/help/en_US/scilab_en_US_help/bartlett.html @@ -0,0 +1,80 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>bartlett</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="barthannwin.html"><< barthannwin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="besself.html">besself >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > bartlett</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">bartlett</h1> + <p class="refpurpose">Generates a Bartlett window</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">w</span><span class="default">=</span><span class="functionid">bartlett</span><span class="default">(</span><span class="default">L</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">w=bartlett(L) returns an L-point Bartlett window in a column vector w +Example +w=bartlett(4) +w =</p> + <p class="para">0. +0.6666667 +0.6666667 +0. +Author +Ankur Mallick +References +[1] Oppenheim, Alan V., Ronald W. Schafer, and John R. Buck. Discrete-Time Signal Processing. Upper Saddle River, NJ: Prentice Hall, 1999.</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="barthannwin.html"><< barthannwin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="besself.html">besself >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/besself.html b/help/en_US/scilab_en_US_help/besself.html new file mode 100644 index 0000000..0dc427b --- /dev/null +++ b/help/en_US/scilab_en_US_help/besself.html @@ -0,0 +1,87 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>besself</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="bartlett.html"><< bartlett</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="bitrevorder.html">bitrevorder >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > besself</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">besself</h1> + <p class="refpurpose">This function generates a Bessel filter.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">] = </span><span class="functionid">besself</span><span class="default">(</span><span class="default">n</span><span class="default">, </span><span class="default">w</span><span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">] = </span><span class="functionid">besself</span><span class="default"> (</span><span class="default">n</span><span class="default">, </span><span class="default">w</span><span class="default">, </span>"<span class="default">high</span>"<span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">, </span><span class="default">c</span><span class="default">] = </span><span class="functionid">besself</span><span class="default"> (…)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">, </span><span class="default">c</span><span class="default">, </span><span class="default">d</span><span class="default">] = </span><span class="functionid">besself</span><span class="default"> (…)</span> +<span class="default">[…] = </span><span class="functionid">besself</span><span class="default"> (…, </span>"<span class="default">z</span>"<span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">n:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">positive real value</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function generates a Bessel filter. The default is a Laplace space (s) filter. +The third parameter takes in high or low, the default value being low. The cutoff is pi*Wc radians. +[z,p,g] = besself(...) returns filter as zero-pole-gain rather than coefficients of the numerator and denominator polynomials. +[...] = besself(...,’z’) returns a discrete space (Z) filter. w must be less than 1. +[a,b,c,d] = besself(...) returns state-space matrices.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">besself</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabstring">"</span><span class="scilabstring">low</span><span class="scilabstring">"</span><span class="scilabopenclose">)</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabnumber">9.0000</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">1.0000</span> <span class="scilabnumber">5.1962</span> <span class="scilabnumber">9.0000</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="bartlett.html"><< bartlett</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="bitrevorder.html">bitrevorder >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/bitrevorder.html b/help/en_US/scilab_en_US_help/bitrevorder.html new file mode 100644 index 0000000..f39346e --- /dev/null +++ b/help/en_US/scilab_en_US_help/bitrevorder.html @@ -0,0 +1,78 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>bitrevorder</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="besself.html"><< besself</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="blackman.html">blackman >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > bitrevorder</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">bitrevorder</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">y</span><span class="default">,</span><span class="default">i</span><span class="default">]=</span><span class="functionid">bitrevorder</span><span class="default">(</span><span class="default">x</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">Vector of real or complex values</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function returns the input data after reversing the bits of the indices and reordering the elements of the input array.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1.</span> <span class="scilabopenclose">[</span><span class="scilabid">y</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">bitrevorder</span> <span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabid">i</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">6</span><span class="scilabid">i</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">y</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0</span> <span class="scilaboperator">+</span> <span class="scilabnumber">1</span><span class="scilabid">i</span> <span class="scilabnumber">3</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0</span><span class="scilabid">i</span> <span class="scilabnumber">1</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0</span><span class="scilabid">i</span> <span class="scilabnumber">0</span> <span class="scilaboperator">+</span> <span class="scilabnumber">6</span><span class="scilabid">i</span><span class="scilabopenclose">]</span> +<span class="scilabnumber">2.</span> <span class="scilabopenclose">[</span><span class="scilabid">y</span><span class="scilabdefault">,</span><span class="scilabid">i</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">bitrevorder</span> <span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabstring">'</span><span class="scilabstring">a</span><span class="scilabstring">'</span><span class="scilabdefault">,</span><span class="scilabstring">'</span><span class="scilabstring">b</span><span class="scilabstring">'</span><span class="scilabdefault">,</span><span class="scilabstring">'</span><span class="scilabstring">c</span><span class="scilabstring">'</span><span class="scilabdefault">,</span><span class="scilabstring">'</span><span class="scilabstring">d</span><span class="scilabstring">'</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">y</span> <span class="scilaboperator">=</span> <span class="scilabid">acbd</span> +<span class="scilabid">i</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">3</span> <span class="scilabnumber">2</span> <span class="scilabnumber">4</span><span class="scilabopenclose">]</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="besself.html"><< besself</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="blackman.html">blackman >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/blackman.html b/help/en_US/scilab_en_US_help/blackman.html new file mode 100644 index 0000000..69bb945 --- /dev/null +++ b/help/en_US/scilab_en_US_help/blackman.html @@ -0,0 +1,84 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>blackman</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="bitrevorder.html"><< bitrevorder</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="blackmanharris.html">blackmanharris >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > blackman</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">blackman</h1> + <p class="refpurpose">Generates a Blackman window</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">w</span><span class="default">=</span><span class="functionid">blackman</span><span class="default">(</span><span class="default">N</span><span class="default">)</span> +<span class="default">w</span><span class="default">=</span><span class="functionid">blackman</span><span class="default">(</span><span class="default">N</span><span class="default">,</span><span class="default">sflag</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">w=blackman(N) returns an N-point symmetric Blackman window in a column vector w +w=blackman(N,sflag) +Returns an N point Blackman window using the type of sampling specified by sflag +sflag can be either 'symmetric' (default) or 'periodic' (used in spectral analysis) +Example +w=blackman(4) +w =</p> + <p class="para">- 1.388D-17 +0.63 +0.63 +- 1.388D-17 +Author +Ankur Mallick +References +[1] Oppenheim, Alan V., Ronald W. Schafer, and John R. Buck. Discrete-Time Signal Processing. Upper Saddle River, NJ: Prentice Hall, 1999.</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="bitrevorder.html"><< bitrevorder</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="blackmanharris.html">blackmanharris >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/blackmanharris.html b/help/en_US/scilab_en_US_help/blackmanharris.html new file mode 100644 index 0000000..11c46ea --- /dev/null +++ b/help/en_US/scilab_en_US_help/blackmanharris.html @@ -0,0 +1,86 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>blackmanharris</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="blackman.html"><< blackman</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="blackmannuttall.html">blackmannuttall >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > blackmanharris</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">blackmanharris</h1> + <p class="refpurpose">This function returns the filter coefficients of a Blackman-Harris window.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">w</span><span class="default"> = </span><span class="functionid">blackmanharris</span><span class="default"> (</span><span class="default">m</span><span class="default">)</span> +<span class="default">w</span><span class="default"> = </span><span class="functionid">blackmanharris</span><span class="default"> (</span><span class="default">m</span><span class="default">, </span><span class="default">opt</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">m:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">opt:</span> + <dd><p class="para">string value, takes "periodic" or "symmetric"</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">output variable, vector of real numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function returns the filter coefficients of a Blackman-Harris window of length m supplied as input, to the output vector w. +The second parameter can take the values "periodic" or "symmetric", depending on which the corresponding form of window is returned. The default is symmetric.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">blackmanharris</span><span class="scilabopenclose">(</span><span class="scilabnumber">5</span><span class="scilabdefault">,</span><span class="scilabstring">"</span><span class="scilabstring">periodic</span><span class="scilabstring">"</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.00006</span> +<span class="scilabnumber">0.1030115</span> +<span class="scilabnumber">0.7938335</span> +<span class="scilabnumber">0.7938335</span> +<span class="scilabnumber">0.1030115</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="blackman.html"><< blackman</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="blackmannuttall.html">blackmannuttall >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/blackmannuttall.html b/help/en_US/scilab_en_US_help/blackmannuttall.html new file mode 100644 index 0000000..ba6ef4f --- /dev/null +++ b/help/en_US/scilab_en_US_help/blackmannuttall.html @@ -0,0 +1,81 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>blackmannuttall</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="blackmanharris.html"><< blackmanharris</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="bohmanwin.html">bohmanwin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > blackmannuttall</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">blackmannuttall</h1> + <p class="refpurpose">This function returns the filter coefficients of a Blackman-Nuttall window.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">w</span><span class="default"> = </span><span class="functionid">blackmannuttall</span><span class="default"> (</span><span class="default">m</span><span class="default">)</span> +<span class="default">w</span><span class="default"> = </span><span class="functionid">blackmannuttall</span><span class="default"> (</span><span class="default">m</span><span class="default">, </span><span class="default">opt</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">m:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">opt:</span> + <dd><p class="para">string value, takes "periodic" or "symmetric"</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">output variable, vector of real numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">blackmannuttall</span><span class="scilabopenclose">(</span><span class="scilabnumber">5</span><span class="scilabdefault">,</span><span class="scilabstring">"</span><span class="scilabstring">symmetric</span><span class="scilabstring">"</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.0003628</span> +<span class="scilabnumber">0.2269824</span> +<span class="scilabnumber">1.</span> +<span class="scilabnumber">0.2269824</span> +<span class="scilabnumber">0.0003628</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="blackmanharris.html"><< blackmanharris</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="bohmanwin.html">bohmanwin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/bohmanwin.html b/help/en_US/scilab_en_US_help/bohmanwin.html new file mode 100644 index 0000000..23201a4 --- /dev/null +++ b/help/en_US/scilab_en_US_help/bohmanwin.html @@ -0,0 +1,81 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>bohmanwin</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="blackmannuttall.html"><< blackmannuttall</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="boxcar.html">boxcar >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > bohmanwin</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">bohmanwin</h1> + <p class="refpurpose">This function returns the filter coefficients of a Bohman window.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default"> = </span><span class="functionid">bohmanwin</span><span class="default"> (</span><span class="default">m</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">m:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">y:</span> + <dd><p class="para">output variable, vector of real numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function returns the filter coefficients of a Bohman window of length m supplied as input, to the output vector y.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">bohmanwin</span><span class="scilabopenclose">(</span><span class="scilabnumber">4</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.</span> +<span class="scilabnumber">0.6089978</span> +<span class="scilabnumber">0.6089978</span> +<span class="scilabnumber">0.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="blackmannuttall.html"><< blackmannuttall</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="boxcar.html">boxcar >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/boxcar.html b/help/en_US/scilab_en_US_help/boxcar.html new file mode 100644 index 0000000..775d585 --- /dev/null +++ b/help/en_US/scilab_en_US_help/boxcar.html @@ -0,0 +1,83 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>boxcar</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="bohmanwin.html"><< bohmanwin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="buffer.html">buffer >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > boxcar</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">boxcar</h1> + <p class="refpurpose">This function returns the filter coefficients of a rectangular window.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default"> = </span><span class="functionid">boxcar</span><span class="default"> (</span><span class="default">m</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">m:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">y:</span> + <dd><p class="para">output variable, vector of real numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function returns the filter coefficients of a rectangular window of length m supplied as input, to the output vector y.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">boxcar</span><span class="scilabopenclose">(</span><span class="scilabnumber">6</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">1.</span> +<span class="scilabnumber">1.</span> +<span class="scilabnumber">1.</span> +<span class="scilabnumber">1.</span> +<span class="scilabnumber">1.</span> +<span class="scilabnumber">1.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="bohmanwin.html"><< bohmanwin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="buffer.html">buffer >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/buffer.html b/help/en_US/scilab_en_US_help/buffer.html new file mode 100644 index 0000000..b3668b7 --- /dev/null +++ b/help/en_US/scilab_en_US_help/buffer.html @@ -0,0 +1,87 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>buffer</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="boxcar.html"><< boxcar</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="butter.html">butter >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > buffer</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">buffer</h1> + <p class="refpurpose">This function buffers the given data into a matrix of signal frames</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">y</span><span class="default">] = </span><span class="functionid">buffer</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">n</span><span class="default">)</span> +<span class="default">[</span><span class="default">y</span><span class="default">] = </span><span class="functionid">buffer</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">n</span><span class="default">, </span><span class="default">p</span><span class="default">)</span> +<span class="default">[</span><span class="default">y</span><span class="default">] = </span><span class="functionid">buffer</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">n</span><span class="default">, </span><span class="default">p</span><span class="default">)</span> +<span class="default">[</span><span class="default">y</span><span class="default">, </span><span class="default">z</span><span class="default">, </span><span class="default">opt</span><span class="default">] = </span><span class="functionid">buffer</span><span class="default"> (...)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">Data to be buffered</p></dd></dt> + <dt><span class="term">n:</span> + <dd><p class="para">Positive integer equal to number of rows in the produced data buffer</p></dd></dt> + <dt><span class="term">p:</span> + <dd><p class="para">Integer less than n, default value 0</p></dd></dt> + <dt><span class="term">opt:</span> + <dd><p class="para">In case of overlap, it can be a vector of length p or the string "nodelay", In case of underlap, it is an integer between 0 and p</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This function buffers the given data into a matrix of signal frames</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">buffer</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0</span> <span class="scilabnumber">0</span> +<span class="scilabnumber">0</span> <span class="scilabnumber">1</span> +<span class="scilabnumber">1</span> <span class="scilabnumber">0</span> +<span class="scilabid">This</span> <span class="scilabfkeyword">function</span> <span class="scilabid">being</span> <span class="scilabid">called</span> <span class="scilabid">from</span> <span class="scilabid">Octave</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="boxcar.html"><< boxcar</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="butter.html">butter >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/butter.html b/help/en_US/scilab_en_US_help/butter.html new file mode 100644 index 0000000..45a9f9e --- /dev/null +++ b/help/en_US/scilab_en_US_help/butter.html @@ -0,0 +1,92 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>butter</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="buffer.html"><< buffer</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="buttord.html">buttord >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > butter</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">butter</h1> + <p class="refpurpose">This function generates a Butterworth filter.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">] = </span><span class="functionid">butter</span><span class="default"> (</span><span class="default">n</span><span class="default">, </span><span class="default">w</span><span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">] = </span><span class="functionid">butter</span><span class="default"> (</span><span class="default">n</span><span class="default">, </span><span class="default">w</span><span class="default">, </span>"<span class="default">high</span>"<span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">] = </span><span class="functionid">butter</span><span class="default"> (</span><span class="default">n</span><span class="default">, [</span><span class="default">wl</span><span class="default">, </span><span class="default">wh</span><span class="default">])</span> +<span class="default">[</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">] = </span><span class="functionid">butter</span><span class="default"> (</span><span class="default">n</span><span class="default">, [</span><span class="default">wl</span><span class="default">, </span><span class="default">wh</span><span class="default">], </span>"<span class="default">stop</span>"<span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">, </span><span class="default">c</span><span class="default">] = </span><span class="functionid">butter</span><span class="default"> (…)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">, </span><span class="default">c</span><span class="default">, </span><span class="default">d</span><span class="default">] = </span><span class="functionid">butter</span><span class="default"> (…)</span> +<span class="default">[…] = </span><span class="functionid">butter</span><span class="default"> (…, </span>"<span class="default">s</span>"<span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">n:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">positive real value, w in the range [0,1]</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function generates a Butterworth filter. Default is a discrete space (Z) filter. +The third parameter takes in low or high, default value is low. The cutoff is pi*Wc radians. +[b,a] = butter(n, [Wl, Wh]) indicates a band pass filter with edges pi*Wl and pi*Wh radians. +[b,a] = butter(n, [Wl, Wh], ’stop’) indicates a band reject filter with edges pi*Wl and pi*Wh radians. +[z,p,g] = butter(...) returns filter as zero-pole-gain rather than coefficients of the numerator and denominator polynomials. +[...] = butter(...,’s’) returns a Laplace space filter, w can be larger than 1. +[a,b,c,d] = butter(...) returns state-space matrices.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">butter</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span> <span class="scilabnumber">0.7</span><span class="scilabopenclose">)</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.37445</span> <span class="scilabnumber">1.12336</span> <span class="scilabnumber">1.12336</span> <span class="scilabnumber">0.37445</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">1.00000</span> <span class="scilabnumber">1.16192</span> <span class="scilabnumber">0.69594</span> <span class="scilabnumber">0.13776</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="buffer.html"><< buffer</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="buttord.html">buttord >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/buttord.html b/help/en_US/scilab_en_US_help/buttord.html new file mode 100644 index 0000000..e8f28d7 --- /dev/null +++ b/help/en_US/scilab_en_US_help/buttord.html @@ -0,0 +1,91 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>buttord</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="butter.html"><< butter</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="cconv.html">cconv >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > buttord</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">buttord</h1> + <p class="refpurpose">/This function computes the minimum filter order of a Butterworth filter with the desired response characteristics.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">n</span><span class="default"> = </span><span class="functionid">buttord</span><span class="default">(</span><span class="default">Wp</span><span class="default">, </span><span class="default">Ws</span><span class="default">, </span><span class="default">Rp</span><span class="default">, </span><span class="default">Rs</span><span class="default">)</span> +<span class="default">[</span><span class="default">n</span><span class="default">, </span><span class="default">Wc</span><span class="default">] = </span><span class="functionid">buttord</span><span class="default">(</span><span class="default">Wp</span><span class="default">, </span><span class="default">Ws</span><span class="default">, </span><span class="default">Rp</span><span class="default">, </span><span class="default">Rs</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">Wp:</span> + <dd><p class="para">scalar or vector of length 2</p></dd></dt> + <dt><span class="term">Ws:</span> + <dd><p class="para">scalar or vector of length 2, elements must be in the range [0,1]</p></dd></dt> + <dt><span class="term">Rp:</span> + <dd><p class="para">real or complex value</p></dd></dt> + <dt><span class="term">Rs:</span> + <dd><p class="para">real or complex value</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function computes the minimum filter order of a Butterworth filter with the desired response characteristics. +The filter frequency band edges are specified by the passband frequency wp and stopband frequency ws. +Frequencies are normalized to the Nyquist frequency in the range [0,1]. +Rp is measured in decibels and is the allowable passband ripple, and Rs is also in decibels and is the minimum attenuation in the stop band. +If ws>wp, the filter is a low pass filter. If wp>ws, the filter is a high pass filter. +If wp and ws are vectors of length 2, then the passband interval is defined by wp the stopband interval is defined by ws. +If wp is contained within the lower and upper limits of ws, the filter is a band-pass filter. If ws is contained within the lower and upper limits of wp the filter is a band-stop or band-reject filter.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">Wp</span> <span class="scilaboperator">=</span> <span class="scilabnumber">40</span><span class="scilaboperator">/</span><span class="scilabnumber">500</span> +<span class="scilabid">Ws</span> <span class="scilaboperator">=</span> <span class="scilabnumber">150</span><span class="scilaboperator">/</span><span class="scilabnumber">500</span> +<span class="scilabopenclose">[</span><span class="scilabid">n</span><span class="scilabdefault">,</span> <span class="scilabid">Wn</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">buttord</span><span class="scilabopenclose">(</span><span class="scilabid">Wp</span><span class="scilabdefault">,</span> <span class="scilabid">Ws</span><span class="scilabdefault">,</span> <span class="scilabnumber">3</span><span class="scilabdefault">,</span> <span class="scilabnumber">60</span><span class="scilabopenclose">)</span> +<span class="scilabid">n</span> <span class="scilaboperator">=</span> <span class="scilabnumber">5</span> +<span class="scilabid">Wn</span> <span class="scilaboperator">=</span> <span class="scilabnumber">0.080038</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="butter.html"><< butter</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="cconv.html">cconv >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/c_code.css b/help/en_US/scilab_en_US_help/c_code.css new file mode 100644 index 0000000..948d2ee --- /dev/null +++ b/help/en_US/scilab_en_US_help/c_code.css @@ -0,0 +1,54 @@ +.ccomment { + font-style: italic; + color: #b22222 +} + +.cdefault { + font-style: normal; + color: #000000 +} + +.copenclose { + font-style: normal; + color: #000000 +} + +.coperator { + font-style: normal; + color: #000000 +} + +.cstring { + font-style: normal; + color: #a6557a +} + +.ctype { + font-style: normal; + color: #55a655 +} + +.cpreprocessor { + font-style: normal; + color: #9965a6 +} + +.cid { + font-style: normal; + color: #000000 +} + +.ckeyword { + font-style: normal; + color: #ad3ff2 +} + +.cmodifier { + font-style: normal; + color: #ad3ff2 +} + +.cnumber { + font-style: normal; + color: #008b8b +} diff --git a/help/en_US/scilab_en_US_help/cconv.html b/help/en_US/scilab_en_US_help/cconv.html new file mode 100644 index 0000000..8be8021 --- /dev/null +++ b/help/en_US/scilab_en_US_help/cconv.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>cconv</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="buttord.html"><< buttord</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="cell2sos.html">cell2sos >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > cconv</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">cconv</h1> + <p class="refpurpose">[nargout,nargin]=argn();</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="buttord.html"><< buttord</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="cell2sos.html">cell2sos >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/cell2sos.html b/help/en_US/scilab_en_US_help/cell2sos.html new file mode 100644 index 0000000..0311029 --- /dev/null +++ b/help/en_US/scilab_en_US_help/cell2sos.html @@ -0,0 +1,100 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>cell2sos</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="cconv.html"><< cconv</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="cheb1ord.html">cheb1ord >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > cell2sos</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">cell2sos</h1> + <p class="refpurpose">Converts a cell array to a second order section matrix</p></div> + + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">s=cell2sos(c) converts a a cell array c = { {B1},{A1}, {B2},{A2}, ... {BL},{AL}} +to an L-by-6 second-order-section matrix s given by: +s = [B1 A1 +B2 A2 +... +BL AL] +numerator vector Bi and denominator vector Ai contains the coefficients of a +linear or quadratic polynomial. If the polynomial is linear, the coefficients +zero-padded on the right. +[s,g]=cell2sos(c) estimates the gain from the leading term of the cell array +c={ {[g1,g2]},{B1},{A1}, {B2},{A2}, ... {BL},{AL}} to give g=g1/g2 as the gain +Example +c=cell(1,5);</p> + <p class="para">c(1,1).entries=[2, 1];</p> + <p class="para">c(1,2).entries=rand(1,3);</p> + <p class="para">c(1,3).entries=rand(1,3);</p> + <p class="para">c(1,4).entries=rand(1,3);</p> + <p class="para">c(1,5).entries=rand(1,3);</p> + <p class="para">c = +column 1 to 3</p> + <p class="para">![2,1] [0.2113249,0.7560439,0.0002211] [0.3303271,0.6653811,0.6283918] !</p> + <p class="para">column 4 to 5</p> + <p class="para">![0.8497452,0.6857310,0.8782165] [0.0683740,0.5608486,0.6623569] ! +[s,g]=cell2sos(c); +s =</p> + <p class="para">column 1 to 5</p> + <p class="para">0.2113249 0.7560439 0.0002211 0.3303271 0.6653811 +0.8497452 0.6857310 0.8782165 0.0683740 0.5608486</p> + <p class="para">column 6</p> + <p class="para">0.6283918 +0.6623569</p> + <p class="para">g =</p> + <p class="para">2. +Author +Ankur Mallick</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="cconv.html"><< cconv</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="cheb1ord.html">cheb1ord >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/cheb1ord.html b/help/en_US/scilab_en_US_help/cheb1ord.html new file mode 100644 index 0000000..09346a1 --- /dev/null +++ b/help/en_US/scilab_en_US_help/cheb1ord.html @@ -0,0 +1,88 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>cheb1ord</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="cell2sos.html"><< cell2sos</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="cheb2ord.html">cheb2ord >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > cheb1ord</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">cheb1ord</h1> + <p class="refpurpose">This function computes the minimum filter order of a Chebyshev type I filter with the desired response characteristics.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">n</span><span class="default"> = </span><span class="functionid">cheb1ord</span><span class="default">(</span><span class="default">Wp</span><span class="default">, </span><span class="default">Ws</span><span class="default">, </span><span class="default">Rp</span><span class="default">, </span><span class="default">Rs</span><span class="default">)</span> +<span class="default">[</span><span class="default">n</span><span class="default">, </span><span class="default">Wc</span><span class="default">] = </span><span class="functionid">cheb1ord</span><span class="default">(</span><span class="default">Wp</span><span class="default">, </span><span class="default">Ws</span><span class="default">, </span><span class="default">Rp</span><span class="default">, </span><span class="default">Rs</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">Wp:</span> + <dd><p class="para">scalar or vector of length 2, all elements must be in the range [0,1]</p></dd></dt> + <dt><span class="term">Ws:</span> + <dd><p class="para">scalar or vector of length 2, all elements must be in the range [0,1]</p></dd></dt> + <dt><span class="term">Rp:</span> + <dd><p class="para">real value</p></dd></dt> + <dt><span class="term">Rs:</span> + <dd><p class="para">real value</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function computes the minimum filter order of a Chebyshev type I filter with the desired response characteristics. +Stopband frequency ws and passband frequency wp specify the the filter frequency band edges. +Frequencies are normalized to the Nyquist frequency in the range [0,1]. +Rp is measured in decibels and is the allowable passband ripple and Rs is also measured in decibels and is the minimum attenuation in the stop band. +If ws>wp then the filter is a low pass filter. If wp>ws, then the filter is a high pass filter. +If wp and ws are vectors of length 2, then the passband interval is defined by wp and the stopband interval is defined by ws. +If wp is contained within the lower and upper limits of ws, the filter is a band-pass filter. If ws is contained within the lower and upper limits of wp, the filter is a band-stop or band-reject filter.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">cheb1ord</span><span class="scilabopenclose">(</span><span class="scilabnumber">0.1</span><span class="scilabdefault">,</span><span class="scilabnumber">0.2</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">0.3</span><span class="scilabdefault">,</span><span class="scilabnumber">4</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> <span class="scilabnumber">2</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="cell2sos.html"><< cell2sos</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="cheb2ord.html">cheb2ord >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/cheb2ord.html b/help/en_US/scilab_en_US_help/cheb2ord.html new file mode 100644 index 0000000..b602988 --- /dev/null +++ b/help/en_US/scilab_en_US_help/cheb2ord.html @@ -0,0 +1,88 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>cheb2ord</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="cheb1ord.html"><< cheb1ord</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="chebwin.html">chebwin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > cheb2ord</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">cheb2ord</h1> + <p class="refpurpose">This function computes the minimum filter order of a Chebyshev type II filter with the desired response characteristics.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">n</span><span class="default"> = </span><span class="functionid">cheb2ord</span><span class="default">(</span><span class="default">Wp</span><span class="default">, </span><span class="default">Ws</span><span class="default">, </span><span class="default">Rp</span><span class="default">, </span><span class="default">Rs</span><span class="default">)</span> +<span class="default">[</span><span class="default">n</span><span class="default">, </span><span class="default">Wc</span><span class="default">] = </span><span class="functionid">cheb2ord</span><span class="default">(</span><span class="default">Wp</span><span class="default">, </span><span class="default">Ws</span><span class="default">, </span><span class="default">Rp</span><span class="default">, </span><span class="default">Rs</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">Wp:</span> + <dd><p class="para">scalar or vector of length 2, all elements must be in the range [0,1]</p></dd></dt> + <dt><span class="term">Ws:</span> + <dd><p class="para">scalar or vector of length 2, all elements must be in the range [0,1]</p></dd></dt> + <dt><span class="term">Rp:</span> + <dd><p class="para">real value</p></dd></dt> + <dt><span class="term">Rs:</span> + <dd><p class="para">real value</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function computes the minimum filter order of a Chebyshev type II filter with the desired response characteristics. +Stopband frequency ws and passband frequency wp specify the the filter frequency band edges. +Frequencies are normalized to the Nyquist frequency in the range [0,1]. +Rp is measured in decibels and is the allowable passband ripple and Rs is also measured in decibels and is the minimum attenuation in the stop band. +If ws>wp then the filter is a low pass filter. If wp>ws, then the filter is a high pass filter. +If wp and ws are vectors of length 2, then the passband interval is defined by wp and the stopband interval is defined by ws. +If wp is contained within the lower and upper limits of ws, the filter is a band-pass filter. If ws is contained within the lower and upper limits of wp, the filter is a band-stop or band-reject filter.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">cheb2ord</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">0.25</span><span class="scilabdefault">,</span><span class="scilabnumber">0.3</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabnumber">0.2</span><span class="scilabdefault">,</span><span class="scilabnumber">0.8</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">0.3</span><span class="scilabdefault">,</span><span class="scilabnumber">0.4</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> <span class="scilabnumber">1</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="cheb1ord.html"><< cheb1ord</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="chebwin.html">chebwin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/chebwin.html b/help/en_US/scilab_en_US_help/chebwin.html new file mode 100644 index 0000000..a40104d --- /dev/null +++ b/help/en_US/scilab_en_US_help/chebwin.html @@ -0,0 +1,88 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>chebwin</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="cheb2ord.html"><< cheb2ord</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="cheby1.html">cheby1 >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > chebwin</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">chebwin</h1> + <p class="refpurpose">This function returns the filter coefficients of a Dolph-Chebyshev window.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">w</span><span class="default"> = </span><span class="functionid">chebwin</span><span class="default"> (</span><span class="default">m</span><span class="default">)</span> +<span class="default">w</span><span class="default"> = </span><span class="functionid">chebwin</span><span class="default"> (</span><span class="default">m</span><span class="default">, </span><span class="default">at</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">m:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">at:</span> + <dd><p class="para">real scalar value</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">output variable, vector of real numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function returns the filter coefficients of a Dolph-Chebyshev window of length m supplied as input, to the output vector w. +The second parameter is the stop band attenuation of the Fourier transform in dB. The default value is 100 dB.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">chebwin</span><span class="scilabopenclose">(</span><span class="scilabnumber">7</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.0565041</span> +<span class="scilabnumber">0.3166085</span> +<span class="scilabnumber">0.7601208</span> +<span class="scilabnumber">1.</span> +<span class="scilabnumber">0.7601208</span> +<span class="scilabnumber">0.3166085</span> +<span class="scilabnumber">0.0565041</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="cheb2ord.html"><< cheb2ord</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="cheby1.html">cheby1 >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/cheby1.html b/help/en_US/scilab_en_US_help/cheby1.html new file mode 100644 index 0000000..0768157 --- /dev/null +++ b/help/en_US/scilab_en_US_help/cheby1.html @@ -0,0 +1,95 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>cheby1</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="chebwin.html"><< chebwin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="cheby2.html">cheby2 >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > cheby1</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">cheby1</h1> + <p class="refpurpose">This function generates a Chebyshev type I filter with rp dB of passband ripple.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">] = </span><span class="functionid">cheby1</span><span class="default"> (</span><span class="default">n</span><span class="default">, </span><span class="default">rp</span><span class="default">, </span><span class="default">w</span><span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">] = </span><span class="functionid">cheby1</span><span class="default"> (</span><span class="default">n</span><span class="default">, </span><span class="default">rp</span><span class="default">, </span><span class="default">w</span><span class="default">, </span>"<span class="default">high</span>"<span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">] = </span><span class="functionid">cheby1</span><span class="default"> (</span><span class="default">n</span><span class="default">, </span><span class="default">rp</span><span class="default">, [</span><span class="default">wl</span><span class="default">, </span><span class="default">wh</span><span class="default">])</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">] = </span><span class="functionid">cheby1</span><span class="default"> (</span><span class="default">n</span><span class="default">, </span><span class="default">rp</span><span class="default">, [</span><span class="default">wl</span><span class="default">, </span><span class="default">wh</span><span class="default">], </span>"<span class="default">stop</span>"<span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">, </span><span class="default">c</span><span class="default">] = </span><span class="functionid">cheby1</span><span class="default"> (…)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">, </span><span class="default">c</span><span class="default">, </span><span class="default">d</span><span class="default">] = </span><span class="functionid">cheby1</span><span class="default"> (…)</span> +<span class="default">[…] = </span><span class="functionid">cheby1</span><span class="default"> (…, </span>"<span class="default">s</span>"<span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">n:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">rp:</span> + <dd><p class="para">non negative scalar value</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">vector, all elements must be in the range [0,1]</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function generates a Chebyshev type I filter with rp dB of passband ripple. +The fourth parameter takes in high or low, default value is low. The cutoff is pi*Wc radians. +[b, a] = cheby1(n, Rp, [Wl, Wh]) indicates a band pass filter with edges pi*Wl and pi*Wh radians. +[b, a] = cheby1(n, Rp, [Wl, Wh], ’stop’) indicates a band reject filter with edges pi*Wl and pi*Wh radians. +[z, p, g] = cheby1(...) returns filter as zero-pole-gain rather than coefficients of the numerator and denominator polynomials. +[...] = cheby1(...,’s’) returns a Laplace space filter, w can be larger than 1. +[a,b,c,d] = cheby1(...) returns state-space matrices.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabid">c</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">cheby1</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">6</span><span class="scilabdefault">,</span><span class="scilabnumber">0.7</span><span class="scilabdefault">,</span><span class="scilabstring">"</span><span class="scilabstring">high</span><span class="scilabstring">"</span><span class="scilabopenclose">)</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">1</span> <span class="scilabnumber">1</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> +<span class="scilaboperator">-</span><span class="scilabnumber">0.62915</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.55372</span><span class="scilabid">i</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.62915</span> <span class="scilaboperator">-</span> <span class="scilabnumber">0.55372</span><span class="scilabid">i</span> +<span class="scilabid">c</span> <span class="scilaboperator">=</span> <span class="scilabnumber">0.055649</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="chebwin.html"><< chebwin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="cheby2.html">cheby2 >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/cheby2.html b/help/en_US/scilab_en_US_help/cheby2.html new file mode 100644 index 0000000..026cdc8 --- /dev/null +++ b/help/en_US/scilab_en_US_help/cheby2.html @@ -0,0 +1,95 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>cheby2</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="cheby1.html"><< cheby1</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="check.html">check >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > cheby2</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">cheby2</h1> + <p class="refpurpose">This function generates a Chebyshev type II filter with rs dB of stopband attenuation.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">] = </span><span class="functionid">cheby2</span><span class="default"> (</span><span class="default">n</span><span class="default">, </span><span class="default">rs</span><span class="default">, </span><span class="default">wc</span><span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">] = </span><span class="functionid">cheby2</span><span class="default"> (</span><span class="default">n</span><span class="default">, </span><span class="default">rs</span><span class="default">, </span><span class="default">wc</span><span class="default">, </span>"<span class="default">high</span>"<span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">] = </span><span class="functionid">cheby2</span><span class="default"> (</span><span class="default">n</span><span class="default">, </span><span class="default">rs</span><span class="default">, [</span><span class="default">wl</span><span class="default">, </span><span class="default">wh</span><span class="default">])</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">] = </span><span class="functionid">cheby2</span><span class="default"> (</span><span class="default">n</span><span class="default">, </span><span class="default">rs</span><span class="default">, [</span><span class="default">wl</span><span class="default">, </span><span class="default">wh</span><span class="default">], </span>"<span class="default">stop</span>"<span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">, </span><span class="default">c</span><span class="default">] = </span><span class="functionid">cheby2</span><span class="default"> (…)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">, </span><span class="default">c</span><span class="default">, </span><span class="default">d</span><span class="default">] = </span><span class="functionid">cheby2</span><span class="default"> (…)</span> +<span class="default">[…] = </span><span class="functionid">cheby2</span><span class="default"> (…, </span>"<span class="default">s</span>"<span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">n:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">rp:</span> + <dd><p class="para">non negative scalar value</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">vector, all elements must be in the range [0,1]</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function generates a Chebyshev type II filter with rs dB of stopband attenuation. +The fourth parameter takes in high or low, default value is low. The cutoff is pi*Wc radians. +[b, a] = cheby2(n, Rp, [Wl, Wh]) indicates a band pass filter with edges pi*Wl and pi*Wh radians. +[b, a] = cheby2(n, Rp, [Wl, Wh], ’stop’) indicates a band reject filter with edges pi*Wl and pi*Wh radians. +[z, p, g] = cheby2(...) returns filter as zero-pole-gain rather than coefficients of the numerator and denominator polynomials. +[...] = cheby2(...,’s’) returns a Laplace space filter, w can be larger than 1. +[a,b,c,d] = cheby2(...) returns state-space matrices.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabid">c</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">cheby2</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">5</span><span class="scilabdefault">,</span><span class="scilabnumber">0.7</span><span class="scilabdefault">,</span><span class="scilabstring">"</span><span class="scilabstring">high</span><span class="scilabstring">"</span><span class="scilabopenclose">)</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> +<span class="scilaboperator">-</span><span class="scilabnumber">0.31645</span> <span class="scilaboperator">-</span> <span class="scilabnumber">0.94861</span><span class="scilabid">i</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.31645</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.94861</span><span class="scilabid">i</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> +<span class="scilaboperator">-</span><span class="scilabnumber">0.39388</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.53138</span><span class="scilabid">i</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.39388</span> <span class="scilaboperator">-</span> <span class="scilabnumber">0.53138</span><span class="scilabid">i</span> +<span class="scilabid">c</span> <span class="scilaboperator">=</span> <span class="scilabnumber">0.47528</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="cheby1.html"><< cheby1</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="check.html">check >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/check.html b/help/en_US/scilab_en_US_help/check.html new file mode 100644 index 0000000..0b2571d --- /dev/null +++ b/help/en_US/scilab_en_US_help/check.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>check</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="cheby2.html"><< cheby2</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="chirp.html">chirp >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > check</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">check</h1> + <p class="refpurpose">funcprot(0);</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="cheby2.html"><< cheby2</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="chirp.html">chirp >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/chirp.html b/help/en_US/scilab_en_US_help/chirp.html new file mode 100644 index 0000000..b7aeb3e --- /dev/null +++ b/help/en_US/scilab_en_US_help/chirp.html @@ -0,0 +1,96 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>chirp</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="check.html"><< check</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="clustersegment.html">clustersegment >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > chirp</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">chirp</h1> + <p class="refpurpose">This function evaluates a chirp signal at time t.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default"> = </span><span class="functionid">chirp</span><span class="default">(</span><span class="default">t</span><span class="default">)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">chirp</span><span class="default">(</span><span class="default">t</span><span class="default">, </span><span class="default">f0</span><span class="default">)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">chirp</span><span class="default">(</span><span class="default">t</span><span class="default">, </span><span class="default">f0</span><span class="default">, </span><span class="default">t1</span><span class="default">)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">chirp</span><span class="default">(</span><span class="default">t</span><span class="default">, </span><span class="default">f0</span><span class="default">, </span><span class="default">t1</span><span class="default">, </span><span class="default">f1</span><span class="default">)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">chirp</span><span class="default">(</span><span class="default">t</span><span class="default">, </span><span class="default">f0</span><span class="default">, </span><span class="default">t1</span><span class="default">, </span><span class="default">f1</span><span class="default">, </span><span class="default">frm</span><span class="default">)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">chirp</span><span class="default">(</span><span class="default">t</span><span class="default">, </span><span class="default">f0</span><span class="default">, </span><span class="default">t1</span><span class="default">, </span><span class="default">f1</span><span class="default">, </span><span class="default">frm</span><span class="default">, </span><span class="default">phse</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">t:</span> + <dd><p class="para">vector</p></dd></dt> + <dt><span class="term">f0:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">t1:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">f1:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">frm:</span> + <dd><p class="para">string value, takes in "linear", "quadratic", "logarithmic"</p></dd></dt> + <dt><span class="term">phse:</span> + <dd><p class="para"></p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function evaluates a chirp signal at time t. A chirp signal is a frequency swept cosine wave. +The first argument is a vector of times to evaluate the chirp signal, second argument is the frequency at t=0, third argument is time t1 and fourth argument is frequency at t1. +The fifth argument is the form which takes in values "linear", "quadratic" and "logarithmic", the sixth argument gives the phase shift at t=0.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">chirp</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">5</span><span class="scilabdefault">,</span><span class="scilabnumber">0.9</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabid">column</span> <span class="scilabnumber">1</span> <span class="scilabid">to</span> <span class="scilabnumber">3</span> +<span class="scilabnumber">0.9685832</span> <span class="scilabnumber">0.2486899</span> <span class="scilabnumber">0.0627905</span> +<span class="scilabid">column</span> <span class="scilabnumber">4</span> +<span class="scilaboperator">-</span> <span class="scilabnumber">0.3681246</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="check.html"><< check</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="clustersegment.html">clustersegment >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/clustersegment.html b/help/en_US/scilab_en_US_help/clustersegment.html new file mode 100644 index 0000000..6b435b6 --- /dev/null +++ b/help/en_US/scilab_en_US_help/clustersegment.html @@ -0,0 +1,81 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>clustersegment</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="chirp.html"><< chirp</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="cmorwavf.html">cmorwavf >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > clustersegment</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">clustersegment</h1> + <p class="refpurpose">This function calculates boundary indexes of clusters of 1’s.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">c</span><span class="default"> = </span><span class="functionid">clustersegment</span><span class="default">(</span><span class="default">s</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">s:</span> + <dd><p class="para">scalar, vector or matrix of real numbers (clusters of 1s)</p></dd></dt> + <dt><span class="term">c:</span> + <dd><p class="para">output variable, cell array of size 1 by N, where N is the number of rows in s</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function calculates boundary indexes of clusters of 1’s. +This function calculates the initial and end indices of the sequences of 1's present in the input argument. +The output variable c is a cell array of size 1 by N, where N is the number of rows in s and each element has two rows indicating the initial index and end index of the cluster of 1's respectively. The indexing starts from 1.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">y</span> <span class="scilaboperator">=</span> <span class="scilabid">clustersegment</span> <span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">y</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">2.</span> <span class="scilabnumber">5.</span> +<span class="scilabnumber">2.</span> <span class="scilabnumber">6.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="chirp.html"><< chirp</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="cmorwavf.html">cmorwavf >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/cmorwavf.html b/help/en_US/scilab_en_US_help/cmorwavf.html new file mode 100644 index 0000000..789dfce --- /dev/null +++ b/help/en_US/scilab_en_US_help/cmorwavf.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>cmorwavf</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="clustersegment.html"><< clustersegment</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="convmtx.html">convmtx >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > cmorwavf</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">cmorwavf</h1> + <p class="refpurpose">funcprot(0);</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="clustersegment.html"><< clustersegment</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="convmtx.html">convmtx >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/convmtx.html b/help/en_US/scilab_en_US_help/convmtx.html new file mode 100644 index 0000000..93245b4 --- /dev/null +++ b/help/en_US/scilab_en_US_help/convmtx.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>convmtx</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="cmorwavf.html"><< cmorwavf</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="corrmtx.html">corrmtx >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > convmtx</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">convmtx</h1> + <p class="refpurpose">n=double(n);</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="cmorwavf.html"><< cmorwavf</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="corrmtx.html">corrmtx >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/corrmtx.html b/help/en_US/scilab_en_US_help/corrmtx.html new file mode 100644 index 0000000..aacd3eb --- /dev/null +++ b/help/en_US/scilab_en_US_help/corrmtx.html @@ -0,0 +1,142 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>corrmtx</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="convmtx.html"><< convmtx</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="cummax.html">cummax >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > corrmtx</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">corrmtx</h1> + <p class="refpurpose">Generate data matrix for autocorrelation matrix estimation</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">X</span><span class="default"> = </span><span class="functionid">corrmtx</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">m</span><span class="default">)</span> +<span class="default">[</span><span class="default">X</span><span class="default">,</span><span class="default">R</span><span class="default">] = </span><span class="functionid">corrmtx</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">m</span><span class="default">)</span> +<span class="default">X</span><span class="default"> = </span><span class="functionid">corrmtx</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">m</span><span class="default">,</span><span class="default">s</span><span class="default">)</span> +<span class="default">[</span><span class="default">X</span><span class="default">,</span><span class="default">R</span><span class="default">] = </span><span class="functionid">corrmtx</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">m</span><span class="default">,</span><span class="default">s</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">input vector of size N for which correlation matrix of size m is to be calculated</p></dd></dt> + <dt><span class="term">m:</span> + <dd><p class="para">size of correlation matrix to be computed. Positive integer strictly smaller than the length of the input x</p></dd></dt> + <dt><span class="term">X:</span> + <dd><p class="para">data matrix as specified according to the input 'method'</p></dd></dt> + <dt><span class="term">s:</span> + <dd><p class="para">method for type of output matrix X</p></dd></dt> + <dt><span class="term">'autocorrelation':</span> + <dd><p class="para">(default) X is the (n + m)-by-(m + 1) rectangular Toeplitz matrix that generates an autocorrelation estimate for the leng th-n data vector x, derived using prewindowed and postwindowed data, based on an mth-order prediction error model.</p></dd></dt> + <dt><span class="term">'prewindowed':</span> + <dd><p class="para">X is the n-by-(m + 1) rectangular Toeplitz matrix that generates an autocorrelation estimate for the length-n data vector x, derived using prewindowed data, based on an mth-order prediction error model.</p></dd></dt> + <dt><span class="term">'postwindowed':</span> + <dd><p class="para">X is the n-by-(m + 1) rectangular Toeplitz matrix that generates an autocorrelation estimate for the length-n data vector x , derived using postwindowed data, based on an mth-order prediction error model.</p></dd></dt> + <dt><span class="term">'covariance':</span> + <dd><p class="para">X is the (n – m)-by-(m + 1) rectangular Toeplitz matrix that generates an autocorrelation estimate for the length-n data vect or x, derived using nonwindowed data, based on an mth-order prediction error model.</p></dd></dt> + <dt><span class="term">'modified':</span> + <dd><p class="para">X is the 2(n – m)-by-(m + 1) modified rectangular Toeplitz matrix that generates an autocorrelation estimate for the length-n d ata vector x, derived using forward and backward prediction error estimates, based on an mth-order prediction error model.</p></dd></dt> + <dt><span class="term">R:</span> + <dd><p class="para">(m + 1)-by-(m + 1) autocorrelation matrix estimate calculated as X'*X</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">Consider the generic matrix X below +_ _ +| x(1) ..........0 | +| : . : | +| : . : | +| x(m+1).......x(1)| +| : . : | +| : . : | +X = | x(n-m).....x(m+1)| +| : . : | +| : . : | +| x(n).......x(n-m)| +| : . : | +| : . : | +|_0 ..........x(n)_| +-- +For different inputs of string s the output would vary ass described below +'autocorrelation' — (default) X = X, above. +'prewindowed' — X is the n-by-(m + 1) submatrix of X whose first row is [x(1) … 0] and whose last row is [x(n) … x(n – m)] +'postwindowed' — X is the n-by-(m + 1) submatrix of X whose first row is [x(m + 1) … x(1)] and whose last row is [0 … x(n)] +'covariance' — X is the (n – m)-by-(m + 1) submatrix of X whose first row is [x(m + 1) … x(1)] and whose last row is [x(n) … x(n – m)] +'modified' — X is the 2(n – m)-by-(m + 1) matrix X_mod shown below +_ _ +| x(m+1) ......x(1)| +| : . : | +| : . : | +| x(n-m).....x(m+1)| +| : . : | +| : . : | +| x(n).......x(n-m)| +X_mod= | x*(1).....x*(m+1)| +| : . : | +| : . : | +| x*(m+1)...x*(n-m)| +| : . : | +| : . : | +|_x*(n-m) ...x*(n)_|</p> + <p class="para"></p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"><li class="member"><a href="peig.html" class="link">peig</a></li> + <li class="member"><a href="pmusic.html" class="link">pmusic</a></li> + <li class="member"><a href="rooteig.html" class="link">rooteig</a></li> + <li class="member"><a href="rootmusic.html" class="link">rootmusic</a></li> + <li class="member"><a href="scilab://xcorr" class="link">xcorr</a></li> + <li class="member"><a href="scilab://Author:" class="link">Author:</a></li> + <li class="member"><a href="scilab://Parthe" class="link">Pandit</a></li> + <li class="member"><a href="scilab://Bilbligraphy" class="link">Bilbligraphy</a></li> + <li class="member"><a href="scilab://Marple," class="link">S. Lawrence. Digital Spectral Analysis. Englewood Cliffs, NJ: Prentice-Hall, 1987.</a></li></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="convmtx.html"><< convmtx</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="cummax.html">cummax >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/cummax.html b/help/en_US/scilab_en_US_help/cummax.html new file mode 100644 index 0000000..752f381 --- /dev/null +++ b/help/en_US/scilab_en_US_help/cummax.html @@ -0,0 +1,87 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>cummax</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="corrmtx.html"><< corrmtx</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="cummin.html">cummin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > cummax</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">cummax</h1> + <p class="refpurpose">Cumulative maximum</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">M</span><span class="default"> = </span><span class="functionid">cummax</span><span class="default">(</span><span class="default">A</span><span class="default">)</span> +<span class="default">returns</span> <span class="default">the</span> <span class="default">cumulative</span> <span class="default">maximum</span> <span class="default">of</span> <span class="default">the</span> <span class="default">arguments</span> <span class="default">of</span> <span class="default">A</span><span class="default">. </span><span class="default">The</span> <span class="default">dimension</span> +<span class="default">of</span> <span class="default">M</span> <span class="default">is</span> <span class="default">same</span> <span class="default">as</span> <span class="default">the</span> <span class="default">dimension</span> <span class="default">of</span> <span class="default">A</span><span class="default">. </span><span class="default">If</span> <span class="default">A</span> <span class="default">is</span> <span class="default">a</span><span class="default"> 2</span><span class="default">D</span> <span class="default">matrix</span><span class="default">, </span><span class="default">the</span> <span class="default">operation</span> +<span class="default">is</span> <span class="default">performed</span> <span class="default">along</span> <span class="default">the</span> <span class="default">columns</span><span class="default">. </span><span class="default">For</span> <span class="default">a</span> <span class="default">hypermatrix</span><span class="default">, </span><span class="default">the</span> <span class="default">operation</span> <span class="default">is</span> +<span class="default">performed</span> <span class="default">along</span> <span class="default">the</span> <span class="default">first</span> <span class="default">non</span><span class="default">-</span><span class="default">zero</span> <span class="default">dimension</span> +<span class="default">M</span><span class="default"> = </span><span class="functionid">cummax</span><span class="default">(</span><span class="default">A</span><span class="default">,</span><span class="default">dim</span><span class="default">)</span> +<span class="default">The</span> <span class="default">operation</span> <span class="default">is</span> <span class="default">performed</span> <span class="default">along</span> <span class="default">the</span> <span class="default">dimension</span> <span class="default">specified</span> <span class="default">by</span> <span class="default">dim</span> +<span class="default">M</span><span class="default"> = </span><span class="functionid">cummax</span><span class="default">(</span><span class="default">_</span><span class="default">,</span><span class="default">direction</span><span class="default">)</span> +<span class="default">direction</span> <span class="default">specifies</span> <span class="default">as</span> <span class="default">the</span> <span class="default">direction</span> <span class="default">of</span> <span class="default">operation</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl></dl></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> <span class="scilabid">Cumulative</span> <span class="scilabid">maximum</span> <span class="scilabid">values</span> <span class="scilabid">in</span> <span class="scilabid">a</span> <span class="scilabid">vector</span> +<span class="scilabid">v</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">8</span> <span class="scilabnumber">9</span> <span class="scilabnumber">1</span> <span class="scilabnumber">10</span> <span class="scilabnumber">6</span> <span class="scilabnumber">1</span> <span class="scilabnumber">3</span> <span class="scilabnumber">6</span> <span class="scilabnumber">10</span> <span class="scilabnumber">10</span><span class="scilabopenclose">]</span> +<span class="scilabid">M</span> <span class="scilaboperator">=</span> <span class="scilabid">cummax</span><span class="scilabopenclose">(</span><span class="scilabid">v</span><span class="scilabopenclose">)</span> + +<span class="scilabid">Expected</span> <span class="scilabid">output</span><span class="scilabspecial">:</span> <span class="scilabopenclose">[</span><span class="scilabnumber">8</span> <span class="scilabnumber">8</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span><span class="scilabopenclose">]</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">Authors</h3> + <ul class="itemizedlist"><li class="member">Ayush Baid</li></ul></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="corrmtx.html"><< corrmtx</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="cummin.html">cummin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/cummin.html b/help/en_US/scilab_en_US_help/cummin.html new file mode 100644 index 0000000..c1b5eed --- /dev/null +++ b/help/en_US/scilab_en_US_help/cummin.html @@ -0,0 +1,87 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>cummin</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="cummax.html"><< cummax</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="db.html">db >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > cummin</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">cummin</h1> + <p class="refpurpose">Cumulative minimum</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">M</span><span class="default"> = </span><span class="functionid">cummin</span><span class="default">(</span><span class="default">A</span><span class="default">)</span> +<span class="default">returns</span> <span class="default">the</span> <span class="default">cumulative</span> <span class="default">minimum</span> <span class="default">of</span> <span class="default">the</span> <span class="default">arguments</span> <span class="default">of</span> <span class="default">A</span><span class="default">. </span><span class="default">The</span> <span class="default">dimension</span> +<span class="default">of</span> <span class="default">M</span> <span class="default">is</span> <span class="default">same</span> <span class="default">as</span> <span class="default">the</span> <span class="default">dimension</span> <span class="default">of</span> <span class="default">A</span><span class="default">. </span><span class="default">If</span> <span class="default">A</span> <span class="default">is</span> <span class="default">a</span><span class="default"> 2</span><span class="default">D</span> <span class="default">matrix</span><span class="default">, </span><span class="default">the</span> <span class="default">operation</span> +<span class="default">is</span> <span class="default">performed</span> <span class="default">along</span> <span class="default">the</span> <span class="default">columns</span><span class="default">. </span><span class="default">For</span> <span class="default">a</span> <span class="default">hypermatrix</span><span class="default">, </span><span class="default">the</span> <span class="default">operation</span> <span class="default">is</span> +<span class="default">performed</span> <span class="default">along</span> <span class="default">the</span> <span class="default">first</span> <span class="default">non</span><span class="default">-</span><span class="default">zero</span> <span class="default">dimension</span> +<span class="default">M</span><span class="default"> = </span><span class="functionid">cummin</span><span class="default">(</span><span class="default">A</span><span class="default">,</span><span class="default">dim</span><span class="default">)</span> +<span class="default">The</span> <span class="default">operation</span> <span class="default">is</span> <span class="default">performed</span> <span class="default">along</span> <span class="default">the</span> <span class="default">dimension</span> <span class="default">specified</span> <span class="default">by</span> <span class="default">dim</span> +<span class="default">M</span><span class="default"> = </span><span class="functionid">cummin</span><span class="default">(</span><span class="default">_</span><span class="default">,</span><span class="default">direction</span><span class="default">)</span> +<span class="default">direction</span> <span class="default">specifies</span> <span class="default">as</span> <span class="default">the</span> <span class="default">direction</span> <span class="default">of</span> <span class="default">operation</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl></dl></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> <span class="scilabid">Cumulative</span> <span class="scilabid">minimum</span> <span class="scilabid">values</span> <span class="scilabid">in</span> <span class="scilabid">a</span> <span class="scilabid">vector</span> +<span class="scilabid">v</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">8</span> <span class="scilabnumber">9</span> <span class="scilabnumber">1</span> <span class="scilabnumber">10</span> <span class="scilabnumber">6</span> <span class="scilabnumber">1</span> <span class="scilabnumber">3</span> <span class="scilabnumber">6</span> <span class="scilabnumber">10</span> <span class="scilabnumber">10</span><span class="scilabopenclose">]</span> +<span class="scilabid">M</span> <span class="scilaboperator">=</span> <span class="scilabid">cummin</span><span class="scilabopenclose">(</span><span class="scilabid">v</span><span class="scilabopenclose">)</span> + +<span class="scilabid">Expected</span> <span class="scilabid">output</span><span class="scilabspecial">:</span> <span class="scilabopenclose">[</span><span class="scilabnumber">8</span> <span class="scilabnumber">8</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span><span class="scilabopenclose">]</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">Authors</h3> + <ul class="itemizedlist"><li class="member">Ayush Baid</li></ul></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="cummax.html"><< cummax</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="db.html">db >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/db.html b/help/en_US/scilab_en_US_help/db.html new file mode 100644 index 0000000..74da32f --- /dev/null +++ b/help/en_US/scilab_en_US_help/db.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>db</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="cummin.html"><< cummin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="db2pow.html">db2pow >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > db</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">db</h1> + <p class="refpurpose"></p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="cummin.html"><< cummin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="db2pow.html">db2pow >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/db2pow.html b/help/en_US/scilab_en_US_help/db2pow.html new file mode 100644 index 0000000..a0a167e --- /dev/null +++ b/help/en_US/scilab_en_US_help/db2pow.html @@ -0,0 +1,75 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>db2pow</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="db.html"><< db</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="dctmtx.html">dctmtx >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > db2pow</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">db2pow</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">ydb :</span> + <dd><p class="para">scalar or vector or matrix or N-D array</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">ydb</span> <span class="scilaboperator">=</span> <span class="scilabnumber">20</span> +<span class="scilabid">y</span><span class="scilaboperator">=</span><span class="scilabid">mag2pow</span><span class="scilabopenclose">(</span><span class="scilabid">ydb</span><span class="scilabopenclose">)</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">Authors</h3> + <ul class="itemizedlist"><li class="member">Ishita Bedi</li> + <li class="member">Modified to handle char i/p by Debdeep Dey</li></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="db.html"><< db</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="dctmtx.html">dctmtx >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/dctmtx.html b/help/en_US/scilab_en_US_help/dctmtx.html new file mode 100644 index 0000000..00753de --- /dev/null +++ b/help/en_US/scilab_en_US_help/dctmtx.html @@ -0,0 +1,79 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>dctmtx</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="db2pow.html"><< db2pow</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="decimate.html">decimate >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > dctmtx</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">dctmtx</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">y</span><span class="default">]=</span><span class="functionid">dctmtx</span><span class="default">(</span><span class="default">n</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">n:</span> + <dd><p class="para">Real scalar integer greater than or equal to 1</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function +dctmtx(n) returns a Discrete cosine transform matrix of order n-by-n. It is useful for jpeg image compression. D*A is the DCT of the columns of A and D'*A is the inverse DCT of the columns of A (when A is n-by-n).</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1.</span> <span class="scilabid">dctmtx</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0.70711</span> <span class="scilabnumber">0.70711</span><span class="scilabdefault">;</span> <span class="scilabnumber">0.70711</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.70711</span><span class="scilabopenclose">]</span> +<span class="scilabnumber">2.</span> <span class="scilabid">dctmtx</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">5.7735e-01</span> <span class="scilabnumber">5.7735e-01</span> <span class="scilabnumber">5.7735e-01</span><span class="scilabdefault">;</span> +<span class="scilabnumber">7.0711e-01</span> <span class="scilabnumber">4.9996e-17</span> <span class="scilaboperator">-</span><span class="scilabnumber">7.0711e-01</span><span class="scilabdefault">;</span> +<span class="scilabnumber">4.0825e-01</span> <span class="scilaboperator">-</span><span class="scilabnumber">8.1650e-01</span> <span class="scilabnumber">4.0825e-01</span><span class="scilabopenclose">]</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="db2pow.html"><< db2pow</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="decimate.html">decimate >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/decimate.html b/help/en_US/scilab_en_US_help/decimate.html new file mode 100644 index 0000000..05c16a6 --- /dev/null +++ b/help/en_US/scilab_en_US_help/decimate.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>decimate</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="dctmtx.html"><< dctmtx</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="dftmtx.html">dftmtx >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > decimate</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">decimate</h1> + <p class="refpurpose">rhs = argn(2)</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="dctmtx.html"><< dctmtx</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="dftmtx.html">dftmtx >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/dftmtx.html b/help/en_US/scilab_en_US_help/dftmtx.html new file mode 100644 index 0000000..38e1491 --- /dev/null +++ b/help/en_US/scilab_en_US_help/dftmtx.html @@ -0,0 +1,77 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>dftmtx</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="decimate.html"><< decimate</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="diric.html">diric >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > dftmtx</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">dftmtx</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">d</span><span class="default">]=</span><span class="functionid">dftmtx</span><span class="default">(</span><span class="default">n</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">n:</span> + <dd><p class="para">Real positive scalar number</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function +This fuction gives a complex matrix of values whose product with a vector produces the discrete Fourier transform. This can also be achieved by directly using the fft function i.e. y=fft(x) is same as y=A*x where A=dftmtx(n).</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1.</span> <span class="scilabid">dftmtx</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> <span class="scilabnumber">1.00000</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.00000</span><span class="scilabid">i</span> <span class="scilabnumber">1.00000</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.00000</span><span class="scilabid">i</span> <span class="scilabnumber">1.00000</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.00000</span><span class="scilabid">i</span> +<span class="scilabnumber">1.00000</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.00000</span><span class="scilabid">i</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.50000</span> <span class="scilaboperator">-</span> <span class="scilabnumber">0.86603</span><span class="scilabid">i</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.50000</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.86603</span><span class="scilabid">i</span> +<span class="scilabnumber">1.00000</span> <span class="scilaboperator">-</span> <span class="scilabnumber">0.00000</span><span class="scilabid">i</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.50000</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.86603</span><span class="scilabid">i</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.50000</span> <span class="scilaboperator">-</span> <span class="scilabnumber">0.86603</span><span class="scilabid">i</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="decimate.html"><< decimate</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="diric.html">diric >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/diric.html b/help/en_US/scilab_en_US_help/diric.html new file mode 100644 index 0000000..9b707a3 --- /dev/null +++ b/help/en_US/scilab_en_US_help/diric.html @@ -0,0 +1,79 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>diric</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="dftmtx.html"><< dftmtx</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="downsample.html">downsample >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > diric</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">diric</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">y</span><span class="default">]=</span><span class="functionid">diric</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">n</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">Real valued vector or matrix</p></dd></dt> + <dt><span class="term">n:</span> + <dd><p class="para">Real positive integer or complex integer</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function +y=diric(x,n) returns the dirichlet function values of parameter x.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1.</span> <span class="scilabid">diric</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span><span class="scilaboperator">=</span> <span class="scilabnumber">0.6935349</span> <span class="scilabnumber">0.0559021</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.3266617</span> +<span class="scilabnumber">2.</span> <span class="scilabid">diric</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span><span class="scilaboperator">=</span> <span class="scilabnumber">0.8775826</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="dftmtx.html"><< dftmtx</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="downsample.html">downsample >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/downsample.html b/help/en_US/scilab_en_US_help/downsample.html new file mode 100644 index 0000000..890a0e6 --- /dev/null +++ b/help/en_US/scilab_en_US_help/downsample.html @@ -0,0 +1,82 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>downsample</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="diric.html"><< diric</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="dutycycle.html">dutycycle >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > downsample</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">downsample</h1> + <p class="refpurpose">This function downsamples the signal by selecting every nth element.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default"> = </span><span class="functionid">downsample</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">n</span><span class="default">)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">downsample</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">n</span><span class="default">, </span><span class="default">phase</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">scalar, vector or matrix of real or complex numbers</p></dd></dt> + <dt><span class="term">n:</span> + <dd><p class="para">real number or vector</p></dd></dt> + <dt><span class="term">phase:</span> + <dd><p class="para">integer value, 0 <= phase <= (n - 1), default value 0, or logical</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function downsamples the signal by selecting every nth element supplied as parameter 2. If x is a matrix, the function downsamples every column. +If the phase is specified, every nth element is selected starting from the sample phase. The default phase is 0.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">downsample</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">4</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">1.</span> <span class="scilabnumber">4.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="diric.html"><< diric</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="dutycycle.html">dutycycle >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/dutycycle.html b/help/en_US/scilab_en_US_help/dutycycle.html new file mode 100644 index 0000000..8399a3b --- /dev/null +++ b/help/en_US/scilab_en_US_help/dutycycle.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>dutycycle</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="downsample.html"><< downsample</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="ellip.html">ellip >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > dutycycle</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">dutycycle</h1> + <p class="refpurpose"></p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="downsample.html"><< downsample</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="ellip.html">ellip >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/ellip.html b/help/en_US/scilab_en_US_help/ellip.html new file mode 100644 index 0000000..0097c1b --- /dev/null +++ b/help/en_US/scilab_en_US_help/ellip.html @@ -0,0 +1,95 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>ellip</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="dutycycle.html"><< dutycycle</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="ellipord.html">ellipord >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > ellip</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">ellip</h1> + <p class="refpurpose">This function generates an elliptic or Cauer filter with rp dB of passband ripple and rs dB of stopband attenuation.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">] = </span><span class="functionid">ellip</span><span class="default"> (</span><span class="default">n</span><span class="default">, </span><span class="default">rp</span><span class="default">, </span><span class="default">rs</span><span class="default">, </span><span class="default">wp</span><span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">] = </span><span class="functionid">ellip</span><span class="default"> (</span><span class="default">n</span><span class="default">, </span><span class="default">rp</span><span class="default">, </span><span class="default">rs</span><span class="default">, </span><span class="default">wp</span><span class="default">, </span>"<span class="default">high</span>"<span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">] = </span><span class="functionid">ellip</span><span class="default"> (</span><span class="default">n</span><span class="default">, </span><span class="default">rp</span><span class="default">, </span><span class="default">rs</span><span class="default">, [</span><span class="default">wl</span><span class="default">, </span><span class="default">wh</span><span class="default">])</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">] = </span><span class="functionid">ellip</span><span class="default"> (</span><span class="default">n</span><span class="default">, </span><span class="default">rp</span><span class="default">, </span><span class="default">rs</span><span class="default">, [</span><span class="default">wl</span><span class="default">, </span><span class="default">wh</span><span class="default">], </span>"<span class="default">stop</span>"<span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">, </span><span class="default">c</span><span class="default">] = </span><span class="functionid">ellip</span><span class="default"> (…)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">, </span><span class="default">c</span><span class="default">, </span><span class="default">d</span><span class="default">] = </span><span class="functionid">ellip</span><span class="default"> (…)</span> +<span class="default">[…] = </span><span class="functionid">ellip</span><span class="default"> (…, </span>"<span class="default">s</span>"<span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">n:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">rp:</span> + <dd><p class="para">non negative scalar value</p></dd></dt> + <dt><span class="term">rs:</span> + <dd><p class="para">non negative scalar value</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">scalar or vector, all elements should be in the range [0,1]</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function generates an elliptic or Cauer filter with rp dB of passband ripple and rs dB of stopband attenuation. +[b, a] = ellip(n, Rp, Rs, Wp) indicates low pass filter with order n, Rp decibels of ripple in the passband and a stopband Rs decibels down and cutoff of pi*Wp radians. If the fifth argument is high, then the filter is a high pass filter. +[b, a] = ellip(n, Rp, Rs, [Wl, Wh]) indictaes band pass filter with band pass edges pi*Wl and pi*Wh. If the fifth argument is stop, the filter is a band reject filter. +[z, p, g] = ellip(...) returns filter as zero-pole-gain. +[...] = ellip(...,’s’) returns a Laplace space filter, w can be larger than 1. +[a, b, c, d] = ellip(...) returns state-space matrices.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">ellip</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span> <span class="scilabnumber">0.5</span><span class="scilabdefault">,</span> <span class="scilabnumber">0.7</span><span class="scilabdefault">,</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0.3</span><span class="scilabdefault">,</span><span class="scilabnumber">0.4</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.88532</span> <span class="scilaboperator">-</span><span class="scilabnumber">1.58410</span> <span class="scilabnumber">2.40380</span> <span class="scilaboperator">-</span><span class="scilabnumber">1.58410</span> <span class="scilabnumber">0.88532</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">1.00000</span> <span class="scilaboperator">-</span><span class="scilabnumber">1.78065</span> <span class="scilabnumber">2.68703</span> <span class="scilaboperator">-</span><span class="scilabnumber">1.75725</span> <span class="scilabnumber">0.97454</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="dutycycle.html"><< dutycycle</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="ellipord.html">ellipord >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/ellipord.html b/help/en_US/scilab_en_US_help/ellipord.html new file mode 100644 index 0000000..855ca22 --- /dev/null +++ b/help/en_US/scilab_en_US_help/ellipord.html @@ -0,0 +1,89 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>ellipord</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="ellip.html"><< ellip</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="enbw.html">enbw >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > ellipord</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">ellipord</h1> + <p class="refpurpose">This function computes the minimum filter order of an elliptic filter with the desired response characteristics.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">n</span><span class="default">] = </span><span class="functionid">ellipord</span><span class="default">(</span><span class="default">Wp</span><span class="default">, </span><span class="default">Ws</span><span class="default">, </span><span class="default">Rp</span><span class="default">, </span><span class="default">Rs</span><span class="default">)</span> +<span class="default">[</span><span class="default">n</span><span class="default">, </span><span class="default">Wp</span><span class="default">] = </span><span class="functionid">ellipord</span><span class="default">(</span><span class="default">Wp</span><span class="default">, </span><span class="default">Ws</span><span class="default">, </span><span class="default">Rp</span><span class="default">, </span><span class="default">Rs</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">Wp:</span> + <dd><p class="para">scalar or vector of length 2, all elements must be in the range [0,1]</p></dd></dt> + <dt><span class="term">Ws:</span> + <dd><p class="para">scalar or vector of length 2, all elements must be in the range [0,1]</p></dd></dt> + <dt><span class="term">Rp:</span> + <dd><p class="para">real or complex value</p></dd></dt> + <dt><span class="term">Rs:</span> + <dd><p class="para">real or complex value</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function computes the minimum filter order of an elliptic filter with the desired response characteristics. +Stopband frequency ws and passband frequency wp specify the the filter frequency band edges. +Frequencies are normalized to the Nyquist frequency in the range [0,1]. +Rp is measured in decibels and is the allowable passband ripple and Rs is also measured in decibels and is the minimum attenuation in the stop band. +If ws>wp then the filter is a low pass filter. If wp>ws, then the filter is a high pass filter. +If wp and ws are vectors of length 2, then the passband interval is defined by wp and the stopband interval is defined by ws. +If wp is contained within the lower and upper limits of ws, the filter is a band-pass filter. If ws is contained within the lower and upper limits of wp, the filter is a band-stop or band-reject filter.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">ellipord</span><span class="scilabopenclose">(</span><span class="scilabnumber">0.2</span><span class="scilabdefault">,</span> <span class="scilabnumber">0.5</span><span class="scilabdefault">,</span> <span class="scilabnumber">0.7</span><span class="scilabdefault">,</span> <span class="scilabnumber">0.4</span><span class="scilabopenclose">)</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabnumber">1</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabnumber">0.20000</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="ellip.html"><< ellip</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="enbw.html">enbw >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/enbw.html b/help/en_US/scilab_en_US_help/enbw.html new file mode 100644 index 0000000..b183594 --- /dev/null +++ b/help/en_US/scilab_en_US_help/enbw.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>enbw</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="ellipord.html"><< ellipord</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="eqtflength.html">eqtflength >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > enbw</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">enbw</h1> + <p class="refpurpose"></p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="ellipord.html"><< ellipord</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="eqtflength.html">eqtflength >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/eqtflength.html b/help/en_US/scilab_en_US_help/eqtflength.html new file mode 100644 index 0000000..dc76eae --- /dev/null +++ b/help/en_US/scilab_en_US_help/eqtflength.html @@ -0,0 +1,64 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>eqtflength</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="enbw.html"><< enbw</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="falltime.html">falltime >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > eqtflength</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">eqtflength</h1> + <p class="refpurpose">Modifies the input vector to give output vectors of the same length</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">b</span><span class="default">,</span><span class="default">a</span><span class="default">] = </span><span class="functionid">eqtflength</span><span class="default">(</span><span class="default">b</span><span class="default">,</span><span class="default">a</span><span class="default">)</span> +<span class="default">[</span><span class="default">b</span><span class="default">,</span><span class="default">a</span><span class="default">,</span><span class="default">N</span><span class="default">,</span><span class="default">M</span><span class="default">] = </span><span class="functionid">eqtflength</span><span class="default">(</span><span class="default">b</span><span class="default">,</span><span class="default">a</span><span class="default">)</span></pre></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="enbw.html"><< enbw</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="falltime.html">falltime >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/falltime.html b/help/en_US/scilab_en_US_help/falltime.html new file mode 100644 index 0000000..f4db959 --- /dev/null +++ b/help/en_US/scilab_en_US_help/falltime.html @@ -0,0 +1,101 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>falltime</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="eqtflength.html"><< eqtflength</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="fftfilt.html">fftfilt >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > falltime</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">falltime</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">r</span><span class="default">=</span><span class="functionid">falltime</span><span class="default">(</span><span class="default">x</span><span class="default">)</span> +<span class="default">r</span><span class="default">=</span><span class="functionid">falltime</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">)</span> +<span class="default">r</span><span class="default">=</span><span class="functionid">falltime</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">Fs</span><span class="default">)</span> +<span class="default">r</span><span class="default">=</span><span class="functionid">falltime</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">, </span>'<span class="default">PercentReferenceLevels</span>'<span class="default">, </span><span class="default">N</span><span class="default"> )</span> +<span class="default">r</span><span class="default">=</span><span class="functionid">falltime</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">, </span>'<span class="default">Tolerance</span>'<span class="default">, </span><span class="default">M</span><span class="default">)</span> +<span class="default">r</span><span class="default">=</span><span class="functionid">falltime</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">,</span>'<span class="default">StateLevels</span>'<span class="default">, </span><span class="default">O</span><span class="default">)</span> +<span class="default">[</span><span class="default">r</span> <span class="default">lowercrossvalue</span> <span class="default">uppercrossvalue</span> <span class="default">lowerreference</span> <span class="default">upperreference</span><span class="default">]=</span><span class="functionid">falltime</span><span class="default">(</span><span class="default">x</span><span class="default">)</span> +<span class="default">[</span><span class="default">r</span> <span class="default">lowercrossvalue</span> <span class="default">uppercrossvalue</span> <span class="default">lowerreference</span> <span class="default">upperreference</span><span class="default">]=</span><span class="functionid">falltime</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">Fs</span><span class="default">)</span> +<span class="default">[</span><span class="default">r</span> <span class="default">lowercrossvalue</span> <span class="default">uppercrossvalue</span> <span class="default">lowerreference</span> <span class="default">upperreference</span><span class="default">]=</span><span class="functionid">falltime</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">)</span> +<span class="default">[</span><span class="default">r</span> <span class="default">lowercrossvalue</span> <span class="default">uppercrossvalue</span> <span class="default">lowerreference</span> <span class="default">upperreference</span><span class="default">]=</span><span class="functionid">falltime</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">, </span>'<span class="default">PercentReferenceLevels</span>'<span class="default">, </span><span class="default">N</span><span class="default"> )</span> +<span class="default">[</span><span class="default">r</span> <span class="default">lowercrossvalue</span> <span class="default">uppercrossvalue</span> <span class="default">lowerreference</span> <span class="default">upperreference</span><span class="default">]= </span><span class="functionid">falltime</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">, </span>'<span class="default">Tolerance</span>'<span class="default">, </span><span class="default">M</span><span class="default">)</span> +<span class="default">[</span><span class="default">r</span> <span class="default">lowercrossvalue</span> <span class="default">uppercrossvalue</span> <span class="default">lowerreference</span> <span class="default">upperreference</span><span class="default">]= </span><span class="functionid">falltime</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">,</span>'<span class="default">StateLevels</span>'<span class="default">, </span><span class="default">O</span><span class="default">)</span> +<span class="default">[</span><span class="default">r</span> <span class="default">lowercrossvalue</span> <span class="default">uppercrossvalue</span> <span class="default">lowerreference</span> <span class="default">upperreference</span><span class="default">]= </span><span class="functionid">falltime</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">,</span>'<span class="default">StateLevels</span>'<span class="default">, </span><span class="default">O</span><span class="default">, </span>'<span class="default">fig</span>'<span class="default">, </span><span class="default">on</span> <span class="default">or</span> <span class="default">off</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">real vector.</p></dd></dt> + <dt><span class="term">Fs:</span> + <dd><p class="para">specifies the sample rate, Fs, as a positive scalar, where the first sample instant corresponds to a time of zero.</p></dd></dt> + <dt><span class="term">t:</span> + <dd><p class="para">defiene instant sample time t as vector with same length of x, or specifies the sample rate, t, as a positive scalar.</p></dd></dt> + <dt><span class="term">PercentReferenceLevels:</span> + <dd><p class="para">specify the percentreferenceleves as a percentage, default value of N is [10 90].</p></dd></dt> + <dt><span class="term">Tolerance:</span> + <dd><p class="para">define the tolerance value as real scaler value, where default value of M is 2.0.</p></dd></dt> + <dt><span class="term">StateLevels:</span> + <dd><p class="para">define the lower and upper state levels as two element real vector.</p></dd></dt> + <dt><span class="term">fig:</span> + <dd><p class="para">specify the logical input value to display figure as one of 'on' or 'off', where the default input in 'off'.</p></dd></dt> + <dt><span class="term">f:</span> + <dd><p class="para">return fall time of negative-going bilevel waveform transitions X.</p></dd></dt> + <dt><span class="term">lowercrossvalue:</span> + <dd><p class="para">return the lowerc cross value.</p></dd></dt> + <dt><span class="term">uppercrossvalue:</span> + <dd><p class="para">return the upper cross value.</p></dd></dt> + <dt><span class="term">lowerreference:</span> + <dd><p class="para">return lower reference value corrosponding to lower percent reference value.</p></dd></dt> + <dt><span class="term">upperreference:</span> + <dd><p class="para">return upper reference value corrosponding to upper percent reference value.</p></dd></dt></dl></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="eqtflength.html"><< eqtflength</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="fftfilt.html">fftfilt >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/fftfilt.html b/help/en_US/scilab_en_US_help/fftfilt.html new file mode 100644 index 0000000..6f1a77b --- /dev/null +++ b/help/en_US/scilab_en_US_help/fftfilt.html @@ -0,0 +1,90 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>fftfilt</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="falltime.html"><< falltime</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="filternorm.html">filternorm >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > fftfilt</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">fftfilt</h1> + <p class="refpurpose">Performs FFT-based FIR filtering using overlap-add method</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">real|complex numbers - vector|matrix</p></dd></dt> + <dt><span class="term">b:</span> + <dd><p class="para">real|complex numbers - vector|matrix</p></dd></dt> + <dt><span class="term">n:</span> + <dd><p class="para">positive integer</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">y = fftfilt(b,x) filters the data in vector x with the filter described +by coefficient vector b. +y = fftfilt(b,x,n) uses n to determine the length of the FFT.</p> + <p class="para"></p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> <span class="scilabid">Filtering</span> <span class="scilabid">a</span> <span class="scilabid">sine</span> <span class="scilabid">wave</span> +<span class="scilabid">x</span> <span class="scilaboperator">=</span> <a class="scilabcommand" href="scilab://sin">sin</a><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabspecial">:</span><span class="scilabnumber">2000</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">1</span><span class="scilaboperator">/</span><span class="scilabnumber">2</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">y</span> <span class="scilaboperator">=</span> <span class="scilabid">fftfilt</span><span class="scilabopenclose">(</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabid">x</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> +<span class="scilabnumber">2</span><span class="scilabopenclose">)</span> <span class="scilabid">Multiple</span> <span class="scilabid">filters</span> <span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilaboperator">/</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span> <a class="scilabcommand" href="scilab://and">and</a> <span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilaboperator">/</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilaboperator">/</span><span class="scilabnumber">5</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> +<span class="scilabid">x</span> <span class="scilaboperator">=</span> <a class="scilabcommand" href="scilab://sin">sin</a><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabspecial">:</span><span class="scilabnumber">2000</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">1</span><span class="scilaboperator">/</span><span class="scilabnumber">4</span><span class="scilabdefault">;</span><span class="scilabnumber">1</span><span class="scilaboperator">/</span><span class="scilabnumber">3</span> <span class="scilabnumber">1</span><span class="scilaboperator">/</span><span class="scilabnumber">5</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">y</span> <span class="scilaboperator">=</span> <span class="scilabid">fftfilt</span><span class="scilabopenclose">(</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabid">x</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">Authors</h3> + <ul class="itemizedlist"><li class="member">Ayush Baid</li></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="falltime.html"><< falltime</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="filternorm.html">filternorm >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/filternorm.html b/help/en_US/scilab_en_US_help/filternorm.html new file mode 100644 index 0000000..8d182b7 --- /dev/null +++ b/help/en_US/scilab_en_US_help/filternorm.html @@ -0,0 +1,88 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>filternorm</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="fftfilt.html"><< fftfilt</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="filtfilt.html">filtfilt >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > filternorm</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">filternorm</h1> + <p class="refpurpose">Calculates the L-2 norm or L-infinity norm of a digital filter</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">L</span><span class="default"> = </span><span class="functionid">filternorm</span><span class="default">(</span><span class="default">b</span><span class="default">,</span><span class="default">a</span><span class="default">)</span> +<span class="default">L</span><span class="default"> = </span><span class="functionid">filternorm</span><span class="default">(</span><span class="default">b</span><span class="default">,</span><span class="default">a</span><span class="default">,</span><span class="default">pnorm</span><span class="default">)</span> +<span class="default">L</span><span class="default"> = </span><span class="functionid">filternorm</span><span class="default">(</span><span class="default">b</span><span class="default">,</span><span class="default">a</span><span class="default">,2,</span><span class="default">tol</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">b:</span> + <dd><p class="para">The filter numerator coefficients.</p></dd></dt> + <dt><span class="term">a:</span> + <dd><p class="para">The filter denominator coefficients.</p></dd></dt> + <dt><span class="term">pnorm:</span> + <dd><p class="para">The L-norm to be calculated. The values accepted are 2 (L2 norm) or %inf (L-infinity norm). Default value is 2.</p></dd></dt> + <dt><span class="term">tol:</span> + <dd><p class="para">The tolerance of the L-2 norm to be calculated. If tol not specified, it defaults to 10^(-8). tol must be a positive scalar</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">// 1) L-2 norm of an IIR filter with tol = 10^(-10)</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">3</span> <span class="scilabnumber">2</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.5</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">L</span> <span class="scilaboperator">=</span> <span class="scilabid">filternorm</span><span class="scilabopenclose">(</span><span class="scilabid">b</span><span class="scilabdefault">,</span> <span class="scilabid">a</span><span class="scilabdefault">,</span> <span class="scilabnumber">2</span><span class="scilabdefault">,</span> <span class="scilabnumber">10d-10</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"><li class="member"><a href="scilab://norm" class="link">norm</a></li> + <li class="member"><a href="zp2sos.html" class="link">zp2sos</a></li></ul></div> + +<div class="refsection"><h3 class="title">Authors</h3> + <ul class="itemizedlist"><li class="member">Ayush Baid</li></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="fftfilt.html"><< fftfilt</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="filtfilt.html">filtfilt >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/filtfilt.html b/help/en_US/scilab_en_US_help/filtfilt.html new file mode 100644 index 0000000..7a2693b --- /dev/null +++ b/help/en_US/scilab_en_US_help/filtfilt.html @@ -0,0 +1,79 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>filtfilt</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="filternorm.html"><< filternorm</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="filtic.html">filtic >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > filtfilt</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">filtfilt</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">y</span><span class="default">]=</span><span class="functionid">filtfilt</span><span class="default">(</span><span class="default">b</span><span class="default">,</span><span class="default">a</span><span class="default">,</span><span class="default">x</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">b:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt> + <dt><span class="term">a:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt> + <dt><span class="term">x:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function +In theory, it forwards and reverse filters the signal and corrects phase distortion upto an extent by a one-pass filter but squares the magnitude response in the process. Practically though, the correction isn't perfect and magnitude response, particularly the stop band is distorted.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1.</span> <span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">filtfilt</span> <span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabid">i</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabid">i</span> <span class="scilaboperator">-</span><span class="scilabnumber">4</span> <span class="scilabnumber">0</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0.00000</span> <span class="scilaboperator">-</span> <span class="scilabnumber">0.25000</span><span class="scilabid">i</span> <span class="scilabnumber">1.00000</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.00000</span><span class="scilabid">i</span> <span class="scilabnumber">0.00000</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.00000</span><span class="scilabid">i</span><span class="scilabopenclose">]</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="filternorm.html"><< filternorm</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="filtic.html">filtic >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/filtic.html b/help/en_US/scilab_en_US_help/filtic.html new file mode 100644 index 0000000..00b6474 --- /dev/null +++ b/help/en_US/scilab_en_US_help/filtic.html @@ -0,0 +1,86 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>filtic</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="filtfilt.html"><< filtfilt</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="filtord.html">filtord >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > filtic</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">filtic</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">zf</span><span class="default"> = </span><span class="functionid">filtic</span><span class="default"> (</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">, </span><span class="default">y</span><span class="default">)</span> +<span class="default">zf</span><span class="default"> = </span><span class="functionid">filtic</span><span class="default"> (</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">, </span><span class="default">y</span><span class="default">, </span><span class="default">x</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">b:</span> + <dd><p class="para">vector of real or complex numbers</p></dd></dt> + <dt><span class="term">a:</span> + <dd><p class="para">vector of real or complex numbers</p></dd></dt> + <dt><span class="term">y:</span> + <dd><p class="para">vector of real or complex numbers</p></dd></dt> + <dt><span class="term">x:</span> + <dd><p class="para">vector of real or complex numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This function finds the initial conditions for the delays in the transposed direct-form II filter implementation. +The vectors b and a represent the numerator and denominator coefficients of the filter's transfer function.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">filtic</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabid">i</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabid">i</span><span class="scilabdefault">,</span><span class="scilabnumber">5</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabid">i</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0.8</span><span class="scilabid">i</span><span class="scilabdefault">,</span><span class="scilabnumber">7</span><span class="scilabdefault">,</span><span class="scilabnumber">9</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.00000</span> <span class="scilaboperator">-</span> <span class="scilabnumber">22.60000</span><span class="scilabid">i</span> +<span class="scilabnumber">2.40000</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.00000</span><span class="scilabid">i</span> +<span class="scilabnumber">0.00000</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.00000</span><span class="scilabid">i</span> +<span class="scilabid">This</span> <span class="scilabfkeyword">function</span> <span class="scilabid">being</span> <span class="scilabid">called</span> <span class="scilabid">from</span> <span class="scilabid">Octave</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="filtfilt.html"><< filtfilt</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="filtord.html">filtord >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/filtord.html b/help/en_US/scilab_en_US_help/filtord.html new file mode 100644 index 0000000..9259171 --- /dev/null +++ b/help/en_US/scilab_en_US_help/filtord.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>filtord</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="filtic.html"><< filtic</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="firpmord.html">firpmord >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > filtord</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">filtord</h1> + <p class="refpurpose">and denominator coefficients, a.</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="filtic.html"><< filtic</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="firpmord.html">firpmord >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/firpmord.html b/help/en_US/scilab_en_US_help/firpmord.html new file mode 100644 index 0000000..d1f05c5 --- /dev/null +++ b/help/en_US/scilab_en_US_help/firpmord.html @@ -0,0 +1,108 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>firpmord</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="filtord.html"><< filtord</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="firtype.html">firtype >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > firpmord</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">firpmord</h1> + <p class="refpurpose">Parks-McClennan optimal FIR filter order estimation</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">f:</span> + <dd><p class="para">double - positive - vector</p></dd></dt> + <dt><span class="term">a:</span> + <dd><p class="para">double - positive - vector</p></dd></dt> + <dt><span class="term">dev:</span> + <dd><p class="para">double - positive - vector</p></dd></dt> + <dt><span class="term">n:</span> + <dd><p class="para">int - scalar</p></dd></dt> + <dt><span class="term">fo:</span> + <dd><p class="para">double - positive - vector</p></dd></dt> + <dt><span class="term">ao:</span> + <dd><p class="para">double - positive - vector</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">double - vector</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span> <span class="scilabid">A</span> <span class="scilabid">low</span><span class="scilaboperator">-</span><span class="scilabid">pass</span> <a class="scilabmacro" href="scilab://filter">filter</a> +<span class="scilabid">f</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1500</span> <span class="scilabnumber">2000</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> <span class="scilabcomment">// frequency edges for bands</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">0</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> <span class="scilabcomment">// desired amplitude for each band</span> +<span class="scilabid">dev</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0.01</span> <span class="scilabnumber">0.1</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> <span class="scilabcomment">// Acceptable deviation for each band</span> +<span class="scilabid">fs</span> <span class="scilaboperator">=</span> <span class="scilabnumber">8000</span><span class="scilabdefault">;</span> <span class="scilabcomment">// Sampling frequency</span> +<span class="scilabopenclose">[</span><span class="scilabid">n</span><span class="scilabdefault">,</span><span class="scilabid">fo</span><span class="scilabdefault">,</span><span class="scilabid">ao</span><span class="scilabdefault">,</span><span class="scilabid">w</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">firpmord</span><span class="scilabopenclose">(</span><span class="scilabid">f</span><span class="scilabdefault">,</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">dev</span><span class="scilabdefault">,</span><span class="scilabid">fs</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> + +<span class="scilabopenclose">[</span><span class="scilabnumber">2</span><span class="scilabopenclose">]</span> <span class="scilabid">A</span> <span class="scilabid">bandstop</span> <a class="scilabmacro" href="scilab://filter">filter</a> +<span class="scilabid">f</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1000</span> <span class="scilabnumber">1800</span> <span class="scilabnumber">2400</span> <span class="scilabnumber">3000</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0.5</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">dev</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0.01</span> <span class="scilabnumber">0.1</span> <span class="scilabnumber">0.03</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">fs</span> <span class="scilaboperator">=</span> <span class="scilabnumber">8000</span><span class="scilabdefault">;</span> +<span class="scilabopenclose">[</span><span class="scilabid">n</span><span class="scilabdefault">,</span><span class="scilabid">fo</span><span class="scilabdefault">,</span><span class="scilabid">ao</span><span class="scilabdefault">,</span><span class="scilabid">w</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">firpmord</span><span class="scilabopenclose">(</span><span class="scilabid">f</span><span class="scilabdefault">,</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">dev</span><span class="scilabdefault">,</span><span class="scilabid">fs</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> + +<span class="scilabid">References</span> +<span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span> <span class="scilabid">Rabiner</span><span class="scilabdefault">,</span> <span class="scilabid">Lawrence</span> <span class="scilabid">R</span><span class="scilaboperator">.</span><span class="scilabdefault">,</span> <a class="scilabcommand" href="scilab://and">and</a> <span class="scilabstring">Bernard</span> <span class="scilabstring">Gold.</span> <span class="scilabstring">"Theory</span> <span class="scilabstring">and</span> <span class="scilabstring">application</span> <span class="scilabstring">of</span> +<span class="scilabid">digital</span> <span class="scilabid">signal</span> <span class="scilabid">processing</span><span class="scilaboperator">.</span><span class="scilabstring">"</span><span class="scilabstring"> Englewood Cliffs, NJ, Prentice-Hall, Inc.,</span> +<span class="scilabnumber">1975.</span> <span class="scilabnumber">777</span> <span class="scilabid">p</span><span class="scilaboperator">.</span> <span class="scilabnumber">156</span><span class="scilaboperator">-</span><span class="scilabnumber">7</span> <span class="scilabopenclose">(</span><span class="scilabnumber">1975</span><span class="scilabopenclose">)</span><span class="scilaboperator">.</span> +<span class="scilabopenclose">[</span><span class="scilabnumber">2</span><span class="scilabopenclose">]</span> <span class="scilabid">Rabiner</span><span class="scilabdefault">,</span> <span class="scilabid">Lawrence</span> <span class="scilabid">R</span><span class="scilaboperator">.</span><span class="scilabdefault">,</span> <a class="scilabcommand" href="scilab://and">and</a> <span class="scilabstring">Otto</span> <span class="scilabstring">Herrmann.</span> <span class="scilabstring">"The</span> <span class="scilabstring">predictability</span> <span class="scilabstring">of</span> <span class="scilabstring">certain</span> +<span class="scilabid">optimum</span> <span class="scilabid">finite</span><span class="scilaboperator">-</span><span class="scilabid">impulse</span><span class="scilaboperator">-</span><span class="scilabid">response</span> <span class="scilabid">digital</span> <span class="scilabid">filters</span><span class="scilaboperator">.</span><span class="scilabstring">"</span><span class="scilabstring"> Circuit Theory,</span> +<span class="scilabid">IEEE</span> <span class="scilabid">Transactions</span> <span class="scilabid">on</span> <span class="scilabnumber">20.4</span> <span class="scilabopenclose">(</span><span class="scilabnumber">1973</span><span class="scilabopenclose">)</span><span class="scilabspecial">:</span> <span class="scilabnumber">401</span><span class="scilaboperator">-</span><span class="scilabnumber">408.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">Authors</h3> + <ul class="itemizedlist"><li class="member">Ayush Baid</li></ul></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="filtord.html"><< filtord</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="firtype.html">firtype >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/firtype.html b/help/en_US/scilab_en_US_help/firtype.html new file mode 100644 index 0000000..7ad9c4c --- /dev/null +++ b/help/en_US/scilab_en_US_help/firtype.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>firtype</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="firpmord.html"><< firpmord</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="flattopwin.html">flattopwin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > firtype</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">firtype</h1> + <p class="refpurpose">if (type(b)~=1) then</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="firpmord.html"><< firpmord</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="flattopwin.html">flattopwin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/flattopwin.html b/help/en_US/scilab_en_US_help/flattopwin.html new file mode 100644 index 0000000..bf99698 --- /dev/null +++ b/help/en_US/scilab_en_US_help/flattopwin.html @@ -0,0 +1,90 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>flattopwin</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="firtype.html"><< firtype</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="fracshift.html">fracshift >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > flattopwin</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">flattopwin</h1> + <p class="refpurpose">This function returns the filter coefficients of a Flat Top window.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">w</span><span class="default"> = </span><span class="functionid">flattopwin</span><span class="default"> (</span><span class="default">m</span><span class="default">)</span> +<span class="default">w</span><span class="default"> = </span><span class="functionid">flattopwin</span><span class="default"> (</span><span class="default">m</span><span class="default">, </span><span class="default">opt</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">m:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">opt:</span> + <dd><p class="para">string value, takes in "periodic" or "symmetric"</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">output variable, vector of real numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function returns the filter coefficients of a Flat Top window of length m supplied as input, to the output vector w. +The second parameter can take the values "periodic" or "symmetric", depending on which the corresponding form of window is returned. The default is symmetric. +This window has low pass-band ripple but a high bandwidth.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">flattopwin</span><span class="scilabopenclose">(</span><span class="scilabnumber">8</span><span class="scilabdefault">,</span><span class="scilabstring">"</span><span class="scilabstring">periodic</span><span class="scilabstring">"</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.0009051</span> +<span class="scilaboperator">-</span> <span class="scilabnumber">0.0264124</span> +<span class="scilaboperator">-</span> <span class="scilabnumber">0.0555580</span> +<span class="scilabnumber">0.4435496</span> +<span class="scilabnumber">1.</span> +<span class="scilabnumber">0.4435496</span> +<span class="scilaboperator">-</span> <span class="scilabnumber">0.0555580</span> +<span class="scilaboperator">-</span> <span class="scilabnumber">0.0264124</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="firtype.html"><< firtype</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="fracshift.html">fracshift >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/fracshift.html b/help/en_US/scilab_en_US_help/fracshift.html new file mode 100644 index 0000000..a7e5d77 --- /dev/null +++ b/help/en_US/scilab_en_US_help/fracshift.html @@ -0,0 +1,83 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>fracshift</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="flattopwin.html"><< flattopwin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="fwhm.html">fwhm >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > fracshift</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">fracshift</h1> + <p class="refpurpose">This function shifts the series x supplied as input argument by a number of samples d.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default"> = </span><span class="functionid">fracshift</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">d</span><span class="default">)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">fracshift</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">d</span><span class="default">, </span><span class="default">h</span><span class="default">)</span> +<span class="default">[</span><span class="default">y</span><span class="default">, </span><span class="default">h</span><span class="default">] = </span><span class="functionid">fracshift</span><span class="default">(...)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">d:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">h:</span> + <dd><p class="para"></p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function shifts the series x supplied as input argument by a number of samples d. +The third parameter is the interpolator, which is designed with a Kaiser-windowed sinecard by default, if not supplied.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">fracshift</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">5</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">1.</span> <span class="scilabnumber">2.</span> <span class="scilabnumber">3.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="flattopwin.html"><< flattopwin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="fwhm.html">fwhm >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/fwhm.html b/help/en_US/scilab_en_US_help/fwhm.html new file mode 100644 index 0000000..d80322c --- /dev/null +++ b/help/en_US/scilab_en_US_help/fwhm.html @@ -0,0 +1,72 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>fwhm</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="fracshift.html"><< fracshift</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="fwhmjlt.html">fwhmjlt >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > fwhm</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">fwhm</h1> + <p class="refpurpose">This function computes peak full width at half minimum or at another level of peak minimum for vector or matrix data y supplied as input.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">f</span><span class="default"> = </span><span class="functionid">fwhm</span><span class="default"> (</span><span class="default">y</span><span class="default">)</span> +<span class="default">f</span><span class="default"> = </span><span class="functionid">fwhm</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">y</span><span class="default">)</span> +<span class="default">f</span><span class="default"> = </span><span class="functionid">fwhm</span><span class="default"> (…, </span>"<span class="default">zero</span>"<span class="default">)</span> +<span class="default">f</span><span class="default"> = </span><span class="functionid">fwhm</span><span class="default"> (…, </span>"<span class="default">min</span>"<span class="default">)</span> +<span class="default">f</span><span class="default"> = </span><span class="functionid">fwhm</span><span class="default"> (…, </span>"<span class="default">alevel</span>"<span class="default">, </span><span class="default">level</span><span class="default">)</span> +<span class="default">f</span><span class="default"> = </span><span class="functionid">fwhm</span><span class="default"> (…, </span>"<span class="default">rlevel</span>"<span class="default">, </span><span class="default">level</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">y:</span> + <dd><p class="para">vector or matrix</p></dd></dt></dl></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="fracshift.html"><< fracshift</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="fwhmjlt.html">fwhmjlt >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/fwhmjlt.html b/help/en_US/scilab_en_US_help/fwhmjlt.html new file mode 100644 index 0000000..6d3d926 --- /dev/null +++ b/help/en_US/scilab_en_US_help/fwhmjlt.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>fwhmjlt</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="fwhm.html"><< fwhm</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="gauspuls.html">gauspuls >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > fwhmjlt</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">fwhmjlt</h1> + <p class="refpurpose">rhs = argn(2)</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="fwhm.html"><< fwhm</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="gauspuls.html">gauspuls >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/gauspuls.html b/help/en_US/scilab_en_US_help/gauspuls.html new file mode 100644 index 0000000..d2beafa --- /dev/null +++ b/help/en_US/scilab_en_US_help/gauspuls.html @@ -0,0 +1,83 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>gauspuls</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="fwhmjlt.html"><< fwhmjlt</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="gaussdesign.html">gaussdesign >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > gauspuls</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">gauspuls</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">y</span><span class="default">]=</span><span class="functionid">gauspuls</span><span class="default">(</span><span class="default">t</span><span class="default">,</span><span class="default">fc</span><span class="default">,</span><span class="default">bw</span><span class="default">)</span> +<span class="default">[</span><span class="default">y</span><span class="default">]=</span><span class="functionid">gauspuls</span><span class="default">(</span><span class="default">t</span><span class="default">,</span><span class="default">fc</span><span class="default">)</span> +<span class="default">[</span><span class="default">y</span><span class="default">]=</span><span class="functionid">gauspuls</span><span class="default">(</span><span class="default">t</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">t:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt> + <dt><span class="term">fc:</span> + <dd><p class="para">Real non negative number or complex number</p></dd></dt> + <dt><span class="term">bw:</span> + <dd><p class="para">Real positive number or complex number</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function +This function returns a Gaussian RF pulse of unity amplitude at the times indicated in array t.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1.</span> <span class="scilabid">gauspuls</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span><span class="scilaboperator">=</span> <span class="scilabnumber">1.427D-56</span> +<span class="scilabnumber">2.</span> <span class="scilabid">gauspuls</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span><span class="scilaboperator">=</span> <span class="scilabnumber">0.0281016</span> <span class="scilabnumber">0.0000006</span> <span class="scilabnumber">1.093D-14</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="fwhmjlt.html"><< fwhmjlt</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="gaussdesign.html">gaussdesign >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/gaussdesign.html b/help/en_US/scilab_en_US_help/gaussdesign.html new file mode 100644 index 0000000..4af7ea9 --- /dev/null +++ b/help/en_US/scilab_en_US_help/gaussdesign.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>gaussdesign</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="gauspuls.html"><< gauspuls</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="gaussian.html">gaussian >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > gaussdesign</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">gaussdesign</h1> + <p class="refpurpose">GAUSSDESIGN designs a Gaussian pulse-shaping filter which is a low pass FIR</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="gauspuls.html"><< gauspuls</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="gaussian.html">gaussian >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/gaussian.html b/help/en_US/scilab_en_US_help/gaussian.html new file mode 100644 index 0000000..2835ad2 --- /dev/null +++ b/help/en_US/scilab_en_US_help/gaussian.html @@ -0,0 +1,86 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>gaussian</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="gaussdesign.html"><< gaussdesign</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="gausswin.html">gausswin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > gaussian</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">gaussian</h1> + <p class="refpurpose">This function returns a Gaussian convolution window.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">w</span><span class="default"> = </span><span class="functionid">gaussian</span><span class="default"> (</span><span class="default">m</span><span class="default">)</span> +<span class="default">w</span><span class="default"> = </span><span class="functionid">gaussian</span><span class="default"> (</span><span class="default">m</span><span class="default">, </span><span class="default">a</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">m:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">a:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">output variable, vector of real numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function returns a Gaussian convolution window of length m supplied as input, to the output vector w. +The second parameter is the width measured in sample rate/number of samples and should be f for time domain and 1/f for frequency domain. The width is inversely proportional to a.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">gaussian</span><span class="scilabopenclose">(</span><span class="scilabnumber">5</span><span class="scilabdefault">,</span><span class="scilabnumber">6</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">5.380D-32</span> +<span class="scilabnumber">1.523D-08</span> +<span class="scilabnumber">1.</span> +<span class="scilabnumber">1.523D-08</span> +<span class="scilabnumber">5.380D-32</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="gaussdesign.html"><< gaussdesign</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="gausswin.html">gausswin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/gausswin.html b/help/en_US/scilab_en_US_help/gausswin.html new file mode 100644 index 0000000..2d3139d --- /dev/null +++ b/help/en_US/scilab_en_US_help/gausswin.html @@ -0,0 +1,84 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>gausswin</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="gaussian.html"><< gaussian</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="gmonopuls.html">gmonopuls >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > gausswin</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">gausswin</h1> + <p class="refpurpose">This function returns the filter coefficients of a Gaussian window.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">w</span><span class="default"> = </span><span class="functionid">gausswin</span><span class="default"> (</span><span class="default">m</span><span class="default">)</span> +<span class="default">w</span><span class="default"> = </span><span class="functionid">gausswin</span><span class="default"> (</span><span class="default">m</span><span class="default">, </span><span class="default">a</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">m:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">a:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">output variable, vector of real numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function returns the filter coefficients of a Gaussian window of length m supplied as input, to the output vector w. +The second parameter is the width measured in sample rate/number of samples and should be f for time domain and 1/f for frequency domain. The width is inversely proportional to a.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">gausswin</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.2493522</span> +<span class="scilabnumber">1.</span> +<span class="scilabnumber">0.2493522</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="gaussian.html"><< gaussian</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="gmonopuls.html">gmonopuls >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/gmonopuls.html b/help/en_US/scilab_en_US_help/gmonopuls.html new file mode 100644 index 0000000..72e915f --- /dev/null +++ b/help/en_US/scilab_en_US_help/gmonopuls.html @@ -0,0 +1,76 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>gmonopuls</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="gausswin.html"><< gausswin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="goertzel.html">goertzel >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > gmonopuls</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">gmonopuls</h1> + <p class="refpurpose"></p></div> + + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">t:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt> + <dt><span class="term">fc:</span> + <dd><p class="para">Real non-negative value or complex value or a vector or matrix with not all real values negative.</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function +This function returns samples of the Gaussian monopulse of amplitude unity.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1.</span> <span class="scilabid">gmonopuls</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">0.1</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span><span class="scilaboperator">=</span> <span class="scilabnumber">0.85036</span> <span class="scilabnumber">0.94070</span> <span class="scilabnumber">0.52591</span> +<span class="scilabnumber">2.</span> <span class="scilabid">gmonopuls</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span><span class="scilaboperator">=</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="gausswin.html"><< gausswin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="goertzel.html">goertzel >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/goertzel.html b/help/en_US/scilab_en_US_help/goertzel.html new file mode 100644 index 0000000..09e4739 --- /dev/null +++ b/help/en_US/scilab_en_US_help/goertzel.html @@ -0,0 +1,89 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>goertzel</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="gmonopuls.html"><< gmonopuls</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="grpdelay.html">grpdelay >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > goertzel</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">goertzel</h1> + <p class="refpurpose">Computes DFT using the second order Goertzel Algorithm</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">Y</span><span class="default"> = </span><span class="functionid">goertzel</span><span class="default">(</span><span class="default">X</span><span class="default">,</span><span class="default">INDVEC</span><span class="default">,</span><span class="default">DIM</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">goertzel(X,INDVEC) +Computes the DFT of X at indices INDVEC using the second order algorithm along +the first non-singleton dimension. Elements of INDVEC must be positive integers +less than the length of the first non-singleton dimension. If INDVEC is empty +the DFT is computed at all indices along the first non-singleton dimension +goertzel(X,INDVEC,DIM) +Implements the algorithm along dimension DIM +In general goertzel is slower than fft when computing the DFT for all indices +along a particular dimension. However it is computationally more efficient when +the DFT at only a subset of indices is desired +Example +x=rand(1,5) +x =</p> + <p class="para">0.6283918 0.8497452 0.6857310 0.8782165 0.0683740 +y=goertzel(x,2); +y =</p> + <p class="para">- 0.3531539 - 0.6299881i +Author +Ankur Mallick +References +Goertzel, G. (January 1958), "An Algorithm for the Evaluation of Finite Trigonometric Series", American Mathematical Monthly 65 (1): 34–35, doi:10.2307/2310304</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="gmonopuls.html"><< gmonopuls</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="grpdelay.html">grpdelay >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/grpdelay.html b/help/en_US/scilab_en_US_help/grpdelay.html new file mode 100644 index 0000000..f3d5853 --- /dev/null +++ b/help/en_US/scilab_en_US_help/grpdelay.html @@ -0,0 +1,68 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>grpdelay</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="goertzel.html"><< goertzel</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="hann.html">hann >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > grpdelay</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">grpdelay</h1> + <p class="refpurpose">This function computes the group delay of a filter.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">gd</span><span class="default"> = </span><span class="functionid">grpdelay</span><span class="default">(</span><span class="default">b</span><span class="default">)</span> +<span class="default">gd</span><span class="default"> = </span><span class="functionid">grpdelay</span><span class="default">(</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">)</span> +<span class="default">gd</span><span class="default"> = </span><span class="functionid">grpdelay</span><span class="default">(</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">, </span><span class="default">nfft</span><span class="default">)</span> +<span class="default">gd</span><span class="default"> = </span><span class="functionid">grpdelay</span><span class="default">(</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">, </span><span class="default">nfft</span><span class="default">, </span><span class="default">whole</span><span class="default">)</span> +<span class="default">gd</span><span class="default"> = </span><span class="functionid">grpdelay</span><span class="default">(</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">, </span><span class="default">nfft</span><span class="default">, </span><span class="default">whole</span><span class="default">, </span><span class="default">Fs</span><span class="default">)</span> +<span class="default">[</span><span class="default">gd</span><span class="default">, </span><span class="default">w</span><span class="default">] = </span><span class="functionid">grpdelay</span><span class="default">(...)</span></pre></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="goertzel.html"><< goertzel</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="hann.html">hann >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/hann.html b/help/en_US/scilab_en_US_help/hann.html new file mode 100644 index 0000000..f1f78b9 --- /dev/null +++ b/help/en_US/scilab_en_US_help/hann.html @@ -0,0 +1,88 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>hann</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="grpdelay.html"><< grpdelay</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="helperHarmonicDistortionAmplifier.html">helperHarmonicDistortionAmplifier >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > hann</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">hann</h1> + <p class="refpurpose">This function returns the filter coefficients of a Hanning window.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">w</span><span class="default"> = </span><span class="functionid">hann</span><span class="default">(</span><span class="default">m</span><span class="default">)</span> +<span class="default">w</span><span class="default"> = </span><span class="functionid">hann</span><span class="default">(</span><span class="default">m</span><span class="default">, </span>"<span class="default">symmteric</span>"<span class="default">)</span> +<span class="default">w</span><span class="default"> = </span><span class="functionid">hann</span><span class="default">(</span><span class="default">m</span><span class="default">, </span>"<span class="default">periodic</span>"<span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">m:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">opt:</span> + <dd><p class="para">string value, takes in "periodic" or "symmetric"</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">output variable, vector of real numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function returns the filter coefficients of a Hanning window of length m supplied as input, to the output vector w. +The second parameter can take the values "periodic" or "symmetric", depending on which the corresponding form of window is returned. The default is symmetric.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">hann</span><span class="scilabopenclose">(</span><span class="scilabnumber">6</span><span class="scilabdefault">,</span><span class="scilabstring">"</span><span class="scilabstring">symmetric</span><span class="scilabstring">"</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.</span> +<span class="scilabnumber">0.3454915</span> +<span class="scilabnumber">0.9045085</span> +<span class="scilabnumber">0.9045085</span> +<span class="scilabnumber">0.3454915</span> +<span class="scilabnumber">0.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="grpdelay.html"><< grpdelay</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="helperHarmonicDistortionAmplifier.html">helperHarmonicDistortionAmplifier >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/helperHarmonicDistortionAmplifier.html b/help/en_US/scilab_en_US_help/helperHarmonicDistortionAmplifier.html new file mode 100644 index 0000000..4288393 --- /dev/null +++ b/help/en_US/scilab_en_US_help/helperHarmonicDistortionAmplifier.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>helperHarmonicDistortionAmplifier</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="hann.html"><< hann</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="icceps.html">icceps >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > helperHarmonicDistortionAmplifier</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">helperHarmonicDistortionAmplifier</h1> + <p class="refpurpose">helperHarmonicDistortionADC Helper function for HarmonicDistortionExample.m</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="hann.html"><< hann</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="icceps.html">icceps >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/icceps.html b/help/en_US/scilab_en_US_help/icceps.html new file mode 100644 index 0000000..760b014 --- /dev/null +++ b/help/en_US/scilab_en_US_help/icceps.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>icceps</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="helperHarmonicDistortionAmplifier.html"><< helperHarmonicDistortionAmplifier</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="iirlp2mb.html">iirlp2mb >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > icceps</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">icceps</h1> + <p class="refpurpose">ICCEPS computes the inverse cepstrum of a real-valued input. This spectrum</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="helperHarmonicDistortionAmplifier.html"><< helperHarmonicDistortionAmplifier</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="iirlp2mb.html">iirlp2mb >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/iirlp2mb.html b/help/en_US/scilab_en_US_help/iirlp2mb.html new file mode 100644 index 0000000..dfa89c8 --- /dev/null +++ b/help/en_US/scilab_en_US_help/iirlp2mb.html @@ -0,0 +1,88 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>iirlp2mb</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="icceps.html"><< icceps</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="impinvar.html">impinvar >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > iirlp2mb</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">iirlp2mb</h1> + <p class="refpurpose">This function does IIR Low Pass Filter to Multiband Filter Transformation.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">Num</span><span class="default">, </span><span class="default">Den</span><span class="default">, </span><span class="default">AllpassNum</span><span class="default">, </span><span class="default">AllpassDen</span><span class="default">] = </span><span class="functionid">iirlp2mb</span><span class="default">(</span><span class="default">B</span><span class="default">, </span><span class="default">A</span><span class="default">, </span><span class="default">Wo</span><span class="default">, </span><span class="default">Wt</span><span class="default">)</span> +<span class="default">[</span><span class="default">Num</span><span class="default">, </span><span class="default">Den</span><span class="default">, </span><span class="default">AllpassNum</span><span class="default">, </span><span class="default">AllpassDen</span><span class="default">] = </span><span class="functionid">iirlp2mb</span><span class="default">(</span><span class="default">B</span><span class="default">, </span><span class="default">A</span><span class="default">, </span><span class="default">Wo</span><span class="default">, </span><span class="default">Wt</span><span class="default">, </span><span class="default">Pass</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">B:</span> + <dd><p class="para">real or complex value</p></dd></dt> + <dt><span class="term">A:</span> + <dd><p class="para">real or complex value</p></dd></dt> + <dt><span class="term">Wo:</span> + <dd><p class="para">scalar or vector</p></dd></dt> + <dt><span class="term">Wt:</span> + <dd><p class="para">scalar or vector, elements must be monotonically increasing and >= 0 and <= 1.</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function does IIR Low Pass Filter to Multiband Filter Transformation. +The first two parameters give the numerator and denominator of the prototype low pass filter. +The third parameter is the normalized angular frequency/pi to be transformed. +The fourth parameter is the normalized angular frequency/pi target vector. +The first two output variables are the numerator and denominator of the transformed filter. +The third and fourth output variables are the numerator and denominator of the allpass transform. +The fifth parameter can have values pass or stop, default value is pass.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">iirlp2mb</span><span class="scilabopenclose">(</span><span class="scilabnumber">5</span><span class="scilabdefault">,</span><span class="scilabnumber">9</span><span class="scilabdefault">,</span><span class="scilabnumber">0.3</span><span class="scilabdefault">,</span><span class="scilabnumber">0.4</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> <span class="scilabnumber">0.55556</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="icceps.html"><< icceps</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="impinvar.html">impinvar >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/impinvar.html b/help/en_US/scilab_en_US_help/impinvar.html new file mode 100644 index 0000000..ba4231d --- /dev/null +++ b/help/en_US/scilab_en_US_help/impinvar.html @@ -0,0 +1,89 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>impinvar</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="iirlp2mb.html"><< iirlp2mb</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="impz.html">impz >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > impinvar</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">impinvar</h1> + <p class="refpurpose">This function converts analog filter with coefficients b and a to digital, conserving impulse response.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">] = </span><span class="functionid">impinvar</span><span class="default"> (</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">)</span> +<span class="default">[</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">] = </span><span class="functionid">impinvar</span><span class="default"> (</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">, </span><span class="default">fs</span><span class="default">)</span> +<span class="default">[</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">] = </span><span class="functionid">impinvar</span><span class="default"> (</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">, </span><span class="default">fs</span><span class="default">, </span><span class="default">tol</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">b:</span> + <dd><p class="para">real or complex valued scalar or vector</p></dd></dt> + <dt><span class="term">a:</span> + <dd><p class="para">real or complex valued scalar or vector, order should be greater than b</p></dd></dt> + <dt><span class="term">fs:</span> + <dd><p class="para">real or complex value, default value 1Hz</p></dd></dt> + <dt><span class="term">tol:</span> + <dd><p class="para">real or complex value, default value 0.0001</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function converts analog filter with coefficients b and a to digital, conserving impulse response. +This function does the inverse of impinvar.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabnumber">0.0081000</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">2.0000000</span><span class="scilabdefault">,</span> <span class="scilabnumber">0.56435378</span><span class="scilabdefault">,</span> <span class="scilabnumber">0.4572792</span><span class="scilabdefault">,</span> <span class="scilabnumber">0.00705544</span><span class="scilabdefault">,</span> <span class="scilabnumber">0.091000</span><span class="scilabopenclose">]</span> +<span class="scilabopenclose">[</span><span class="scilabid">ay</span><span class="scilabdefault">,</span><span class="scilabid">by</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">impinvar</span><span class="scilabopenclose">(</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabnumber">10</span><span class="scilabopenclose">)</span> +<span class="scilabid">ay</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.0000e+00</span> <span class="scilabnumber">7.5293e-08</span> <span class="scilabnumber">2.9902e-07</span> <span class="scilabnumber">7.4238e-08</span> +<span class="scilabid">by</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">1.00000</span> <span class="scilaboperator">-</span><span class="scilabnumber">3.96992</span> <span class="scilabnumber">5.91203</span> <span class="scilaboperator">-</span><span class="scilabnumber">3.91428</span> <span class="scilabnumber">0.97218</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="iirlp2mb.html"><< iirlp2mb</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="impz.html">impz >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/impz.html b/help/en_US/scilab_en_US_help/impz.html new file mode 100644 index 0000000..ed5e0c3 --- /dev/null +++ b/help/en_US/scilab_en_US_help/impz.html @@ -0,0 +1,67 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>impz</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="impinvar.html"><< impinvar</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="impzlength.html">impzlength >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > impz</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">impz</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">x_r</span><span class="default"> = </span><span class="functionid">impz</span><span class="default">(</span><span class="default">b</span><span class="default">)</span> +<span class="default">x_r</span><span class="default"> = </span><span class="functionid">impz</span><span class="default">(</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">)</span> +<span class="default">x_r</span><span class="default"> = </span><span class="functionid">impz</span><span class="default">(</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">, </span><span class="default">n</span><span class="default">)</span> +<span class="default">x_r</span><span class="default"> = </span><span class="functionid">impz</span><span class="default">(</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">, </span><span class="default">n</span><span class="default">, </span><span class="default">fs</span><span class="default">)</span> +<span class="default">[</span><span class="default">x_r</span><span class="default">, </span><span class="default">t_r</span><span class="default">] = </span><span class="functionid">impz</span><span class="default">(</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">, </span><span class="default">n</span><span class="default">, </span><span class="default">fs</span><span class="default">)</span></pre></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="impinvar.html"><< impinvar</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="impzlength.html">impzlength >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/impzlength.html b/help/en_US/scilab_en_US_help/impzlength.html new file mode 100644 index 0000000..f4f22de --- /dev/null +++ b/help/en_US/scilab_en_US_help/impzlength.html @@ -0,0 +1,92 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>impzlength</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="impz.html"><< impz</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="interp.html">interp >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > impzlength</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">impzlength</h1> + <p class="refpurpose">Impulse response length</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">len</span><span class="default"> = </span><span class="functionid">impzlength</span><span class="default">(</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">, </span><span class="default">tol</span><span class="default">)</span> +<span class="default">returns</span> <span class="default">the</span> <span class="default">impulse</span> <span class="default">response</span> <span class="default">length</span> <span class="default">for</span> <span class="default">the</span> <span class="default">causal</span> <span class="default">discrete</span><span class="default">-</span><span class="default">time</span> <span class="default">filter</span> +<span class="default">with</span> <span class="default">the</span> <span class="default">transfer</span> <span class="default">function</span> <span class="default">coefficients</span> <span class="default">for</span> <span class="default">numerator</span> <span class="default">and</span> <span class="default">denominator</span> <span class="default">in</span> +<span class="default">a</span> <span class="default">and</span> <span class="default">b</span> <span class="default">respectively</span><span class="default">. </span><span class="default">For</span> <span class="default">stable</span> <span class="default">IIR</span> <span class="default">filters</span><span class="default">, </span><span class="default">len</span> <span class="default">is</span> <span class="default">the</span> <span class="default">effective</span> <span class="default">length</span> +<span class="default">impulse</span> <span class="default">response</span> <span class="default">length</span><span class="default">, </span><span class="default">i</span><span class="default">.</span><span class="default">e</span><span class="default">. </span><span class="default">the</span> <span class="default">length</span> <span class="default">after</span> <span class="default">which</span> <span class="default">the</span> <span class="default">response</span> <span class="default">is</span> +<span class="default">essentially</span> <span class="default">zero</span> +<span class="default">len</span><span class="default"> = </span><span class="functionid">impzlength</span><span class="default">(</span><span class="default">sos</span><span class="default">)</span> +<span class="default">returns</span> <span class="default">the</span> <span class="default">impulse</span> <span class="default">response</span> <span class="default">length</span> <span class="default">of</span> <span class="default">the</span> <span class="default">filter</span> <span class="default">specified</span> <span class="default">by</span> <span class="default">second</span> +<span class="default">order</span> <span class="default">sections</span> <span class="default">matrix</span><span class="default">. </span><span class="default">sos</span> <span class="default">is</span> <span class="default">a</span> <span class="default">Kx6</span> <span class="default">matrix</span><span class="default">, </span><span class="default">where</span> <span class="default">K</span> <span class="default">is</span> <span class="default">the</span> <span class="default">number</span> <span class="default">of</span> +<span class="default">sections</span><span class="default">. </span><span class="default">Each</span> <span class="default">row</span> <span class="default">of</span> <span class="default">the</span> <span class="default">sos</span> <span class="default">matrix</span> <span class="default">corresponds</span> <span class="default">to</span> <span class="default">a</span> <span class="default">second</span> <span class="default">order</span> +<span class="default">biquad</span> <span class="default">filter</span> +<span class="default">len</span><span class="default"> = </span><span class="functionid">impzlength</span><span class="default">(</span><span class="default">__</span><span class="default">, </span><span class="default">tol</span><span class="default">)</span> +<span class="default">specifies</span> <span class="default">a</span> <span class="default">tolerance</span> <span class="default">for</span> <span class="default">estimating</span> <span class="default">the</span> <span class="default">effective</span> <span class="default">impulse</span> <span class="default">response</span> +<span class="default">length</span> <span class="default">in</span> <span class="default">case</span> <span class="default">of</span> <span class="default">an</span> <span class="default">IIR</span> <span class="default">filter</span><span class="default">. </span><span class="default">By</span> <span class="default">default</span><span class="default">, </span><span class="default">tol</span> <span class="default">is</span><span class="default"> 5</span><span class="default">e</span><span class="default">-5. </span><span class="default">Increasing</span> <span class="default">tol</span> +<span class="default">leads</span> <span class="default">to</span> <span class="default">shorter</span> <span class="default">len</span> <span class="default">and</span> <span class="default">vice</span><span class="default">-</span><span class="default">versa</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl></dl></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> <span class="scilabid">Low</span> <span class="scilabid">pass</span> <span class="scilabid">IIR</span> <a class="scilabmacro" href="scilab://filter">filter</a> <span class="scilabstring">with</span> <span class="scilabstring">pole</span> <span class="scilabstring">at</span> <span class="scilabstring">0.9</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabnumber">1</span><span class="scilabdefault">;</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.9</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">len</span> <span class="scilaboperator">=</span> <span class="scilabid">impzlength</span><span class="scilabopenclose">(</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabid">a</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"><li class="member"><a href="scilab://designfilt" class="link">| digitalFilter | impz | zp2sos</a></li></ul></div> + +<div class="refsection"><h3 class="title">Authors</h3> + <ul class="itemizedlist"><li class="member">Ayush Baid</li></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="impz.html"><< impz</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="interp.html">interp >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/index.html b/help/en_US/scilab_en_US_help/index.html new file mode 100644 index 0000000..c2935b3 --- /dev/null +++ b/help/en_US/scilab_en_US_help/index.html @@ -0,0 +1,1207 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title></title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + + </td> + <td width="40%" class="center"> + + </td> + <td width="30%" class="next"> + + </td> + </tr></table> + <hr /> + </div> + + + + + <br /><br /> + <h3 class="book-title">FOSSEE Signal Processing Toolbox</h3> +<ul class="list-part"><a name="fossee_signal_processing_toolbox_manual"></a><div class="info"></div> + +<li><a href="section_be19baaac84b122b8ad501d34462f5bf.html" class="part">FOSSEE Signal Processing Toolbox</a> +<ul class="list-chapter"><li><a href="ac2poly.html" class="refentry">ac2poly</a> — <span class="refentry-description">Convert autocorrelation sequence to polynomial of prediction filter</span></li> + + + + + +<li><a href="ac2rc.html" class="refentry">ac2rc</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="arParEst.html" class="refentry">arParEst</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="arburg.html" class="refentry">arburg</a> — <span class="refentry-description">This function calculates coefficients of an autoregressive (AR) model of complex data.</span></li> + + + + + +<li><a href="arcov.html" class="refentry">arcov</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="armcov.html" class="refentry">armcov</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="aryule.html" class="refentry">aryule</a> — <span class="refentry-description">This function fits an AR (p)-model with Yule-Walker estimates.</span></li> + + + + + +<li><a href="barthannwin.html" class="refentry">barthannwin</a> — <span class="refentry-description">This function returns the filter coefficients of a modified Bartlett-Hann window.</span></li> + + + + + +<li><a href="bartlett.html" class="refentry">bartlett</a> — <span class="refentry-description">Generates a Bartlett window</span></li> + + + + + +<li><a href="besself.html" class="refentry">besself</a> — <span class="refentry-description">This function generates a Bessel filter.</span></li> + + + + + +<li><a href="bitrevorder.html" class="refentry">bitrevorder</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="blackman.html" class="refentry">blackman</a> — <span class="refentry-description">Generates a Blackman window</span></li> + + + + + +<li><a href="blackmanharris.html" class="refentry">blackmanharris</a> — <span class="refentry-description">This function returns the filter coefficients of a Blackman-Harris window.</span></li> + + + + + +<li><a href="blackmannuttall.html" class="refentry">blackmannuttall</a> — <span class="refentry-description">This function returns the filter coefficients of a Blackman-Nuttall window.</span></li> + + + + + +<li><a href="bohmanwin.html" class="refentry">bohmanwin</a> — <span class="refentry-description">This function returns the filter coefficients of a Bohman window.</span></li> + + + + + +<li><a href="boxcar.html" class="refentry">boxcar</a> — <span class="refentry-description">This function returns the filter coefficients of a rectangular window.</span></li> + + + + + +<li><a href="buffer.html" class="refentry">buffer</a> — <span class="refentry-description">This function buffers the given data into a matrix of signal frames</span></li> + + + + + +<li><a href="butter.html" class="refentry">butter</a> — <span class="refentry-description">This function generates a Butterworth filter.</span></li> + + + + + +<li><a href="buttord.html" class="refentry">buttord</a> — <span class="refentry-description">/This function computes the minimum filter order of a Butterworth filter with the desired response characteristics.</span></li> + + + + + +<li><a href="cconv.html" class="refentry">cconv</a> — <span class="refentry-description">[nargout,nargin]=argn();</span></li> + + + + + +<li><a href="cell2sos.html" class="refentry">cell2sos</a> — <span class="refentry-description">Converts a cell array to a second order section matrix</span></li> + + + + + +<li><a href="cheb1ord.html" class="refentry">cheb1ord</a> — <span class="refentry-description">This function computes the minimum filter order of a Chebyshev type I filter with the desired response characteristics.</span></li> + + + + + +<li><a href="cheb2ord.html" class="refentry">cheb2ord</a> — <span class="refentry-description">This function computes the minimum filter order of a Chebyshev type II filter with the desired response characteristics.</span></li> + + + + + +<li><a href="chebwin.html" class="refentry">chebwin</a> — <span class="refentry-description">This function returns the filter coefficients of a Dolph-Chebyshev window.</span></li> + + + + + +<li><a href="cheby1.html" class="refentry">cheby1</a> — <span class="refentry-description">This function generates a Chebyshev type I filter with rp dB of passband ripple.</span></li> + + + + + +<li><a href="cheby2.html" class="refentry">cheby2</a> — <span class="refentry-description">This function generates a Chebyshev type II filter with rs dB of stopband attenuation.</span></li> + + + + + +<li><a href="check.html" class="refentry">check</a> — <span class="refentry-description">funcprot(0);</span></li> + + + + + +<li><a href="chirp.html" class="refentry">chirp</a> — <span class="refentry-description">This function evaluates a chirp signal at time t.</span></li> + + + + + +<li><a href="clustersegment.html" class="refentry">clustersegment</a> — <span class="refentry-description">This function calculates boundary indexes of clusters of 1’s.</span></li> + + + + + +<li><a href="cmorwavf.html" class="refentry">cmorwavf</a> — <span class="refentry-description">funcprot(0);</span></li> + + + + + +<li><a href="convmtx.html" class="refentry">convmtx</a> — <span class="refentry-description">n=double(n);</span></li> + + + + + +<li><a href="corrmtx.html" class="refentry">corrmtx</a> — <span class="refentry-description">Generate data matrix for autocorrelation matrix estimation</span></li> + + + + + +<li><a href="cummax.html" class="refentry">cummax</a> — <span class="refentry-description">Cumulative maximum</span></li> + + + + + +<li><a href="cummin.html" class="refentry">cummin</a> — <span class="refentry-description">Cumulative minimum</span></li> + + + + + +<li><a href="db.html" class="refentry">db</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="db2pow.html" class="refentry">db2pow</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="dctmtx.html" class="refentry">dctmtx</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="decimate.html" class="refentry">decimate</a> — <span class="refentry-description">rhs = argn(2)</span></li> + + + + + +<li><a href="dftmtx.html" class="refentry">dftmtx</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="diric.html" class="refentry">diric</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="downsample.html" class="refentry">downsample</a> — <span class="refentry-description">This function downsamples the signal by selecting every nth element.</span></li> + + + + + +<li><a href="dutycycle.html" class="refentry">dutycycle</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="ellip.html" class="refentry">ellip</a> — <span class="refentry-description">This function generates an elliptic or Cauer filter with rp dB of passband ripple and rs dB of stopband attenuation.</span></li> + + + + + +<li><a href="ellipord.html" class="refentry">ellipord</a> — <span class="refentry-description">This function computes the minimum filter order of an elliptic filter with the desired response characteristics.</span></li> + + + + + +<li><a href="enbw.html" class="refentry">enbw</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="eqtflength.html" class="refentry">eqtflength</a> — <span class="refentry-description">Modifies the input vector to give output vectors of the same length</span></li> + + + + + +<li><a href="falltime.html" class="refentry">falltime</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="fftfilt.html" class="refentry">fftfilt</a> — <span class="refentry-description">Performs FFT-based FIR filtering using overlap-add method</span></li> + + + + + +<li><a href="filternorm.html" class="refentry">filternorm</a> — <span class="refentry-description">Calculates the L-2 norm or L-infinity norm of a digital filter</span></li> + + + + + +<li><a href="filtfilt.html" class="refentry">filtfilt</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="filtic.html" class="refentry">filtic</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="filtord.html" class="refentry">filtord</a> — <span class="refentry-description">and denominator coefficients, a.</span></li> + + + + + +<li><a href="firpmord.html" class="refentry">firpmord</a> — <span class="refentry-description">Parks-McClennan optimal FIR filter order estimation</span></li> + + + + + +<li><a href="firtype.html" class="refentry">firtype</a> — <span class="refentry-description">if (type(b)~=1) then</span></li> + + + + + +<li><a href="flattopwin.html" class="refentry">flattopwin</a> — <span class="refentry-description">This function returns the filter coefficients of a Flat Top window.</span></li> + + + + + +<li><a href="fracshift.html" class="refentry">fracshift</a> — <span class="refentry-description">This function shifts the series x supplied as input argument by a number of samples d.</span></li> + + + + + +<li><a href="fwhm.html" class="refentry">fwhm</a> — <span class="refentry-description">This function computes peak full width at half minimum or at another level of peak minimum for vector or matrix data y supplied as input.</span></li> + + + + + +<li><a href="fwhmjlt.html" class="refentry">fwhmjlt</a> — <span class="refentry-description">rhs = argn(2)</span></li> + + + + + +<li><a href="gauspuls.html" class="refentry">gauspuls</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="gaussdesign.html" class="refentry">gaussdesign</a> — <span class="refentry-description">GAUSSDESIGN designs a Gaussian pulse-shaping filter which is a low pass FIR</span></li> + + + + + +<li><a href="gaussian.html" class="refentry">gaussian</a> — <span class="refentry-description">This function returns a Gaussian convolution window.</span></li> + + + + + +<li><a href="gausswin.html" class="refentry">gausswin</a> — <span class="refentry-description">This function returns the filter coefficients of a Gaussian window.</span></li> + + + + + +<li><a href="gmonopuls.html" class="refentry">gmonopuls</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="goertzel.html" class="refentry">goertzel</a> — <span class="refentry-description">Computes DFT using the second order Goertzel Algorithm</span></li> + + + + + +<li><a href="grpdelay.html" class="refentry">grpdelay</a> — <span class="refentry-description">This function computes the group delay of a filter.</span></li> + + + + + +<li><a href="hann.html" class="refentry">hann</a> — <span class="refentry-description">This function returns the filter coefficients of a Hanning window.</span></li> + + + + + +<li><a href="helperHarmonicDistortionAmplifier.html" class="refentry">helperHarmonicDistortionAmplifier</a> — <span class="refentry-description">helperHarmonicDistortionADC Helper function for HarmonicDistortionExample.m</span></li> + + + + + +<li><a href="icceps.html" class="refentry">icceps</a> — <span class="refentry-description">ICCEPS computes the inverse cepstrum of a real-valued input. This spectrum</span></li> + + + + + +<li><a href="iirlp2mb.html" class="refentry">iirlp2mb</a> — <span class="refentry-description">This function does IIR Low Pass Filter to Multiband Filter Transformation.</span></li> + + + + + +<li><a href="impinvar.html" class="refentry">impinvar</a> — <span class="refentry-description">This function converts analog filter with coefficients b and a to digital, conserving impulse response.</span></li> + + + + + +<li><a href="impz.html" class="refentry">impz</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="impzlength.html" class="refentry">impzlength</a> — <span class="refentry-description">Impulse response length</span></li> + + + + + +<li><a href="interp.html" class="refentry">interp</a> — <span class="refentry-description">function y = interp(x, q, n, Wc)</span></li> + + + + + +<li><a href="intfilt.html" class="refentry">intfilt</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="invimpinvar.html" class="refentry">invimpinvar</a> — <span class="refentry-description">This function converts digital filter with coefficients b and a to analog, conserving impulse response.</span></li> + + + + + +<li><a href="is2rc.html" class="refentry">is2rc</a> — <span class="refentry-description">Convert inverse sine parameters to reflection coefficients</span></li> + + + + + +<li><a href="isallpass.html" class="refentry">isallpass</a> — <span class="refentry-description">[nargout,nargin]=argn();</span></li> + + + + + +<li><a href="isfir.html" class="refentry">isfir</a> — <span class="refentry-description">[nargout,nargin]=argn();</span></li> + + + + + +<li><a href="islinphase.html" class="refentry">islinphase</a> — <span class="refentry-description">[nargout,nargin]=argn();</span></li> + + + + + +<li><a href="ismaxphase.html" class="refentry">ismaxphase</a> — <span class="refentry-description">[nargout,nargin]=argn();</span></li> + + + + + +<li><a href="isminphase.html" class="refentry">isminphase</a> — <span class="refentry-description">[nargout,nargin]=argn();</span></li> + + + + + +<li><a href="isstable.html" class="refentry">isstable</a> — <span class="refentry-description">SOS matrix corresponds to [bi(1) bi(2) bi(3) ai(1) ai(2) ai(3)].</span></li> + + + + + +<li><a href="kaiser.html" class="refentry">kaiser</a> — <span class="refentry-description">This function returns the filter coefficients of a Kaiser window.</span></li> + + + + + +<li><a href="lar2rc.html" class="refentry">lar2rc</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="latc2tf.html" class="refentry">latc2tf</a> — <span class="refentry-description">Convert lattice filter parameters to transfer function coefficients</span></li> + + + + + +<li><a href="latcfilt.html" class="refentry">latcfilt</a> — <span class="refentry-description">function [f,g,zo]=latcfilt(k,x,v,zi,dim)</span></li> + + + + + +<li><a href="latcfilt1.html" class="refentry">latcfilt1</a> — <span class="refentry-description">function [f,g,zo]=latcfilt1(k,v,x,zi)</span></li> + + + + + +<li><a href="levdown.html" class="refentry">levdown</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="levin.html" class="refentry">levin</a> — <span class="refentry-description">[ar,sigma2,rc]=lev(r)</span></li> + + + + + +<li><a href="levinson.html" class="refentry">levinson</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="lpc.html" class="refentry">lpc</a> — <span class="refentry-description">Linear prediction filter coefficients</span></li> + + + + + +<li><a href="lsf2poly.html" class="refentry">lsf2poly</a> — <span class="refentry-description">lsf2poly function convert line spectral frequencies to prediction polynomial.</span></li> + + + + + +<li><a href="mag2db.html" class="refentry">mag2db</a> — <span class="refentry-description">funcprot(0);</span></li> + + + + + +<li><a href="marcumq.html" class="refentry">marcumq</a> — <span class="refentry-description">This function computes the generalized Marcum Q function of order m with noncentrality parameter a and argument b.</span></li> + + + + + +<li><a href="medfilt1.html" class="refentry">medfilt1</a> — <span class="refentry-description">1D median filtering</span></li> + + + + + +<li><a href="mexihat.html" class="refentry">mexihat</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="meyeraux.html" class="refentry">meyeraux</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="midcross.html" class="refentry">midcross</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="modulate.html" class="refentry">modulate</a> — <span class="refentry-description">Modulates signal according to the modulation method</span></li> + + + + + +<li><a href="morlet.html" class="refentry">morlet</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="movingrms.html" class="refentry">movingrms</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="musicBase.html" class="refentry">musicBase</a> — <span class="refentry-description">Implements the core of the MUSIC algorithm</span></li> + + + + + +<li><a href="nnls.html" class="refentry">nnls</a> — <span class="refentry-description">Non Negative Least Squares (nnls) for Ex=f with the constraint x>=0</span></li> + + + + + +<li><a href="nuttallwin.html" class="refentry">nuttallwin</a> — <span class="refentry-description">This function returns the filter coefficients of a Blackman-Harris window.</span></li> + + + + + +<li><a href="parzenwin.html" class="refentry">parzenwin</a> — <span class="refentry-description">This function returns the filter coefficients of a Parzen window.</span></li> + + + + + +<li><a href="pchip.html" class="refentry">pchip</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="pchips.html" class="refentry">pchips</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="peak2peak.html" class="refentry">peak2peak</a> — <span class="refentry-description">funcprot(0);</span></li> + + + + + +<li><a href="peak2rms.html" class="refentry">peak2rms</a> — <span class="refentry-description">This function calculates the ratio of peak magnitude to the Root Mean Square(RMS) value.</span></li> + + + + + +<li><a href="peig.html" class="refentry">peig</a> — <span class="refentry-description">Psuedospectrum using the eigenvector method.</span></li> + + + + + +<li><a href="periodogram.html" class="refentry">periodogram</a> — <span class="refentry-description">funcprot(0);</span></li> + + + + + +<li><a href="phaseInputParseAs_ab.html" class="refentry">phaseInputParseAs_ab</a> — <span class="refentry-description">fs=0;</span></li> + + + + + +<li><a href="phaseInputParseAs_sos.html" class="refentry">phaseInputParseAs_sos</a> — <span class="refentry-description">fs=0;</span></li> + + + + + +<li><a href="phasedelay.html" class="refentry">phasedelay</a> — <span class="refentry-description">cas variable is 2 if sos form is involved and 1 if direct rational form is given</span></li> + + + + + +<li><a href="phasez.html" class="refentry">phasez</a> — <span class="refentry-description">cas variable is 2 if sos form is involved and 1 if direct rational form is given</span></li> + + + + + +<li><a href="pmusic.html" class="refentry">pmusic</a> — <span class="refentry-description">Psuedospectrum using MUSIC algorithm</span></li> + + + + + +<li><a href="poly2ac.html" class="refentry">poly2ac</a> — <span class="refentry-description">Convert prediction polynomial to autocorrelation sequence.</span></li> + + + + + +<li><a href="poly2lsf.html" class="refentry">poly2lsf</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="poly2rc.html" class="refentry">poly2rc</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="polyscale.html" class="refentry">polyscale</a> — <span class="refentry-description">errcheck1</span></li> + + + + + +<li><a href="polystab.html" class="refentry">polystab</a> — <span class="refentry-description">This function stabilizes the polynomial transfer function.</span></li> + + + + + +<li><a href="polyval.html" class="refentry">polyval</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="pow2db.html" class="refentry">pow2db</a> — <span class="refentry-description">rhs = argn(2)</span></li> + + + + + +<li><a href="primitive.html" class="refentry">primitive</a> — <span class="refentry-description">This function calculates the primitive of a given function supplied as input.</span></li> + + + + + +<li><a href="prony.html" class="refentry">prony</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="pulseperiod.html" class="refentry">pulseperiod</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="pulsesep.html" class="refentry">pulsesep</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="pulsewidth.html" class="refentry">pulsewidth</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="pulstran.html" class="refentry">pulstran</a> — <span class="refentry-description">This function generates the signal y = sum(func(t+d,...)) for each d.</span></li> + + + + + +<li><a href="rc2ac.html" class="refentry">rc2ac</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="rc2is.html" class="refentry">rc2is</a> — <span class="refentry-description">Convert reflection coefficients to inverse sine parameters</span></li> + + + + + +<li><a href="rc2lar.html" class="refentry">rc2lar</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="rc2poly.html" class="refentry">rc2poly</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="rcosdesign.html" class="refentry">rcosdesign</a> — <span class="refentry-description">RCOSDESIGN computes the raised cosine FIR filter</span></li> + + + + + +<li><a href="rectpuls.html" class="refentry">rectpuls</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="rectwin.html" class="refentry">rectwin</a> — <span class="refentry-description">This function returns the filter coefficients of a rectangular window.</span></li> + + + + + +<li><a href="resample.html" class="refentry">resample</a> — <span class="refentry-description">This function resamples in the input sequence x supplied by a factor of p/q.</span></li> + + + + + +<li><a href="residued.html" class="refentry">residued</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="residuez.html" class="refentry">residuez</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="risetime.html" class="refentry">risetime</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="rlevinson.html" class="refentry">rlevinson</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="rms.html" class="refentry">rms</a> — <span class="refentry-description">convert i/p values to their ascii values if they are of type char</span></li> + + + + + +<li><a href="rooteig.html" class="refentry">rooteig</a> — <span class="refentry-description">Frequencies and power of sinusoids using eigenvector algorithm</span></li> + + + + + +<li><a href="rootmusic.html" class="refentry">rootmusic</a> — <span class="refentry-description">Frequencies and power of sinusoids using the root MUSIC algorithm</span></li> + + + + + +<li><a href="rssq.html" class="refentry">rssq</a> — <span class="refentry-description">This function calculates the square root of the sum of values of input vector IN.</span></li> + + + + + +<li><a href="sampled2continuous.html" class="refentry">sampled2continuous</a> — <span class="refentry-description">This function calculates the output reconstructed from the samples n supplied as input, at a rate of 1/s samples per unit time.</span></li> + + + + + +<li><a href="sawtooth.html" class="refentry">sawtooth</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="schtrig.html" class="refentry">schtrig</a> — <span class="refentry-description">This function implements a multisignal Schmitt triggers with lev levels supplied as input.</span></li> + + + + + +<li><a href="schurrc.html" class="refentry">schurrc</a> — <span class="refentry-description">narginchk(1,1,argn(2));</span></li> + + + + + +<li><a href="seqperiod.html" class="refentry">seqperiod</a> — <span class="refentry-description">Calculates the period of a sequence</span></li> + + + + + +<li><a href="sgolay.html" class="refentry">sgolay</a> — <span class="refentry-description">This function computes the filter coefficients for all Savitzsky-Golay smoothing filters.</span></li> + + + + + +<li><a href="sgolayfilt.html" class="refentry">sgolayfilt</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="shanwavf.html" class="refentry">shanwavf</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="shiftdata.html" class="refentry">shiftdata</a> — <span class="refentry-description">Shifts data by rearranging dimensions</span></li> + + + + + +<li><a href="slewrate.html" class="refentry">slewrate</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="sos2cell.html" class="refentry">sos2cell</a> — <span class="refentry-description">Converts a second order section matrix to a cell array</span></li> + + + + + +<li><a href="sos2ss.html" class="refentry">sos2ss</a> — <span class="refentry-description">[nargout,nargin]=argn();</span></li> + + + + + +<li><a href="sos2tf.html" class="refentry">sos2tf</a> — <span class="refentry-description">This function converts series second-order sections to direct H(z) = B(z)/A(z) form.</span></li> + + + + + +<li><a href="sos2zp.html" class="refentry">sos2zp</a> — <span class="refentry-description">This function converts series second-order sections to zeros, poles, and gains (pole residues).</span></li> + + + + + +<li><a href="sosbreak.html" class="refentry">sosbreak</a> — <span class="refentry-description">function for breaking a polynomial in second order polynomials (and an extra linear)</span></li> + + + + + +<li><a href="sosfilt.html" class="refentry">sosfilt</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="specgram.html" class="refentry">specgram</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="ss2sos.html" class="refentry">ss2sos</a> — <span class="refentry-description">not taking if, order and scale as input since they do not seem useful</span></li> + + + + + +<li><a href="statelevels.html" class="refentry">statelevels</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="stmcb.html" class="refentry">stmcb</a> — <span class="refentry-description">function [b,a] = stmcb( x, u_in, q, p, niter, a_in )</span></li> + + + + + +<li><a href="strips.html" class="refentry">strips</a> — <span class="refentry-description">Plots vector or matrix in strips</span></li> + + + + + +<li><a href="subspaceMethodsInputParser.html" class="refentry">subspaceMethodsInputParser</a> — <span class="refentry-description">Input parser to be used by pmusic and peig</span></li> + + + + + +<li><a href="tf2sos.html" class="refentry">tf2sos</a> — <span class="refentry-description">This function converts direct-form filter coefficients to series second-order sections.</span></li> + + + + + +<li><a href="tf2zp.html" class="refentry">tf2zp</a> — <span class="refentry-description">[z,p,k]= tf2zp(b,a);</span></li> + + + + + +<li><a href="tf2zpk.html" class="refentry">tf2zpk</a> — <span class="refentry-description">form</span></li> + + + + + +<li><a href="transpose.html" class="refentry">transpose</a> — <span class="refentry-description">funcprot(0);</span></li> + + + + + +<li><a href="trial_iirlp2mb.html" class="refentry">trial_iirlp2mb</a> — <span class="refentry-description">B = varargin(1)</span></li> + + + + + +<li><a href="triang.html" class="refentry">triang</a> — <span class="refentry-description">This function returns the filter coefficients of a triangular window.</span></li> + + + + + +<li><a href="tripuls.html" class="refentry">tripuls</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="truth.html" class="refentry">truth</a> — <span class="refentry-description">y = %t</span></li> + + + + + +<li><a href="tukeywin.html" class="refentry">tukeywin</a> — <span class="refentry-description">This function returns the filter coefficients of a Tukey window.</span></li> + + + + + +<li><a href="udecode.html" class="refentry">udecode</a> — <span class="refentry-description">Decodes the input uniformly quantized values</span></li> + + + + + +<li><a href="uencode.html" class="refentry">uencode</a> — <span class="refentry-description">Performs uniform quantization of the input into 2^n levels</span></li> + + + + + +<li><a href="ultrwin.html" class="refentry">ultrwin</a> — <span class="refentry-description">This function returns the coefficients of an Ultraspherical window.</span></li> + + + + + +<li><a href="unshiftdata.html" class="refentry">unshiftdata</a> — <span class="refentry-description">Inverts the effect of shiftdata</span></li> + + + + + +<li><a href="upfirdn.html" class="refentry">upfirdn</a> — <span class="refentry-description">This function upsamples the input data, applies the FIR filter and then downsamples it.</span></li> + + + + + +<li><a href="upsample.html" class="refentry">upsample</a> — <span class="refentry-description">This function upsamples the signal, inserting n-1 zeros between every element.</span></li> + + + + + +<li><a href="upsamplefill.html" class="refentry">upsamplefill</a> — <span class="refentry-description">This function upsamples a vector interleaving given values or copies of the vector elements.</span></li> + + + + + +<li><a href="var.html" class="refentry">var</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="vco.html" class="refentry">vco</a> — <span class="refentry-description">Voltage Controlled Oscillator</span></li> + + + + + +<li><a href="welchwin.html" class="refentry">welchwin</a> — <span class="refentry-description">This function returns the filter coefficients of a Welch window.</span></li> + + + + + +<li><a href="window.html" class="refentry">window</a> — <span class="refentry-description">This function creates an m-point window from the function f given as input.</span></li> + + + + + +<li><a href="wkeep.html" class="refentry">wkeep</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="wrev.html" class="refentry">wrev</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="xcorr2.html" class="refentry">xcorr2</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="zerocrossing.html" class="refentry">zerocrossing</a> — <span class="refentry-description">This function estimates the points at which a given waveform crosses the x-axis.</span></li> + + + + + +<li><a href="zp2sos.html" class="refentry">zp2sos</a> — <span class="refentry-description">This function converts filter poles and zeros to second-order sections.</span></li> + + + + + +<li><a href="zplane.html" class="refentry">zplane</a> — <span class="refentry-description">funcprot(0);</span></li></ul></li></ul> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + + </td> + <td width="40%" class="center"> + + </td> + <td width="30%" class="next"> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/interp.html b/help/en_US/scilab_en_US_help/interp.html new file mode 100644 index 0000000..cd987d8 --- /dev/null +++ b/help/en_US/scilab_en_US_help/interp.html @@ -0,0 +1,85 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>interp</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="impzlength.html"><< impzlength</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="intfilt.html">intfilt >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > interp</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">interp</h1> + <p class="refpurpose">function y = interp(x, q, n, Wc)</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default"> = </span><span class="functionid">interp</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">q</span><span class="default">)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">interp</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">q</span><span class="default">, </span><span class="default">n</span><span class="default">)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">interp</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">q</span><span class="default">, </span><span class="default">n</span><span class="default">, </span><span class="default">Wc</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">scalar or vector of complex or real numbers</p></dd></dt> + <dt><span class="term">q:</span> + <dd><p class="para">positive integer value, or logical</p></dd></dt> + <dt><span class="term">n:</span> + <dd><p class="para">positive integer, default value 4</p></dd></dt> + <dt><span class="term">Wc:</span> + <dd><p class="para">non decreasing vector or scalar, starting from 0 uptill 1, default value 0.5</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function upsamples the signal x by a factor of q, using an order 2*q*n+1 FIR filter. +The second argument q must be an integer. The default values of the third and fourth arguments (n, Wc) are 4 and 0.5 respectively.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcommand">interp</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.4792743</span> <span class="scilabnumber">0.3626016</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="impzlength.html"><< impzlength</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="intfilt.html">intfilt >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/intfilt.html b/help/en_US/scilab_en_US_help/intfilt.html new file mode 100644 index 0000000..c9b1ec1 --- /dev/null +++ b/help/en_US/scilab_en_US_help/intfilt.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>intfilt</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="interp.html"><< interp</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="invimpinvar.html">invimpinvar >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > intfilt</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">intfilt</h1> + <p class="refpurpose"></p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="interp.html"><< interp</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="invimpinvar.html">invimpinvar >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/invimpinvar.html b/help/en_US/scilab_en_US_help/invimpinvar.html new file mode 100644 index 0000000..1870b34 --- /dev/null +++ b/help/en_US/scilab_en_US_help/invimpinvar.html @@ -0,0 +1,92 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>invimpinvar</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="intfilt.html"><< intfilt</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="is2rc.html">is2rc >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > invimpinvar</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">invimpinvar</h1> + <p class="refpurpose">This function converts digital filter with coefficients b and a to analog, conserving impulse response.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">] = </span><span class="default">impinvar</span><span class="default"> (</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">)</span> +<span class="default">[</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">] = </span><span class="default">impinvar</span><span class="default"> (</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">, </span><span class="default">fs</span><span class="default">)</span> +<span class="default">[</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">] = </span><span class="default">impinvar</span><span class="default"> (</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">, </span><span class="default">fs</span><span class="default">, </span><span class="default">tol</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">b:</span> + <dd><p class="para">real or complex valued scalar or vector</p></dd></dt> + <dt><span class="term">a:</span> + <dd><p class="para">real or complex valued scalar or vector, order should be greater than b</p></dd></dt> + <dt><span class="term">fs:</span> + <dd><p class="para">real or complex value, default value 1Hz</p></dd></dt> + <dt><span class="term">tol:</span> + <dd><p class="para">real or complex value, default value 0.0001</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function converts digital filter with coefficients b and a to analog, conserving impulse response. +This function does the inverse of impinvar.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabnumber">0.0081000</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">2.0000000</span><span class="scilabdefault">,</span> <span class="scilabnumber">0.56435378</span><span class="scilabdefault">,</span> <span class="scilabnumber">0.4572792</span><span class="scilabdefault">,</span> <span class="scilabnumber">0.00705544</span><span class="scilabdefault">,</span> <span class="scilabnumber">0.091000</span><span class="scilabopenclose">]</span> +<span class="scilabopenclose">[</span><span class="scilabid">ay</span><span class="scilabdefault">,</span> <span class="scilabid">by</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">invimpinvar</span><span class="scilabopenclose">(</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabnumber">10</span><span class="scilabopenclose">)</span> +<span class="scilabid">ay</span> <span class="scilaboperator">=</span> +<span class="scilaboperator">-</span><span class="scilabnumber">1.6940e-16</span> <span class="scilabnumber">4.6223e+00</span> <span class="scilaboperator">-</span><span class="scilabnumber">4.5210e+00</span> <span class="scilabnumber">7.2880e+02</span> +<span class="scilabid">by</span> <span class="scilaboperator">=</span> +<span class="scilabid">Columns</span> <span class="scilabnumber">1</span> <span class="scilabid">through</span> <span class="scilabnumber">4</span><span class="scilabspecial">:</span> +<span class="scilabnumber">1.0000e+00</span> <span class="scilabnumber">3.0900e+01</span> <span class="scilabnumber">9.6532e+02</span> <span class="scilabnumber">1.2232e+04</span> +<span class="scilabid">Column</span> <span class="scilabnumber">5</span><span class="scilabspecial">:</span> +<span class="scilabnumber">1.1038e+05</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="intfilt.html"><< intfilt</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="is2rc.html">is2rc >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/is2rc.html b/help/en_US/scilab_en_US_help/is2rc.html new file mode 100644 index 0000000..3404723 --- /dev/null +++ b/help/en_US/scilab_en_US_help/is2rc.html @@ -0,0 +1,89 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>is2rc</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="invimpinvar.html"><< invimpinvar</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="isallpass.html">isallpass >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > is2rc</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">is2rc</h1> + <p class="refpurpose">Convert inverse sine parameters to reflection coefficients</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">K</span><span class="default"> = </span><span class="functionid">is2rc</span><span class="default">(</span><span class="default">isin</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">isin:</span> + <dd><p class="para">input inverse sine parameters. Needs to be an array real numbers</p></dd></dt> + <dt><span class="term">k:</span> + <dd><p class="para">output reflection coefficients corresponding to the reflection coefficients in input</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This function returns a vector of reflection coefficients from a vector of inverse sine parameters +output array has k(i) = sin(pi/2*isin(i))</p> + <p class="para">Example +k = [0.3090 0.9801 0.0031 0.0082 -0.0082]; +isin = rc2is(k) //Gives inverse sine parameters +k_dash = is2rc(isin)</p> + <p class="para"></p></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"><li class="member"><a href="rc2is.html" class="link">rc2is</a></li> + <li class="member"><a href="rc2poly.html" class="link">rc2poly</a></li> + <li class="member"><a href="rc2ac.html" class="link">rc2ac</a></li> + <li class="member"><a href="rc2lar.html" class="link">rc2lar</a></li> + <li class="member"><a href="scilab://Author" class="link">Author</a></li> + <li class="member"><a href="scilab://Parthe" class="link">Pandit</a></li></ul></div> + +<div class="refsection"><h3 class="title">Bibliography</h3> + <p class="para">J.R. Deller, J.G. Proakis, J.H.L. Hansen, "Discrete-Time Processing of Speech Signals", Prentice Hall, Section 7.4.5</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="invimpinvar.html"><< invimpinvar</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="isallpass.html">isallpass >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/isallpass.html b/help/en_US/scilab_en_US_help/isallpass.html new file mode 100644 index 0000000..ce13e19 --- /dev/null +++ b/help/en_US/scilab_en_US_help/isallpass.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>isallpass</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="is2rc.html"><< is2rc</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="isfir.html">isfir >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > isallpass</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">isallpass</h1> + <p class="refpurpose">[nargout,nargin]=argn();</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="is2rc.html"><< is2rc</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="isfir.html">isfir >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/isfir.html b/help/en_US/scilab_en_US_help/isfir.html new file mode 100644 index 0000000..d9beb51 --- /dev/null +++ b/help/en_US/scilab_en_US_help/isfir.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>isfir</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="isallpass.html"><< isallpass</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="islinphase.html">islinphase >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > isfir</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">isfir</h1> + <p class="refpurpose">[nargout,nargin]=argn();</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="isallpass.html"><< isallpass</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="islinphase.html">islinphase >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/islinphase.html b/help/en_US/scilab_en_US_help/islinphase.html new file mode 100644 index 0000000..d76ffd7 --- /dev/null +++ b/help/en_US/scilab_en_US_help/islinphase.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>islinphase</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="isfir.html"><< isfir</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="ismaxphase.html">ismaxphase >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > islinphase</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">islinphase</h1> + <p class="refpurpose">[nargout,nargin]=argn();</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="isfir.html"><< isfir</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="ismaxphase.html">ismaxphase >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/ismaxphase.html b/help/en_US/scilab_en_US_help/ismaxphase.html new file mode 100644 index 0000000..44c1216 --- /dev/null +++ b/help/en_US/scilab_en_US_help/ismaxphase.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>ismaxphase</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="islinphase.html"><< islinphase</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="isminphase.html">isminphase >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > ismaxphase</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">ismaxphase</h1> + <p class="refpurpose">[nargout,nargin]=argn();</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="islinphase.html"><< islinphase</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="isminphase.html">isminphase >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/isminphase.html b/help/en_US/scilab_en_US_help/isminphase.html new file mode 100644 index 0000000..43ee080 --- /dev/null +++ b/help/en_US/scilab_en_US_help/isminphase.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>isminphase</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="ismaxphase.html"><< ismaxphase</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="isstable.html">isstable >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > isminphase</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">isminphase</h1> + <p class="refpurpose">[nargout,nargin]=argn();</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="ismaxphase.html"><< ismaxphase</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="isstable.html">isstable >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/isstable.html b/help/en_US/scilab_en_US_help/isstable.html new file mode 100644 index 0000000..b106c9f --- /dev/null +++ b/help/en_US/scilab_en_US_help/isstable.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>isstable</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="isminphase.html"><< isminphase</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="kaiser.html">kaiser >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > isstable</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">isstable</h1> + <p class="refpurpose">SOS matrix corresponds to [bi(1) bi(2) bi(3) ai(1) ai(2) ai(3)].</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="isminphase.html"><< isminphase</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="kaiser.html">kaiser >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/jhelpidx.xml b/help/en_US/scilab_en_US_help/jhelpidx.xml new file mode 100644 index 0000000..aa5a66e --- /dev/null +++ b/help/en_US/scilab_en_US_help/jhelpidx.xml @@ -0,0 +1,3 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?> +<!DOCTYPE index PUBLIC "-//Sun Microsystems Inc.//DTD JavaHelp Index Version 1.0//EN" "http://java.sun.com/products/javahelp/index_1_0.dtd"> +<index version="1.0"/>
\ No newline at end of file diff --git a/help/en_US/scilab_en_US_help/jhelpmap.jhm b/help/en_US/scilab_en_US_help/jhelpmap.jhm new file mode 100644 index 0000000..14d7886 --- /dev/null +++ b/help/en_US/scilab_en_US_help/jhelpmap.jhm @@ -0,0 +1,199 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?> +<!DOCTYPE map PUBLIC "-//Sun Microsystems Inc.//DTD JavaHelp Map Version 1.0//EN" "http://java.sun.com/products/javahelp/map_1_0.dtd"> +<map version="1.0"> +<mapID target="index" url="index.html"/> +<mapID target="section_be19baaac84b122b8ad501d34462f5bf" url="section_be19baaac84b122b8ad501d34462f5bf.html"/> +<mapID target="ac2poly" url="ac2poly.html"/> +<mapID target="ac2rc" url="ac2rc.html"/> +<mapID target="arParEst" url="arParEst.html"/> +<mapID target="arburg" url="arburg.html"/> +<mapID target="arcov" url="arcov.html"/> +<mapID target="armcov" url="armcov.html"/> +<mapID target="aryule" url="aryule.html"/> +<mapID target="barthannwin" url="barthannwin.html"/> +<mapID target="bartlett" url="bartlett.html"/> +<mapID target="besself" url="besself.html"/> +<mapID target="bitrevorder" url="bitrevorder.html"/> +<mapID target="blackman" url="blackman.html"/> +<mapID target="blackmanharris" url="blackmanharris.html"/> +<mapID target="blackmannuttall" url="blackmannuttall.html"/> +<mapID target="bohmanwin" url="bohmanwin.html"/> +<mapID target="boxcar" url="boxcar.html"/> +<mapID target="buffer" url="buffer.html"/> +<mapID target="butter" url="butter.html"/> +<mapID target="buttord" url="buttord.html"/> +<mapID target="cconv" url="cconv.html"/> +<mapID target="cell2sos" url="cell2sos.html"/> +<mapID target="cheb1ord" url="cheb1ord.html"/> +<mapID target="cheb2ord" url="cheb2ord.html"/> +<mapID target="chebwin" url="chebwin.html"/> +<mapID target="cheby1" url="cheby1.html"/> +<mapID target="cheby2" url="cheby2.html"/> +<mapID target="check" url="check.html"/> +<mapID target="chirp" url="chirp.html"/> +<mapID target="clustersegment" url="clustersegment.html"/> +<mapID target="cmorwavf" url="cmorwavf.html"/> +<mapID target="convmtx" url="convmtx.html"/> +<mapID target="corrmtx" url="corrmtx.html"/> +<mapID target="cummax" url="cummax.html"/> +<mapID target="cummin" url="cummin.html"/> +<mapID target="db" url="db.html"/> +<mapID target="db2pow" url="db2pow.html"/> +<mapID target="dctmtx" url="dctmtx.html"/> +<mapID target="decimate" url="decimate.html"/> +<mapID target="dftmtx" url="dftmtx.html"/> +<mapID target="diric" url="diric.html"/> +<mapID target="downsample" url="downsample.html"/> +<mapID target="dutycycle" url="dutycycle.html"/> +<mapID target="ellip" url="ellip.html"/> +<mapID target="ellipord" url="ellipord.html"/> +<mapID target="enbw" url="enbw.html"/> +<mapID target="eqtflength" url="eqtflength.html"/> +<mapID target="falltime" url="falltime.html"/> +<mapID target="fftfilt" url="fftfilt.html"/> +<mapID target="filternorm" url="filternorm.html"/> +<mapID target="filtfilt" url="filtfilt.html"/> +<mapID target="filtic" url="filtic.html"/> +<mapID target="filtord" url="filtord.html"/> +<mapID target="firpmord" url="firpmord.html"/> +<mapID target="firtype" url="firtype.html"/> +<mapID target="flattopwin" url="flattopwin.html"/> +<mapID target="fracshift" url="fracshift.html"/> +<mapID target="fwhm" url="fwhm.html"/> +<mapID target="fwhmjlt" url="fwhmjlt.html"/> +<mapID target="gauspuls" url="gauspuls.html"/> +<mapID target="gaussdesign" url="gaussdesign.html"/> +<mapID target="gaussian" url="gaussian.html"/> +<mapID target="gausswin" url="gausswin.html"/> +<mapID target="gmonopuls" url="gmonopuls.html"/> +<mapID target="goertzel" url="goertzel.html"/> +<mapID target="grpdelay" url="grpdelay.html"/> +<mapID target="hann" url="hann.html"/> +<mapID target="helperHarmonicDistortionAmplifier" url="helperHarmonicDistortionAmplifier.html"/> +<mapID target="icceps" url="icceps.html"/> +<mapID target="iirlp2mb" url="iirlp2mb.html"/> +<mapID target="impinvar" url="impinvar.html"/> +<mapID target="impz" url="impz.html"/> +<mapID target="impzlength" url="impzlength.html"/> +<mapID target="interp" url="interp.html"/> +<mapID target="intfilt" url="intfilt.html"/> +<mapID target="invimpinvar" url="invimpinvar.html"/> +<mapID target="is2rc" url="is2rc.html"/> +<mapID target="isallpass" url="isallpass.html"/> +<mapID target="isfir" url="isfir.html"/> +<mapID target="islinphase" url="islinphase.html"/> +<mapID target="ismaxphase" url="ismaxphase.html"/> +<mapID target="isminphase" url="isminphase.html"/> +<mapID target="isstable" url="isstable.html"/> +<mapID target="kaiser" url="kaiser.html"/> +<mapID target="lar2rc" url="lar2rc.html"/> +<mapID target="latc2tf" url="latc2tf.html"/> +<mapID target="latcfilt" url="latcfilt.html"/> +<mapID target="latcfilt1" url="latcfilt1.html"/> +<mapID target="levdown" url="levdown.html"/> +<mapID target="levin" url="levin.html"/> +<mapID target="levinson" url="levinson.html"/> +<mapID target="lpc" url="lpc.html"/> +<mapID target="lsf2poly" url="lsf2poly.html"/> +<mapID target="mag2db" url="mag2db.html"/> +<mapID target="marcumq" url="marcumq.html"/> +<mapID target="medfilt1" url="medfilt1.html"/> +<mapID target="mexihat" url="mexihat.html"/> +<mapID target="meyeraux" url="meyeraux.html"/> +<mapID target="midcross" url="midcross.html"/> +<mapID target="modulate" url="modulate.html"/> +<mapID target="morlet" url="morlet.html"/> +<mapID target="movingrms" url="movingrms.html"/> +<mapID target="musicBase" url="musicBase.html"/> +<mapID target="nnls" url="nnls.html"/> +<mapID target="nuttallwin" url="nuttallwin.html"/> +<mapID target="parzenwin" url="parzenwin.html"/> +<mapID target="pchip" url="pchip.html"/> +<mapID target="pchips" url="pchips.html"/> +<mapID target="peak2peak" url="peak2peak.html"/> +<mapID target="peak2rms" url="peak2rms.html"/> +<mapID target="peig" url="peig.html"/> +<mapID target="periodogram" url="periodogram.html"/> +<mapID target="phaseInputParseAs_ab" url="phaseInputParseAs_ab.html"/> +<mapID target="phaseInputParseAs_sos" url="phaseInputParseAs_sos.html"/> +<mapID target="phasedelay" url="phasedelay.html"/> +<mapID target="phasez" url="phasez.html"/> +<mapID target="pmusic" url="pmusic.html"/> +<mapID target="poly2ac" url="poly2ac.html"/> +<mapID target="poly2lsf" url="poly2lsf.html"/> +<mapID target="poly2rc" url="poly2rc.html"/> +<mapID target="polyscale" url="polyscale.html"/> +<mapID target="polystab" url="polystab.html"/> +<mapID target="polyval" url="polyval.html"/> +<mapID target="pow2db" url="pow2db.html"/> +<mapID target="primitive" url="primitive.html"/> +<mapID target="prony" url="prony.html"/> +<mapID target="pulseperiod" url="pulseperiod.html"/> +<mapID target="pulsesep" url="pulsesep.html"/> +<mapID target="pulsewidth" url="pulsewidth.html"/> +<mapID target="pulstran" url="pulstran.html"/> +<mapID target="rc2ac" url="rc2ac.html"/> +<mapID target="rc2is" url="rc2is.html"/> +<mapID target="rc2lar" url="rc2lar.html"/> +<mapID target="rc2poly" url="rc2poly.html"/> +<mapID target="rcosdesign" url="rcosdesign.html"/> +<mapID target="rectpuls" url="rectpuls.html"/> +<mapID target="rectwin" url="rectwin.html"/> +<mapID target="resample" url="resample.html"/> +<mapID target="residued" url="residued.html"/> +<mapID target="residuez" url="residuez.html"/> +<mapID target="risetime" url="risetime.html"/> +<mapID target="rlevinson" url="rlevinson.html"/> +<mapID target="rms" url="rms.html"/> +<mapID target="rooteig" url="rooteig.html"/> +<mapID target="rootmusic" url="rootmusic.html"/> +<mapID target="rssq" url="rssq.html"/> +<mapID target="sampled2continuous" url="sampled2continuous.html"/> +<mapID target="sawtooth" url="sawtooth.html"/> +<mapID target="schtrig" url="schtrig.html"/> +<mapID target="schurrc" url="schurrc.html"/> +<mapID target="seqperiod" url="seqperiod.html"/> +<mapID target="sgolay" url="sgolay.html"/> +<mapID target="sgolayfilt" url="sgolayfilt.html"/> +<mapID target="shanwavf" url="shanwavf.html"/> +<mapID target="shiftdata" url="shiftdata.html"/> +<mapID target="slewrate" url="slewrate.html"/> +<mapID target="sos2cell" url="sos2cell.html"/> +<mapID target="sos2ss" url="sos2ss.html"/> +<mapID target="sos2tf" url="sos2tf.html"/> +<mapID target="sos2zp" url="sos2zp.html"/> +<mapID target="sosbreak" url="sosbreak.html"/> +<mapID target="sosfilt" url="sosfilt.html"/> +<mapID target="specgram" url="specgram.html"/> +<mapID target="ss2sos" url="ss2sos.html"/> +<mapID target="statelevels" url="statelevels.html"/> +<mapID target="stmcb" url="stmcb.html"/> +<mapID target="strips" url="strips.html"/> +<mapID target="subspaceMethodsInputParser" url="subspaceMethodsInputParser.html"/> +<mapID target="tf2sos" url="tf2sos.html"/> +<mapID target="tf2zp" url="tf2zp.html"/> +<mapID target="tf2zpk" url="tf2zpk.html"/> +<mapID target="transpose" url="transpose.html"/> +<mapID target="trial_iirlp2mb" url="trial_iirlp2mb.html"/> +<mapID target="triang" url="triang.html"/> +<mapID target="tripuls" url="tripuls.html"/> +<mapID target="truth" url="truth.html"/> +<mapID target="tukeywin" url="tukeywin.html"/> +<mapID target="udecode" url="udecode.html"/> +<mapID target="uencode" url="uencode.html"/> +<mapID target="ultrwin" url="ultrwin.html"/> +<mapID target="unshiftdata" url="unshiftdata.html"/> +<mapID target="upfirdn" url="upfirdn.html"/> +<mapID target="upsample" url="upsample.html"/> +<mapID target="upsamplefill" url="upsamplefill.html"/> +<mapID target="var" url="var.html"/> +<mapID target="vco" url="vco.html"/> +<mapID target="welchwin" url="welchwin.html"/> +<mapID target="window" url="window.html"/> +<mapID target="wkeep" url="wkeep.html"/> +<mapID target="wrev" url="wrev.html"/> +<mapID target="xcorr2" url="xcorr2.html"/> +<mapID target="zerocrossing" url="zerocrossing.html"/> +<mapID target="zp2sos" url="zp2sos.html"/> +<mapID target="zplane" url="zplane.html"/> +</map>
\ No newline at end of file diff --git a/help/en_US/scilab_en_US_help/jhelpset.hs b/help/en_US/scilab_en_US_help/jhelpset.hs new file mode 100644 index 0000000..2d1e338 --- /dev/null +++ b/help/en_US/scilab_en_US_help/jhelpset.hs @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?> +<!DOCTYPE helpset + PUBLIC "-//Sun Microsystems Inc.//DTD JavaHelp HelpSet Version 1.0//EN" "http://java.sun.com/products/javahelp/helpset_1_0.dtd"> +<helpset version="1.0"> +<title>FOSSEE Signal Processing Toolbox</title> +<maps> +<homeID>top</homeID> +<mapref location="jhelpmap.jhm"/> +</maps> +<view> +<name>TOC</name> +<label>Table Of Contents</label> +<type>javax.help.TOCView</type> +<data>jhelptoc.xml</data> +</view> +<view> +<name>Index</name> +<label>Index</label> +<type>javax.help.IndexView</type> +<data>jhelpidx.xml</data> +</view> +<view> +<name>Search</name> +<label>Search</label> +<type>javax.help.SearchView</type> +<data engine="com.sun.java.help.search.DefaultSearchEngine">JavaHelpSearch</data> +</view> +</helpset>
\ No newline at end of file diff --git a/help/en_US/scilab_en_US_help/jhelptoc.xml b/help/en_US/scilab_en_US_help/jhelptoc.xml new file mode 100644 index 0000000..9b5bb01 --- /dev/null +++ b/help/en_US/scilab_en_US_help/jhelptoc.xml @@ -0,0 +1,201 @@ +<?xml version="1.0" encoding="utf-8" standalone="no"?> +<!DOCTYPE toc PUBLIC "-//Sun Microsystems Inc.//DTD JavaHelp TOC Version 1.0//EN" "http://java.sun.com/products/javahelp/toc_1_0.dtd"> +<toc version="1.0"> +<tocitem target="index" text="FOSSEE Signal Processing Toolbox"> +<tocitem target="section_be19baaac84b122b8ad501d34462f5bf" text="FOSSEE Signal Processing Toolbox"> +<tocitem target="ac2poly" text="ac2poly"/> +<tocitem target="ac2rc" text="ac2rc"/> +<tocitem target="arParEst" text="arParEst"/> +<tocitem target="arburg" text="arburg"/> +<tocitem target="arcov" text="arcov"/> +<tocitem target="armcov" text="armcov"/> +<tocitem target="aryule" text="aryule"/> +<tocitem target="barthannwin" text="barthannwin"/> +<tocitem target="bartlett" text="bartlett"/> +<tocitem target="besself" text="besself"/> +<tocitem target="bitrevorder" text="bitrevorder"/> +<tocitem target="blackman" text="blackman"/> +<tocitem target="blackmanharris" text="blackmanharris"/> +<tocitem target="blackmannuttall" text="blackmannuttall"/> +<tocitem target="bohmanwin" text="bohmanwin"/> +<tocitem target="boxcar" text="boxcar"/> +<tocitem target="buffer" text="buffer"/> +<tocitem target="butter" text="butter"/> +<tocitem target="buttord" text="buttord"/> +<tocitem target="cconv" text="cconv"/> +<tocitem target="cell2sos" text="cell2sos"/> +<tocitem target="cheb1ord" text="cheb1ord"/> +<tocitem target="cheb2ord" text="cheb2ord"/> +<tocitem target="chebwin" text="chebwin"/> +<tocitem target="cheby1" text="cheby1"/> +<tocitem target="cheby2" text="cheby2"/> +<tocitem target="check" text="check"/> +<tocitem target="chirp" text="chirp"/> +<tocitem target="clustersegment" text="clustersegment"/> +<tocitem target="cmorwavf" text="cmorwavf"/> +<tocitem target="convmtx" text="convmtx"/> +<tocitem target="corrmtx" text="corrmtx"/> +<tocitem target="cummax" text="cummax"/> +<tocitem target="cummin" text="cummin"/> +<tocitem target="db" text="db"/> +<tocitem target="db2pow" text="db2pow"/> +<tocitem target="dctmtx" text="dctmtx"/> +<tocitem target="decimate" text="decimate"/> +<tocitem target="dftmtx" text="dftmtx"/> +<tocitem target="diric" text="diric"/> +<tocitem target="downsample" text="downsample"/> +<tocitem target="dutycycle" text="dutycycle"/> +<tocitem target="ellip" text="ellip"/> +<tocitem target="ellipord" text="ellipord"/> +<tocitem target="enbw" text="enbw"/> +<tocitem target="eqtflength" text="eqtflength"/> +<tocitem target="falltime" text="falltime"/> +<tocitem target="fftfilt" text="fftfilt"/> +<tocitem target="filternorm" text="filternorm"/> +<tocitem target="filtfilt" text="filtfilt"/> +<tocitem target="filtic" text="filtic"/> +<tocitem target="filtord" text="filtord"/> +<tocitem target="firpmord" text="firpmord"/> +<tocitem target="firtype" text="firtype"/> +<tocitem target="flattopwin" text="flattopwin"/> +<tocitem target="fracshift" text="fracshift"/> +<tocitem target="fwhm" text="fwhm"/> +<tocitem target="fwhmjlt" text="fwhmjlt"/> +<tocitem target="gauspuls" text="gauspuls"/> +<tocitem target="gaussdesign" text="gaussdesign"/> +<tocitem target="gaussian" text="gaussian"/> +<tocitem target="gausswin" text="gausswin"/> +<tocitem target="gmonopuls" text="gmonopuls"/> +<tocitem target="goertzel" text="goertzel"/> +<tocitem target="grpdelay" text="grpdelay"/> +<tocitem target="hann" text="hann"/> +<tocitem target="helperHarmonicDistortionAmplifier" text="helperHarmonicDistortionAmplifier"/> +<tocitem target="icceps" text="icceps"/> +<tocitem target="iirlp2mb" text="iirlp2mb"/> +<tocitem target="impinvar" text="impinvar"/> +<tocitem target="impz" text="impz"/> +<tocitem target="impzlength" text="impzlength"/> +<tocitem target="interp" text="interp"/> +<tocitem target="intfilt" text="intfilt"/> +<tocitem target="invimpinvar" text="invimpinvar"/> +<tocitem target="is2rc" text="is2rc"/> +<tocitem target="isallpass" text="isallpass"/> +<tocitem target="isfir" text="isfir"/> +<tocitem target="islinphase" text="islinphase"/> +<tocitem target="ismaxphase" text="ismaxphase"/> +<tocitem target="isminphase" text="isminphase"/> +<tocitem target="isstable" text="isstable"/> +<tocitem target="kaiser" text="kaiser"/> +<tocitem target="lar2rc" text="lar2rc"/> +<tocitem target="latc2tf" text="latc2tf"/> +<tocitem target="latcfilt" text="latcfilt"/> +<tocitem target="latcfilt1" text="latcfilt1"/> +<tocitem target="levdown" text="levdown"/> +<tocitem target="levin" text="levin"/> +<tocitem target="levinson" text="levinson"/> +<tocitem target="lpc" text="lpc"/> +<tocitem target="lsf2poly" text="lsf2poly"/> +<tocitem target="mag2db" text="mag2db"/> +<tocitem target="marcumq" text="marcumq"/> +<tocitem target="medfilt1" text="medfilt1"/> +<tocitem target="mexihat" text="mexihat"/> +<tocitem target="meyeraux" text="meyeraux"/> +<tocitem target="midcross" text="midcross"/> +<tocitem target="modulate" text="modulate"/> +<tocitem target="morlet" text="morlet"/> +<tocitem target="movingrms" text="movingrms"/> +<tocitem target="musicBase" text="musicBase"/> +<tocitem target="nnls" text="nnls"/> +<tocitem target="nuttallwin" text="nuttallwin"/> +<tocitem target="parzenwin" text="parzenwin"/> +<tocitem target="pchip" text="pchip"/> +<tocitem target="pchips" text="pchips"/> +<tocitem target="peak2peak" text="peak2peak"/> +<tocitem target="peak2rms" text="peak2rms"/> +<tocitem target="peig" text="peig"/> +<tocitem target="periodogram" text="periodogram"/> +<tocitem target="phaseInputParseAs_ab" text="phaseInputParseAs_ab"/> +<tocitem target="phaseInputParseAs_sos" text="phaseInputParseAs_sos"/> +<tocitem target="phasedelay" text="phasedelay"/> +<tocitem target="phasez" text="phasez"/> +<tocitem target="pmusic" text="pmusic"/> +<tocitem target="poly2ac" text="poly2ac"/> +<tocitem target="poly2lsf" text="poly2lsf"/> +<tocitem target="poly2rc" text="poly2rc"/> +<tocitem target="polyscale" text="polyscale"/> +<tocitem target="polystab" text="polystab"/> +<tocitem target="polyval" text="polyval"/> +<tocitem target="pow2db" text="pow2db"/> +<tocitem target="primitive" text="primitive"/> +<tocitem target="prony" text="prony"/> +<tocitem target="pulseperiod" text="pulseperiod"/> +<tocitem target="pulsesep" text="pulsesep"/> +<tocitem target="pulsewidth" text="pulsewidth"/> +<tocitem target="pulstran" text="pulstran"/> +<tocitem target="rc2ac" text="rc2ac"/> +<tocitem target="rc2is" text="rc2is"/> +<tocitem target="rc2lar" text="rc2lar"/> +<tocitem target="rc2poly" text="rc2poly"/> +<tocitem target="rcosdesign" text="rcosdesign"/> +<tocitem target="rectpuls" text="rectpuls"/> +<tocitem target="rectwin" text="rectwin"/> +<tocitem target="resample" text="resample"/> +<tocitem target="residued" text="residued"/> +<tocitem target="residuez" text="residuez"/> +<tocitem target="risetime" text="risetime"/> +<tocitem target="rlevinson" text="rlevinson"/> +<tocitem target="rms" text="rms"/> +<tocitem target="rooteig" text="rooteig"/> +<tocitem target="rootmusic" text="rootmusic"/> +<tocitem target="rssq" text="rssq"/> +<tocitem target="sampled2continuous" text="sampled2continuous"/> +<tocitem target="sawtooth" text="sawtooth"/> +<tocitem target="schtrig" text="schtrig"/> +<tocitem target="schurrc" text="schurrc"/> +<tocitem target="seqperiod" text="seqperiod"/> +<tocitem target="sgolay" text="sgolay"/> +<tocitem target="sgolayfilt" text="sgolayfilt"/> +<tocitem target="shanwavf" text="shanwavf"/> +<tocitem target="shiftdata" text="shiftdata"/> +<tocitem target="slewrate" text="slewrate"/> +<tocitem target="sos2cell" text="sos2cell"/> +<tocitem target="sos2ss" text="sos2ss"/> +<tocitem target="sos2tf" text="sos2tf"/> +<tocitem target="sos2zp" text="sos2zp"/> +<tocitem target="sosbreak" text="sosbreak"/> +<tocitem target="sosfilt" text="sosfilt"/> +<tocitem target="specgram" text="specgram"/> +<tocitem target="ss2sos" text="ss2sos"/> +<tocitem target="statelevels" text="statelevels"/> +<tocitem target="stmcb" text="stmcb"/> +<tocitem target="strips" text="strips"/> +<tocitem target="subspaceMethodsInputParser" text="subspaceMethodsInputParser"/> +<tocitem target="tf2sos" text="tf2sos"/> +<tocitem target="tf2zp" text="tf2zp"/> +<tocitem target="tf2zpk" text="tf2zpk"/> +<tocitem target="transpose" text="transpose"/> +<tocitem target="trial_iirlp2mb" text="trial_iirlp2mb"/> +<tocitem target="triang" text="triang"/> +<tocitem target="tripuls" text="tripuls"/> +<tocitem target="truth" text="truth"/> +<tocitem target="tukeywin" text="tukeywin"/> +<tocitem target="udecode" text="udecode"/> +<tocitem target="uencode" text="uencode"/> +<tocitem target="ultrwin" text="ultrwin"/> +<tocitem target="unshiftdata" text="unshiftdata"/> +<tocitem target="upfirdn" text="upfirdn"/> +<tocitem target="upsample" text="upsample"/> +<tocitem target="upsamplefill" text="upsamplefill"/> +<tocitem target="var" text="var"/> +<tocitem target="vco" text="vco"/> +<tocitem target="welchwin" text="welchwin"/> +<tocitem target="window" text="window"/> +<tocitem target="wkeep" text="wkeep"/> +<tocitem target="wrev" text="wrev"/> +<tocitem target="xcorr2" text="xcorr2"/> +<tocitem target="zerocrossing" text="zerocrossing"/> +<tocitem target="zp2sos" text="zp2sos"/> +<tocitem target="zplane" text="zplane"/> +</tocitem> +</tocitem> +</toc>
\ No newline at end of file diff --git a/help/en_US/scilab_en_US_help/kaiser.html b/help/en_US/scilab_en_US_help/kaiser.html new file mode 100644 index 0000000..ea837df --- /dev/null +++ b/help/en_US/scilab_en_US_help/kaiser.html @@ -0,0 +1,87 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>kaiser</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="isstable.html"><< isstable</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="lar2rc.html">lar2rc >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > kaiser</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">kaiser</h1> + <p class="refpurpose">This function returns the filter coefficients of a Kaiser window.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">w</span><span class="default"> = </span><span class="functionid">kaiser</span><span class="default"> (</span><span class="default">m</span><span class="default">)</span> +<span class="default">w</span><span class="default"> = </span><span class="functionid">kaiser</span><span class="default"> (</span><span class="default">m</span><span class="default">, </span><span class="default">beta</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">m:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">beta:</span> + <dd><p class="para">real scalar value</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">output variable, vector of real numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function returns the filter coefficients of a Kaiser window of length m supplied as input, to the output vector w. +The second parameter gives the stop band attenuation of the Fourier transform of the window on derivation.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">kaiser</span><span class="scilabopenclose">(</span><span class="scilabnumber">6</span><span class="scilabdefault">,</span><span class="scilabnumber">0.2</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.9900745</span> +<span class="scilabnumber">0.9964211</span> +<span class="scilabnumber">0.9996020</span> +<span class="scilabnumber">0.9996020</span> +<span class="scilabnumber">0.9964211</span> +<span class="scilabnumber">0.9900745</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="isstable.html"><< isstable</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="lar2rc.html">lar2rc >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/lar2rc.html b/help/en_US/scilab_en_US_help/lar2rc.html new file mode 100644 index 0000000..de2504d --- /dev/null +++ b/help/en_US/scilab_en_US_help/lar2rc.html @@ -0,0 +1,80 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>lar2rc</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="kaiser.html"><< kaiser</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="latc2tf.html">latc2tf >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > lar2rc</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">lar2rc</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">k</span><span class="default"> = </span><span class="functionid">lar2rc</span><span class="default">(</span><span class="default">g</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">g:</span> + <dd><p class="para">define log area ratios.</p></dd></dt> + <dt><span class="term">k:</span> + <dd><p class="para">returns the reflection coefficients.</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">X</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">7</span> <span class="scilabnumber">6</span> <span class="scilabnumber">5</span> <span class="scilabnumber">8</span> <span class="scilabnumber">3</span> <span class="scilabnumber">6</span> <span class="scilabnumber">8</span> <span class="scilabnumber">7</span> <span class="scilabnumber">5</span> <span class="scilabnumber">2</span> <span class="scilabnumber">4</span> <span class="scilabnumber">7</span> <span class="scilabnumber">4</span> <span class="scilabnumber">3</span> <span class="scilabnumber">2</span> <span class="scilabnumber">5</span> <span class="scilabnumber">4</span> <span class="scilabnumber">9</span> <span class="scilabnumber">5</span> <span class="scilabnumber">3</span> <span class="scilabnumber">5</span> <span class="scilabnumber">7</span> <span class="scilabnumber">3</span> <span class="scilabnumber">9</span> <span class="scilabnumber">4</span> <span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">0</span> <span class="scilabnumber">5</span> <span class="scilabnumber">4</span> <span class="scilabnumber">8</span> <span class="scilabnumber">6</span> <span class="scilabnumber">4</span> <span class="scilabnumber">6</span> <span class="scilabnumber">5</span> <span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">k</span> <span class="scilaboperator">=</span> <span class="scilabid">lar2rc</span><span class="scilabopenclose">(</span><span class="scilabid">X</span><span class="scilabopenclose">)</span> +<a class="scilabcommand" href="scilab://or">or</a> <span class="scilabstring">t=[2</span> <span class="scilabstring">5</span> <span class="scilabstring">6</span><span class="scilabdefault">;</span> <span class="scilabnumber">8</span> <span class="scilabnumber">6</span> <span class="scilabnumber">5</span><span class="scilabdefault">;</span> <span class="scilabnumber">8</span> <span class="scilabnumber">9</span> <span class="scilabnumber">4</span><span class="scilabopenclose">]</span> +<span class="scilabid">k</span> <span class="scilaboperator">=</span> <span class="scilabid">lar2rc</span><span class="scilabopenclose">(</span><span class="scilabid">t</span><span class="scilabopenclose">)</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"><li class="member"><a href="scilab://Author" class="link">Author</a></li> + <li class="member"><a href="scilab://Jitendra" class="link">Singh</a></li> + <li class="member"><a href="scilab://Modified" class="link">to match MATLAB o/p when i/p is of type char and is a string by Debdeep Dey</a></li></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="kaiser.html"><< kaiser</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="latc2tf.html">latc2tf >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/latc2tf.html b/help/en_US/scilab_en_US_help/latc2tf.html new file mode 100644 index 0000000..8512fae --- /dev/null +++ b/help/en_US/scilab_en_US_help/latc2tf.html @@ -0,0 +1,103 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>latc2tf</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="lar2rc.html"><< lar2rc</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="latcfilt.html">latcfilt >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > latc2tf</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">latc2tf</h1> + <p class="refpurpose">Convert lattice filter parameters to transfer function coefficients</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre></pre></div></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">[num,den] = latc2tf(k,v) +Finds the transfer function of the IIR filter from the lattice +coefficients k and ladder coefficients v. +[num,den] = latc2tf(k,'iiroption') +Finds the transfer function of the allpass or allpole (specified by +the iiroption flag) IIR filter. +num = latc2tf(k,'firoption') +Finds the transfer function of the FIR filter from the lattice +coefficients k. The firoption flag specifies the type of the FIR +filter (can be 'min, 'max', or 'FIR')</p> + <p class="para">Parameters: +k - double - vector +Lattice coefficients +Lattice coefficients for FIR/IIR filter. Can be real or complex. +v - double - vector +Ladder coefficients +Ladder coefficients for IIR filters. Can be real or complex. +iiroption - string flag - 'allpole', or 'allpass' +Specification of the type if IIR filter +firoption - string flag - 'min', 'max', or 'FIR' (default) +Speficication of the type of FIR filter</p> + <p class="para"></p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> <span class="scilabid">FIR</span> <a class="scilabmacro" href="scilab://filter">filter</a> +<span class="scilabid">k1</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilaboperator">/</span><span class="scilabnumber">2</span> <span class="scilabnumber">1</span><span class="scilaboperator">/</span><span class="scilabnumber">2</span> <span class="scilabnumber">1</span><span class="scilaboperator">/</span><span class="scilabnumber">4</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabopenclose">[</span><span class="scilabid">num1</span><span class="scilabdefault">,</span><span class="scilabid">den1</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">latc2tf</span><span class="scilabopenclose">(</span><span class="scilabid">k1</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"><li class="member"><a href="latcfilt.html" class="link">| tf2latc</a></li> + <li class="member"><a href="scilab://References" class="link">References</a></li> + <li class="member"><a href="scilab://[1]" class="link">J.G. Proakis, D.G. Manolakis, Digital Signal Processing,</a></li> + <li class="member"><a href="scilab://3rd" class="link">ed., Prentice Hall, N.J., 1996, Chapter 7.</a></li> + <li class="member"><a href="scilab://[2]" class="link">S. K. Mitra, Digital Signal Processing, A Computer</a></li> + <li class="member"><a href="scilab://Based" class="link">Approach, McGraw-Hill, N.Y., 1998, Chapter 6.</a></li></ul></div> + +<div class="refsection"><h3 class="title">Authors</h3> + <ul class="itemizedlist"><li class="member">Ayush Baid</li></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="lar2rc.html"><< lar2rc</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="latcfilt.html">latcfilt >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/latcfilt.html b/help/en_US/scilab_en_US_help/latcfilt.html new file mode 100644 index 0000000..bddbfab --- /dev/null +++ b/help/en_US/scilab_en_US_help/latcfilt.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>latcfilt</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="latc2tf.html"><< latc2tf</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="latcfilt1.html">latcfilt1 >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > latcfilt</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">latcfilt</h1> + <p class="refpurpose">function [f,g,zo]=latcfilt(k,x,v,zi,dim)</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="latc2tf.html"><< latc2tf</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="latcfilt1.html">latcfilt1 >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/latcfilt1.html b/help/en_US/scilab_en_US_help/latcfilt1.html new file mode 100644 index 0000000..c789fda --- /dev/null +++ b/help/en_US/scilab_en_US_help/latcfilt1.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>latcfilt1</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="latcfilt.html"><< latcfilt</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="levdown.html">levdown >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > latcfilt1</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">latcfilt1</h1> + <p class="refpurpose">function [f,g,zo]=latcfilt1(k,v,x,zi)</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="latcfilt.html"><< latcfilt</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="levdown.html">levdown >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/levdown.html b/help/en_US/scilab_en_US_help/levdown.html new file mode 100644 index 0000000..5f415a7 --- /dev/null +++ b/help/en_US/scilab_en_US_help/levdown.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>levdown</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="latcfilt1.html"><< latcfilt1</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="levin.html">levin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > levdown</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">levdown</h1> + <p class="refpurpose"></p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="latcfilt1.html"><< latcfilt1</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="levin.html">levin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/levin.html b/help/en_US/scilab_en_US_help/levin.html new file mode 100644 index 0000000..4e65423 --- /dev/null +++ b/help/en_US/scilab_en_US_help/levin.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>levin</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="levdown.html"><< levdown</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="levinson.html">levinson >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > levin</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">levin</h1> + <p class="refpurpose">[ar,sigma2,rc]=lev(r)</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="levdown.html"><< levdown</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="levinson.html">levinson >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/levinson.html b/help/en_US/scilab_en_US_help/levinson.html new file mode 100644 index 0000000..d60369d --- /dev/null +++ b/help/en_US/scilab_en_US_help/levinson.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>levinson</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="levin.html"><< levin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="lpc.html">lpc >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > levinson</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">levinson</h1> + <p class="refpurpose"></p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="levin.html"><< levin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="lpc.html">lpc >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/lpc.html b/help/en_US/scilab_en_US_help/lpc.html new file mode 100644 index 0000000..cdd3c89 --- /dev/null +++ b/help/en_US/scilab_en_US_help/lpc.html @@ -0,0 +1,98 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>lpc</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="levinson.html"><< levinson</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="lsf2poly.html">lsf2poly >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > lpc</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">lpc</h1> + <p class="refpurpose">Linear prediction filter coefficients</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">a</span><span class="default">,</span><span class="default">g</span><span class="default">] = </span><span class="functionid">lpc</span><span class="default">(</span><span class="default">x</span><span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">,</span><span class="default">g</span><span class="default">] = </span><span class="functionid">lpc</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">p</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">[a,g] = lpc(x,p) +Determines the coefficients of a pth order forward linear predictor +filter by minimizing the squared error. If p is unspecified, a +default value of length(x)-1 is used.</p> + <p class="para"></p></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">double</p></dd></dt> + <dt><span class="term">p:</span> + <dd><p class="para">int, natural number, scalar</p></dd></dt> + <dt><span class="term">a:</span> + <dd><p class="para">double</p></dd></dt> + <dt><span class="term">g:</span> + <dd><p class="para">double</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> +<span class="scilabid">noise</span> <span class="scilaboperator">=</span> <span class="scilabid">randn</span><span class="scilabopenclose">(</span><span class="scilabnumber">20000</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> +<span class="scilabid">x</span> <span class="scilaboperator">=</span> <a class="scilabmacro" href="scilab://filter">filter</a><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">1</span><span class="scilaboperator">/</span><span class="scilabnumber">5</span> <span class="scilabnumber">1</span><span class="scilaboperator">/</span><span class="scilabnumber">3</span> <span class="scilabnumber">1</span><span class="scilaboperator">/</span><span class="scilabnumber">4</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabid">noise</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> +<span class="scilabid">x</span> <span class="scilaboperator">=</span> <span class="scilabid">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">15904</span><span class="scilabspecial">:</span><span class="scilabnumber">20000</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> +<span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">g</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">lpc</span><span class="scilabopenclose">(</span><span class="scilabid">x</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> + +<span class="scilabid">References</span> +<span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span> <span class="scilabid">Hayes</span><span class="scilabdefault">,</span> <span class="scilabid">Monson</span> <span class="scilabid">H</span><span class="scilaboperator">.</span> <span class="scilabid">Statistical</span> <span class="scilabid">digital</span> <span class="scilabid">signal</span> <span class="scilabid">processing</span> <a class="scilabcommand" href="scilab://and">and</a> <span class="scilabstring">modeling.</span> +<span class="scilabid">John</span> <span class="scilabid">Wiley</span> <span class="scilaboperator">&</span> <span class="scilabid">Sons</span><span class="scilabdefault">,</span> <span class="scilabnumber">2009</span><span class="scilabdefault">,</span> <span class="scilabid">pg</span><span class="scilaboperator">.</span> <span class="scilabnumber">220</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"><li class="member"><a href="aryule.html" class="link">| levinson | prony | pyulear | stmcb</a></li></ul></div> + +<div class="refsection"><h3 class="title">Authors</h3> + <ul class="itemizedlist"><li class="member">Ayush Baid</li></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="levinson.html"><< levinson</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="lsf2poly.html">lsf2poly >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/lsf2poly.html b/help/en_US/scilab_en_US_help/lsf2poly.html new file mode 100644 index 0000000..cf86f7d --- /dev/null +++ b/help/en_US/scilab_en_US_help/lsf2poly.html @@ -0,0 +1,63 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>lsf2poly</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="lpc.html"><< lpc</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="mag2db.html">mag2db >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > lsf2poly</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">lsf2poly</h1> + <p class="refpurpose">lsf2poly function convert line spectral frequencies to prediction polynomial.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">a</span><span class="default"> = </span><span class="functionid">lsf2poly</span><span class="default">(</span><span class="default">lsf</span><span class="default">)</span></pre></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="lpc.html"><< lpc</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="mag2db.html">mag2db >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/mag2db.html b/help/en_US/scilab_en_US_help/mag2db.html new file mode 100644 index 0000000..96e91f5 --- /dev/null +++ b/help/en_US/scilab_en_US_help/mag2db.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>mag2db</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="lsf2poly.html"><< lsf2poly</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="marcumq.html">marcumq >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > mag2db</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">mag2db</h1> + <p class="refpurpose">funcprot(0);</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="lsf2poly.html"><< lsf2poly</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="marcumq.html">marcumq >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/marcumq.html b/help/en_US/scilab_en_US_help/marcumq.html new file mode 100644 index 0000000..5623a49 --- /dev/null +++ b/help/en_US/scilab_en_US_help/marcumq.html @@ -0,0 +1,88 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>marcumq</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="mag2db.html"><< mag2db</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="medfilt1.html">medfilt1 >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > marcumq</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">marcumq</h1> + <p class="refpurpose">This function computes the generalized Marcum Q function of order m with noncentrality parameter a and argument b.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">q</span><span class="default"> = </span><span class="functionid">marcumq</span><span class="default"> (</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">)</span> +<span class="default">q</span><span class="default"> = </span><span class="functionid">marcumq</span><span class="default"> (</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">, </span><span class="default">m</span><span class="default">)</span> +<span class="default">q</span><span class="default"> = </span><span class="functionid">marcumq</span><span class="default"> (</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">, </span><span class="default">m</span><span class="default">, </span><span class="default">tol</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">a:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">b:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">m:</span> + <dd><p class="para">default value 1</p></dd></dt> + <dt><span class="term">tol:</span> + <dd><p class="para">default value eps</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function computes the generalized Marcum Q function of order m with noncentrality parameter a and argument b. +The third argument m is the order, which by default is 1. +The fourth argument tol is the tolerance, which by default is eps. +If input arguments are vectors which correspond in size and degree, the output is a table of values. +This function calculates Marcum’s Q function using the infinite Bessel series, which is truncated when the relative error is less than the specified tolerance.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">marcumq</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">4</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.0028895</span> <span class="scilabnumber">0.0341348</span> <span class="scilabnumber">0.1965122</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="mag2db.html"><< mag2db</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="medfilt1.html">medfilt1 >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/medfilt1.html b/help/en_US/scilab_en_US_help/medfilt1.html new file mode 100644 index 0000000..c6e963c --- /dev/null +++ b/help/en_US/scilab_en_US_help/medfilt1.html @@ -0,0 +1,110 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>medfilt1</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="marcumq.html"><< marcumq</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="mexihat.html">mexihat >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > medfilt1</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">medfilt1</h1> + <p class="refpurpose">1D median filtering</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre></pre></div></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">y = medfilt1(x) +Applies a 3rd order 1-dimensional median filter to input x along the +first non-zero dimension. The function appropriately pads the signal +with zeros at the endings. For a segment, a median is calculated as +the middle value (average of two middle values) for odd number +number (even number) of data points. +y = medfilt1(x,n) +Applies a nth order 1-dimensional median filter. +y = medfilt1(x,n,dim) +Applies the median filter along the n-th dimension +y = medfilt1(__, nanflag, padding) +nanflag specifies how NaN values are treated. padding specifies the +type of filtering to be performed at the signal edges.</p> + <p class="para"></p></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">int | double</p></dd></dt> + <dt><span class="term">n:</span> + <dd><p class="para">positive integer scalar</p></dd></dt> + <dt><span class="term">dim:</span> + <dd><p class="para">positive integer scalar</p></dd></dt> + <dt><span class="term">nanflag:</span> + <dd><p class="para">'includenan' (default) | 'omitnan'</p></dd></dt> + <dt><span class="term">* includenan:</span> + <dd><p class="para">Filtering such that the median of any segment</p></dd></dt> + <dt><span class="term">* omitnan:</span> + <dd><p class="para">Filtering with NaNs omitted in each segment. If a segment</p></dd></dt> + <dt><span class="term">y:</span> + <dd><p class="para">int | double</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> <span class="scilabid">Noise</span> <span class="scilabid">supression</span> <span class="scilabid">using</span> <a class="scilabmacro" href="scilab://median">median</a> <span class="scilabstring">filtering</span> +<span class="scilabid">fs</span> <span class="scilaboperator">=</span> <span class="scilabnumber">1e3</span><span class="scilabdefault">;</span> +<span class="scilabid">t</span> <span class="scilaboperator">=</span> <span class="scilabnumber">1</span><span class="scilabspecial">:</span><span class="scilabnumber">1</span><span class="scilaboperator">/</span><span class="scilabid">fs</span><span class="scilabspecial">:</span><span class="scilabnumber">1</span><span class="scilabdefault">;</span> +<span class="scilabid">s</span> <span class="scilaboperator">=</span> <a class="scilabcommand" href="scilab://sin">sin</a><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabconstants">%pi</span><span class="scilaboperator">*</span><span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabid">t</span><span class="scilabopenclose">)</span><span class="scilaboperator">+</span> <a class="scilabcommand" href="scilab://cos">cos</a><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabconstants">%pi</span><span class="scilaboperator">*</span><span class="scilabnumber">5</span><span class="scilaboperator">*</span><span class="scilabid">t</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> +<span class="scilabcomment">// Adding noise</span> +<span class="scilabid">x</span> <span class="scilaboperator">=</span> <span class="scilabid">s</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.1</span><span class="scilaboperator">*</span><span class="scilabid">randn</span><span class="scilabopenclose">(</span><a class="scilabcommand" href="scilab://size">size</a><span class="scilabopenclose">(</span><span class="scilabid">s</span><span class="scilabopenclose">)</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> +<span class="scilabid">y</span> <span class="scilaboperator">=</span> <span class="scilabid">medfilt1</span><span class="scilabopenclose">(</span><span class="scilabid">x</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"><li class="member"><a href="scilab://filter" class="link">| hampel | median | sgolayfilt</a></li></ul></div> + +<div class="refsection"><h3 class="title">Authors</h3> + <ul class="itemizedlist"><li class="member">Ayush Baid</li></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="marcumq.html"><< marcumq</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="mexihat.html">mexihat >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/mexihat.html b/help/en_US/scilab_en_US_help/mexihat.html new file mode 100644 index 0000000..30b12f5 --- /dev/null +++ b/help/en_US/scilab_en_US_help/mexihat.html @@ -0,0 +1,83 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>mexihat</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="medfilt1.html"><< medfilt1</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="meyeraux.html">meyeraux >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > mexihat</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">mexihat</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">psi</span><span class="default">,</span><span class="default">x</span><span class="default">]=</span><span class="functionid">mexihat</span><span class="default">(</span><span class="default">lb</span><span class="default">,</span><span class="default">ub</span><span class="default">,</span><span class="default">n</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">lb:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt> + <dt><span class="term">ub:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt> + <dt><span class="term">n:</span> + <dd><p class="para">Real strictly positive scalar number</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function +This function returns values of the Mexican hat wavelet in the specified interval at all the sample points.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1.</span> <span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span> <span class="scilabid">mexihat</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0.00000</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.35197</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.35214</span><span class="scilabopenclose">]</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1.0000</span> <span class="scilabnumber">1.5000</span> <span class="scilabnumber">2.0000</span><span class="scilabopenclose">]</span> +<span class="scilabnumber">2.</span> <span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span> <span class="scilabid">mexihat</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0</span><span class="scilabdefault">;</span><span class="scilabnumber">0</span><span class="scilabdefault">;</span><span class="scilabnumber">0</span><span class="scilabopenclose">]</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">;</span><span class="scilabnumber">1</span><span class="scilabdefault">;</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="medfilt1.html"><< medfilt1</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="meyeraux.html">meyeraux >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/meyeraux.html b/help/en_US/scilab_en_US_help/meyeraux.html new file mode 100644 index 0000000..3631454 --- /dev/null +++ b/help/en_US/scilab_en_US_help/meyeraux.html @@ -0,0 +1,77 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>meyeraux</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="mexihat.html"><< mexihat</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="midcross.html">midcross >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > meyeraux</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">meyeraux</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">y</span><span class="default">]=</span><span class="functionid">meyeraux</span><span class="default">(</span><span class="default">x</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function returns values of the auxiliary function used for Meyer wavelet generation.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1.</span> <span class="scilabid">meyeraux</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span><span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilaboperator">-</span><span class="scilabnumber">208</span> <span class="scilaboperator">-</span><span class="scilabnumber">10287</span><span class="scilabopenclose">]</span> +<span class="scilabnumber">2.</span> <span class="scilabid">meyeraux</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">3</span><span class="scilabdefault">;</span><span class="scilabnumber">4</span> <span class="scilabnumber">5</span> <span class="scilabnumber">6</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span><span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilaboperator">-</span><span class="scilabnumber">208</span> <span class="scilaboperator">-</span><span class="scilabnumber">10287</span> <span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">118016</span> <span class="scilaboperator">-</span><span class="scilabnumber">709375</span> <span class="scilaboperator">-</span><span class="scilabnumber">2940624</span> <span class="scilabopenclose">]</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="mexihat.html"><< mexihat</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="midcross.html">midcross >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/midcross.html b/help/en_US/scilab_en_US_help/midcross.html new file mode 100644 index 0000000..4f644a0 --- /dev/null +++ b/help/en_US/scilab_en_US_help/midcross.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>midcross</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="meyeraux.html"><< meyeraux</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="modulate.html">modulate >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > midcross</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">midcross</h1> + <p class="refpurpose"></p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="meyeraux.html"><< meyeraux</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="modulate.html">modulate >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/modulate.html b/help/en_US/scilab_en_US_help/modulate.html new file mode 100644 index 0000000..1994bb1 --- /dev/null +++ b/help/en_US/scilab_en_US_help/modulate.html @@ -0,0 +1,104 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>modulate</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="midcross.html"><< midcross</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="morlet.html">morlet >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > modulate</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">modulate</h1> + <p class="refpurpose">Modulates signal according to the modulation method</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default">=</span><span class="functionid">modulate</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">fc</span><span class="default">,</span><span class="default">fs</span><span class="default">,</span><span class="default">method</span><span class="default">,</span><span class="default">opt</span><span class="default">)</span> +<span class="default">[</span><span class="default">y</span><span class="default">,</span><span class="default">t</span><span class="default">]=</span><span class="functionid">modulate</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">fc</span><span class="default">,</span><span class="default">fs</span><span class="default">,</span><span class="default">method</span><span class="default">,</span><span class="default">opt</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">[y,t]=modulate(x,fc,fs,method,opt) +Returns the modulated vector y and the time vector 't' +Modulation is performed according to the following table +METHOD MODULATION SCHEME +'am', Amplitude modulation, double side-band, suppressed carrier +'amdsb-sc' opt not used. This is the default method. +'amdsb-tc' Amplitude modulation, double side-band, transmitted carrier +opt is a scalar subtracted from x before multiplying x +with the carrier wave. It defaults to min(min(x)) so that +the input signal after offset is always non-negative +'amssb' Amplitude modulation, single side-band +OPT not used. +'fm' Frequency modulation +opt is the constant of frequency modulation. +opt = (fc/fs)*2*pi/max(max(abs(x))) by default +'pm' Phase modulation +OPT is the constant of phase modulation. +opt = pi/max(max(abs(x))) by default +Phase lies between -pi and +pi +'pwm' Pulse width modulation +opt='left' corresponds to left justified pulses. +opt='centered' correspondes to centered pulses. +The default value of opt is 'left'. +'ppm' Pulse position modulation +opt is a scalar between 0 and 1 which specifies the pulse +width in fractions of the carrier period with default value 0.1. +'qam' Quadrature amplitude modulation +opt is a matrix of the same size as X which is modulated in +quadrature with x.</p> + <p class="para">If x is a matrix, its columns are modulated. +Example +y =</p> + <p class="para">1. 1. 0. 0. +Author +Ankur Mallick</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="midcross.html"><< midcross</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="morlet.html">morlet >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/morlet.html b/help/en_US/scilab_en_US_help/morlet.html new file mode 100644 index 0000000..2bc0c33 --- /dev/null +++ b/help/en_US/scilab_en_US_help/morlet.html @@ -0,0 +1,83 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>morlet</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="modulate.html"><< modulate</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="movingrms.html">movingrms >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > morlet</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">morlet</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">psi</span><span class="default">,</span><span class="default">x</span><span class="default">]= </span><span class="functionid">morlet</span><span class="default">(</span><span class="default">lb</span><span class="default">,</span><span class="default">ub</span><span class="default">,</span><span class="default">n</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">lb:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt> + <dt><span class="term">ub:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt> + <dt><span class="term">n:</span> + <dd><p class="para">Real strictly positive scalar number</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function +This function returns values of the Morlet wavelet in the specified interval for all the sample points.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1.</span> <span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">morlet</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0.17205</span> <span class="scilabnumber">0.11254</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.11356</span><span class="scilabopenclose">]</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1.0000</span> <span class="scilabnumber">1.5000</span> <span class="scilabnumber">2.0000</span><span class="scilabopenclose">]</span> +<span class="scilabnumber">2.</span> <span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">morlet</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0.1720498</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.1135560</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.0084394</span><span class="scilabopenclose">]</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">;</span> <span class="scilabnumber">2</span><span class="scilabdefault">;</span> <span class="scilabnumber">3</span><span class="scilabopenclose">]</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="modulate.html"><< modulate</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="movingrms.html">movingrms >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/movingrms.html b/help/en_US/scilab_en_US_help/movingrms.html new file mode 100644 index 0000000..db88c6d --- /dev/null +++ b/help/en_US/scilab_en_US_help/movingrms.html @@ -0,0 +1,89 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>movingrms</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="morlet.html"><< morlet</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="musicBase.html">musicBase >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > movingrms</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">movingrms</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">rmsx</span><span class="default">,</span><span class="default">w</span><span class="default">]=</span><span class="functionid">movingrms</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">w</span><span class="default">,</span><span class="default">rc</span><span class="default">,</span><span class="default">Fs</span><span class="default">=1)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">Real or complex scalar value</p></dd></dt> + <dt><span class="term">rc:</span> + <dd><p class="para">Real or complex scalar value</p></dd></dt> + <dt><span class="term">Fs:</span> + <dd><p class="para">Real or complex scalar value</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +The signal is convoluted against a sigmoid window of width w and risetime rc with the units of these parameters relative to the value of the sampling frequency given in Fs (Default value=1).</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1.</span> <span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">movingrms</span> <span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">4.4</span> <span class="scilabnumber">94</span> <span class="scilabnumber">1</span><span class="scilabdefault">;</span><span class="scilaboperator">-</span><span class="scilabnumber">2</span> <span class="scilabnumber">5</span><span class="scilabid">i</span> <span class="scilabnumber">5</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabnumber">0.91237</span> <span class="scilabnumber">17.71929</span> <span class="scilabnumber">0.96254</span> +<span class="scilabnumber">0.91237</span> <span class="scilabnumber">17.71929</span> <span class="scilabnumber">0.96254</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabnumber">0.18877</span> +<span class="scilabnumber">0.18877</span> +<span class="scilabnumber">2.</span> <span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">movingrms</span> <span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">4.4</span> <span class="scilabnumber">94</span> <span class="scilabnumber">1</span><span class="scilabdefault">;</span><span class="scilaboperator">-</span><span class="scilabnumber">2</span> <span class="scilabnumber">5</span><span class="scilabid">i</span> <span class="scilabnumber">5</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabnumber">4.8332</span> <span class="scilabnumber">93.8669</span> <span class="scilabnumber">5.0990</span> +<span class="scilabnumber">4.8332</span> <span class="scilabnumber">93.8669</span> <span class="scilabnumber">5.0990</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabnumber">1</span> +<span class="scilabnumber">1</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="morlet.html"><< morlet</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="musicBase.html">musicBase >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/musicBase.html b/help/en_US/scilab_en_US_help/musicBase.html new file mode 100644 index 0000000..d0a8b05 --- /dev/null +++ b/help/en_US/scilab_en_US_help/musicBase.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>musicBase</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="movingrms.html"><< movingrms</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="nnls.html">nnls >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > musicBase</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">musicBase</h1> + <p class="refpurpose">Implements the core of the MUSIC algorithm</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="movingrms.html"><< movingrms</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="nnls.html">nnls >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/nnls.html b/help/en_US/scilab_en_US_help/nnls.html new file mode 100644 index 0000000..8595d51 --- /dev/null +++ b/help/en_US/scilab_en_US_help/nnls.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>nnls</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="musicBase.html"><< musicBase</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="nuttallwin.html">nuttallwin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > nnls</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">nnls</h1> + <p class="refpurpose">Non Negative Least Squares (nnls) for Ex=f with the constraint x>=0</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="musicBase.html"><< musicBase</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="nuttallwin.html">nuttallwin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/nuttallwin.html b/help/en_US/scilab_en_US_help/nuttallwin.html new file mode 100644 index 0000000..8f2e44a --- /dev/null +++ b/help/en_US/scilab_en_US_help/nuttallwin.html @@ -0,0 +1,83 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>nuttallwin</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="nnls.html"><< nnls</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="parzenwin.html">parzenwin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > nuttallwin</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">nuttallwin</h1> + <p class="refpurpose">This function returns the filter coefficients of a Blackman-Harris window.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">w</span><span class="default"> = </span><span class="functionid">nuttallwin</span><span class="default"> (</span><span class="default">m</span><span class="default">)</span> +<span class="default">w</span><span class="default"> = </span><span class="functionid">nuttallwin</span><span class="default"> (</span><span class="default">m</span><span class="default">, </span><span class="default">opt</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">m:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">opt:</span> + <dd><p class="para">string value, takes in "periodic" or "symmetric"</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">output variable, vector of real numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function returns the filter coefficients of a Blackman-Harris window defined by Nuttall of length m supplied as input, to the output vector w. +The second parameter can take the values "periodic" or "symmetric", depending on which the corresponding form of window is returned. The default is symmetric.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">nuttallwin</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span> <span class="scilabstring">"</span><span class="scilabstring">periodic</span><span class="scilabstring">"</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilaboperator">-</span> <span class="scilabnumber">2.429D-17</span> +<span class="scilabnumber">1.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="nnls.html"><< nnls</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="parzenwin.html">parzenwin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/parzenwin.html b/help/en_US/scilab_en_US_help/parzenwin.html new file mode 100644 index 0000000..6044920 --- /dev/null +++ b/help/en_US/scilab_en_US_help/parzenwin.html @@ -0,0 +1,80 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>parzenwin</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="nuttallwin.html"><< nuttallwin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="pchip.html">pchip >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > parzenwin</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">parzenwin</h1> + <p class="refpurpose">This function returns the filter coefficients of a Parzen window.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default"> = </span><span class="functionid">parzenwin</span><span class="default"> (</span><span class="default">m</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">m:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">y:</span> + <dd><p class="para">output variable, vector of real numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function returns the filter coefficients of a Parzen window of length m supplied as input, to the output vector y.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">parzenwin</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.0740741</span> +<span class="scilabnumber">1.</span> +<span class="scilabnumber">0.0740741</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="nuttallwin.html"><< nuttallwin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="pchip.html">pchip >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/pchip.html b/help/en_US/scilab_en_US_help/pchip.html new file mode 100644 index 0000000..eba25fd --- /dev/null +++ b/help/en_US/scilab_en_US_help/pchip.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>pchip</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="parzenwin.html"><< parzenwin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="pchips.html">pchips >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > pchip</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">pchip</h1> + <p class="refpurpose"></p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="parzenwin.html"><< parzenwin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="pchips.html">pchips >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/pchips.html b/help/en_US/scilab_en_US_help/pchips.html new file mode 100644 index 0000000..72f4800 --- /dev/null +++ b/help/en_US/scilab_en_US_help/pchips.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>pchips</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="pchip.html"><< pchip</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="peak2peak.html">peak2peak >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > pchips</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">pchips</h1> + <p class="refpurpose"></p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="pchip.html"><< pchip</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="peak2peak.html">peak2peak >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/peak2peak.html b/help/en_US/scilab_en_US_help/peak2peak.html new file mode 100644 index 0000000..b012307 --- /dev/null +++ b/help/en_US/scilab_en_US_help/peak2peak.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>peak2peak</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="pchips.html"><< pchips</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="peak2rms.html">peak2rms >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > peak2peak</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">peak2peak</h1> + <p class="refpurpose">funcprot(0);</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="pchips.html"><< pchips</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="peak2rms.html">peak2rms >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/peak2rms.html b/help/en_US/scilab_en_US_help/peak2rms.html new file mode 100644 index 0000000..90dfc8c --- /dev/null +++ b/help/en_US/scilab_en_US_help/peak2rms.html @@ -0,0 +1,127 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>peak2rms</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="peak2peak.html"><< peak2peak</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="peig.html">peig >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > peak2rms</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">peak2rms</h1> + <p class="refpurpose">This function calculates the ratio of peak magnitude to the Root Mean Square(RMS) value.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">OUT</span><span class="default">=</span><span class="functionid">peak2rms</span><span class="default">(</span><span class="default">IN</span><span class="default">)</span> +<span class="default">OUT</span><span class="default">=</span><span class="functionid">peak2rms</span><span class="default">(</span><span class="default">IN</span><span class="default">,</span><span class="default">orientation</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">in:</span> + <dd><p class="para">Vector or Matrix of real or complex elements.</p></dd></dt> + <dt><span class="term">orientation:</span> + <dd><p class="para">A string with possible values "r", "c" or "m" giving the dimension along which the peak2rms value is to be calculated.</p></dd></dt> + <dt><span class="term">out:</span> + <dd><p class="para">A scalar with real value when input is a vector.When input is a matrix, out is the peak magnitude to RMS value along the orientation specified or the default one when not specified.</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">For vector as input, the output is the ratio of peak value to the RMS value. The RMS value can be calculated by taking the square root of mean value of the squared sum of the elements.</p> + <p class="para">When a matrix is given as input the output is peak to RMS ratio in the orientation specified. +The orientation can be given as string with values "r","c" or "m".</p> + <p class="para">peak2rms(in, 1) calculates the values of ratio of peak to RMS of columns of matrix. The output in this case is a row vector with peak2rms value of each column of in.</p> + <p class="para">peak2rms(in, 2) calculates the values of ratio of peak to RMS of rows of matrix, where the output would be a column vector having peak2rms value of each row of in.</p> + <p class="para">The default orientation is chosen to be the index of first dimension of input greater than 1.Hence peak2rms(in) is equivalent to peak2rms(in, "m").</p> + <p class="para">For an N dimensional array the orientation is the index of first non singleton dimension of the array.</p> + <p class="para">If the elements of matrix are complex the absolute values are considered in the calculation of RMS value.</p> + <p class="para"></p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">To</span> <span class="scilabid">calculate</span> <span class="scilabid">peak2rms</span> <span class="scilabid">of</span> <span class="scilabid">a</span> <span class="scilabid">vector</span><span class="scilabspecial">:</span> +<span class="scilabid">IN</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">6</span> <span class="scilabnumber">19</span> <span class="scilabnumber">10</span> <span class="scilabnumber">25</span><span class="scilabopenclose">]</span> +<span class="scilabid">OUT</span><span class="scilaboperator">=</span><span class="scilabid">peak2rms</span><span class="scilabopenclose">(</span><span class="scilabid">IN</span><span class="scilabopenclose">)</span> +<span class="scilabid">The</span> <span class="scilabid">output</span> <span class="scilabid">is</span> <span class="scilabid">OUT</span><span class="scilaboperator">=</span> +<span class="scilabnumber">1.4638501</span> +<span class="scilabnumber">1.3887301</span> +<span class="scilabnumber">1.119186</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">To</span> <span class="scilabid">calculate</span> <span class="scilabid">peak2rms</span> <span class="scilabid">of</span> <span class="scilabid">rows</span> <span class="scilabid">of</span> <a class="scilabcommand" href="scilab://matrix">matrix</a><span class="scilabspecial">:</span> +<span class="scilabid">IN</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">3</span> <span class="scilabnumber">5</span><span class="scilabdefault">;</span><span class="scilabnumber">2</span> <span class="scilabnumber">4</span> <span class="scilabnumber">6</span><span class="scilabdefault">;</span><span class="scilabnumber">7</span> <span class="scilabnumber">8</span> <span class="scilabnumber">9</span><span class="scilabopenclose">]</span> +<span class="scilabid">OUT</span><span class="scilaboperator">=</span><span class="scilabid">peak2rms</span><span class="scilabopenclose">(</span><span class="scilabid">IN</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> +<span class="scilabid">The</span> <span class="scilabid">output</span> <span class="scilabid">is</span> +<span class="scilabid">OUT</span><span class="scilaboperator">=</span> <span class="scilabnumber">1.3719887</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">To</span> <span class="scilabid">calculate</span> <span class="scilabid">peak</span> <span class="scilabid">magnitude</span> <span class="scilabid">to</span> <span class="scilabid">RMS</span> <span class="scilabid">value</span> <span class="scilabid">of</span> <span class="scilabid">sinusoid</span><span class="scilabspecial">:</span> + +<span class="scilabid">t</span><span class="scilaboperator">=</span><span class="scilabnumber">0</span><span class="scilabspecial">:</span><span class="scilabnumber">0.6</span><span class="scilabspecial">:</span><span class="scilabnumber">9</span> +<span class="scilabid">IN</span><span class="scilaboperator">=</span><a class="scilabcommand" href="scilab://cos">cos</a><span class="scilabopenclose">(</span><span class="scilabnumber">6</span><span class="scilaboperator">*</span><span class="scilabconstants">%pi</span><span class="scilaboperator">*</span><span class="scilabid">t</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> +<span class="scilabid">OUT</span><span class="scilaboperator">=</span> <span class="scilabid">peak2rms</span><span class="scilabopenclose">(</span><span class="scilabid">IN</span><span class="scilabopenclose">)</span> +<span class="scilabid">The</span> <span class="scilabid">output</span> <span class="scilabid">is</span> +<span class="scilabid">OUT</span><span class="scilaboperator">=</span> <span class="scilabnumber">1.3719887</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"><li class="member"><a href="scilab://abs" class="link">abs</a></li> + <li class="member"><a href="scilab://mean" class="link">mean</a></li> + <li class="member"><a href="scilab://max" class="link">max</a></li> + <li class="member"><a href="scilab://sqrt" class="link">sqrt</a></li> + <li class="member"><a href="scilab://isempty" class="link">isempty</a></li></ul></div> + +<div class="refsection"><h3 class="title">Authors</h3> + <ul class="itemizedlist"><li class="member">Indira Askaukar</li></ul></div> + +<div class="refsection"><h3 class="title">Bibliography</h3> + <p class="para">Matlab help document.</p> + <p class="para">Modified to accept char i/p</p> + <p class="para">MOdified function to match MATLAB input arguments</p> + <p class="para">Now for calculating the values of ratio of peak to RMS of columns of matrix use peak2rms(in,1)</p> + <p class="para">And for calculates the values of ratio of peak to RMS of rows of matrix. use peak2rms(in,2)</p> + <p class="para">Updated help comments accordingly</p> + <p class="para">MOdifications done by by Debdeep Dey</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="peak2peak.html"><< peak2peak</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="peig.html">peig >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/peig.html b/help/en_US/scilab_en_US_help/peig.html new file mode 100644 index 0000000..1098772 --- /dev/null +++ b/help/en_US/scilab_en_US_help/peig.html @@ -0,0 +1,125 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>peig</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="peak2rms.html"><< peak2rms</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="periodogram.html">periodogram >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > peig</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">peig</h1> + <p class="refpurpose">Psuedospectrum using the eigenvector method.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">S</span><span class="default">,</span><span class="default">w</span><span class="default">] = </span><span class="functionid">peig</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">p</span><span class="default">)</span> +<span class="default">[</span><span class="default">S</span><span class="default">,</span><span class="default">w</span><span class="default">] = </span><span class="functionid">peig</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">p</span><span class="default">,</span><span class="default">w</span><span class="default">)</span> +<span class="default">[</span><span class="default">S</span><span class="default">,</span><span class="default">w</span><span class="default">] = </span><span class="functionid">peig</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">p</span><span class="default">,</span><span class="default">nfft</span><span class="default">)</span> +<span class="default">[</span><span class="default">S</span><span class="default">,</span><span class="default">w</span><span class="default">] = </span><span class="functionid">peig</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">p</span><span class="default">,</span><span class="default">nfft</span><span class="default">,</span><span class="default">fs</span><span class="default">)</span> +<span class="default">[</span><span class="default">S</span><span class="default">,</span><span class="default">w</span><span class="default">] = </span><span class="functionid">peig</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">p</span><span class="default">,</span><span class="default">f</span><span class="default">,</span><span class="default">fs</span><span class="default">)</span> +<span class="default">[</span><span class="default">S</span><span class="default">,</span><span class="default">f</span><span class="default">] = </span><span class="functionid">peig</span><span class="default">(...,</span>'<span class="default">corr</span>'<span class="default">)</span> +<span class="default">[</span><span class="default">S</span><span class="default">,</span><span class="default">f</span><span class="default">] = </span><span class="functionid">peig</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">p</span><span class="default">,</span><span class="default">nfft</span><span class="default">,</span><span class="default">fs</span><span class="default">,</span><span class="default">nwin</span><span class="default">,</span><span class="default">noverlap</span><span class="default">)</span> +<span class="default">[...] = </span><span class="functionid">peig</span><span class="default">(...,</span><span class="default">freqrange</span><span class="default">)</span> +<span class="default">[...,</span><span class="default">v</span><span class="default">,</span><span class="default">e</span><span class="default">] = </span><span class="functionid">peig</span><span class="default">(...)</span> + +<span class="default">Parameters</span><span class="default">:</span> +<span class="default">x</span><span class="default"> - </span><span class="default">int</span><span class="default">|</span><span class="default">double</span><span class="default"> - </span><span class="default">vector</span><span class="default">|</span><span class="default">matrix</span> +<span class="default">Input</span> <span class="default">signal</span><span class="default">. </span><span class="default">In</span> <span class="default">case</span> <span class="default">of</span> <span class="default">a</span> <span class="default">matrix</span><span class="default">, </span><span class="default">each</span> <span class="default">row</span> <span class="default">of</span> <span class="default">x</span> <span class="default">represents</span> <span class="default">a</span> +<span class="default">seperate</span> <span class="default">observation</span> <span class="default">of</span> <span class="default">the</span> <span class="default">signal</span><span class="default">. </span><span class="default">If</span> '<span class="default">corr</span>' <span class="default">flag</span> <span class="default">is</span> <span class="default">specified</span><span class="default">,</span> +<span class="default">then</span> <span class="default">x</span> <span class="default">is</span> <span class="default">the</span> <span class="default">correlation</span> <span class="default">matrix</span><span class="default">.</span> +<span class="default">If</span> <span class="default">w</span> <span class="default">is</span> <span class="default">not</span> <span class="default">specified</span> <span class="default">in</span> <span class="default">the</span> <span class="default">input</span><span class="default">, </span><span class="default">it</span> <span class="default">is</span> <span class="default">determined</span> <span class="default">by</span> <span class="default">the</span> +<span class="default">algorithm</span><span class="default">. </span><span class="default">If</span> <span class="default">x</span> <span class="default">is</span> <span class="default">real</span> <span class="default">valued</span><span class="default">, </span><span class="default">then</span> <span class="default">range</span> <span class="default">of</span> <span class="default">w</span> <span class="default">is</span><span class="default"> [0, </span><span class="default">pi</span><span class="default">].</span> +<span class="default">Otherwise</span><span class="default">, </span><span class="default">the</span> <span class="default">range</span> <span class="default">of</span> <span class="default">w</span> <span class="default">is</span><span class="default"> [0, 2</span><span class="default">pi</span><span class="default">)</span> +<span class="default">p</span><span class="default"> - </span><span class="default">int</span><span class="default">|</span><span class="default">double</span><span class="default"> - </span><span class="default">scalar</span><span class="default">|</span><span class="default">vector</span> +<span class="default">p</span><span class="default">(1) </span><span class="default">is</span> <span class="default">the</span> <span class="default">dimension</span> <span class="default">of</span> <span class="default">the</span> <span class="default">signal</span> <span class="default">subspace</span> +<span class="default">p</span><span class="default">(2), </span><span class="default">if</span> <span class="default">specified</span><span class="default">, </span><span class="default">represents</span> <span class="default">a</span> <span class="default">threshold</span> <span class="default">that</span> <span class="default">is</span> <span class="default">multiplied</span> <span class="default">by</span> +<span class="default">the</span> <span class="default">smallest</span> <span class="default">estimated</span> <span class="default">eigenvalue</span> <span class="default">of</span> <span class="default">the</span> <span class="default">signal</span>'<span class="default">s</span> <span class="default">correlation</span> <span class="default">matrix</span><span class="default">.</span> +<span class="default">w</span><span class="default"> - </span><span class="default">int</span><span class="default">|</span><span class="default">double</span><span class="default"> - </span><span class="default">vector</span> +<span class="default">w</span> <span class="default">is</span> <span class="default">the</span> <span class="default">vector</span> <span class="default">of</span> <span class="default">normalized</span> <span class="default">frequencies</span> <span class="default">over</span> <span class="default">which</span> <span class="default">the</span> +<span class="default">pseuspectrogram</span> <span class="default">is</span> <span class="default">to</span> <span class="default">be</span> <span class="default">computed</span><span class="default">.</span> +<span class="default">nfft</span><span class="default"> - </span><span class="default">int</span><span class="default"> - </span><span class="default">scalar</span><span class="default"> (</span><span class="default">Default</span><span class="default"> = 256)</span> +<span class="default">Length</span> <span class="default">of</span> <span class="default">the</span> <span class="default">fft</span> <span class="default">used</span> <span class="default">to</span> <span class="default">compute</span> <span class="default">pseudospectrum</span><span class="default">. </span><span class="default">The</span> <span class="default">length</span> <span class="default">of</span> <span class="default">S</span> +<span class="default">(</span><span class="default">and</span> <span class="default">hence</span> <span class="default">w</span><span class="default">/</span><span class="default">f</span><span class="default">) </span><span class="default">depends</span> <span class="default">on</span> <span class="default">the</span> <span class="default">type</span> <span class="default">of</span> <span class="default">values</span> <span class="default">in</span> <span class="default">x</span> <span class="default">and</span> <span class="default">nfft</span><span class="default">.</span> +<span class="default">If</span> <span class="default">x</span> <span class="default">is</span> <span class="default">real</span><span class="default">, </span><span class="default">length</span> <span class="default">of</span> <span class="default">s</span> <span class="default">is</span><span class="default"> (</span><span class="default">nfft</span><span class="default">/</span><span class="default">2 + 1) {</span><span class="default">Range</span> <span class="default">of</span> <span class="default">w</span><span class="default"> = [0, </span><span class="default">pi</span><span class="default">]} </span><span class="default">if</span> +<span class="default">nfft</span> <span class="default">is</span> <span class="default">even</span> <span class="default">and</span><span class="default"> (</span><span class="default">nfft</span><span class="default">+1)</span><span class="default">/</span><span class="default">2 {</span><span class="default">Range</span> <span class="default">of</span> <span class="default">w</span><span class="default"> = [0, </span><span class="default">pi</span><span class="default">)} </span><span class="default">otherwise</span><span class="default">.</span> +<span class="default">If</span> <span class="default">x</span> <span class="default">is</span> <span class="default">complex</span><span class="default">, </span><span class="default">length</span> <span class="default">of</span> <span class="default">s</span> <span class="default">is</span> <span class="default">nfft</span><span class="default">.</span> +<span class="default">fs</span><span class="default"> - </span><span class="default">int</span><span class="default">|</span><span class="default">double</span><span class="default"> - </span><span class="default">scalar</span><span class="default"> (</span><span class="default">Default</span><span class="default"> = 1)</span> +<span class="default">Sampling</span> <span class="default">rate</span><span class="default">. </span><span class="default">Used</span> <span class="default">to</span> <span class="default">convert</span> <span class="default">the</span> <span class="default">normalized</span> <span class="default">frequencies</span><span class="default"> (</span><span class="default">w</span><span class="default">) </span><span class="default">to</span> +<span class="default">actual</span> <span class="default">values</span><span class="default"> (</span><span class="default">f</span><span class="default">) </span><span class="default">and</span> <span class="default">vice</span><span class="default">-</span><span class="default">versa</span><span class="default">.</span> +<span class="default">nwin</span><span class="default"> - </span><span class="default">int</span><span class="default">|</span><span class="default">double</span><span class="default"> - </span><span class="default">scalar</span><span class="default"> (</span><span class="default">int</span> <span class="default">only</span><span class="default">)|</span><span class="default">vector</span><span class="default"> (</span><span class="default">Default</span><span class="default"> = 2*</span><span class="default">p</span><span class="default">(1))</span> +<span class="default">If</span> <span class="default">nwin</span> <span class="default">is</span> <span class="default">scalar</span><span class="default">, </span><span class="default">it</span> <span class="default">is</span> <span class="default">the</span> <span class="default">length</span> <span class="default">of</span> <span class="default">the</span> <span class="default">rectangular</span> <span class="default">window</span><span class="default">.</span> +<span class="default">Otherwise</span><span class="default">, </span><span class="default">the</span> <span class="default">vector</span> <span class="default">input</span> <span class="default">is</span> <span class="default">considered</span> <span class="default">as</span> <span class="default">the</span> <span class="default">window</span> <span class="default">coefficients</span><span class="default">.</span> +<span class="default">Not</span> <span class="default">used</span> <span class="default">if</span> '<span class="default">corr</span>' <span class="default">flag</span> <span class="default">present</span><span class="default">.</span> +<span class="default">If</span> <span class="default">x</span> <span class="default">is</span> <span class="default">a</span> <span class="default">vector</span><span class="default">, </span><span class="default">windowing</span> <span class="default">not</span> <span class="default">done</span> <span class="default">in</span> <span class="default">nwin</span> <span class="default">in</span> <span class="default">scalar</span><span class="default">. </span><span class="default">If</span> <span class="default">x</span> <span class="default">is</span> <span class="default">a</span> +<span class="default">matrix</span><span class="default">,</span> +<span class="default">noverlap</span><span class="default"> - </span><span class="default">int</span><span class="default"> - </span><span class="default">scalar</span><span class="default"> (</span><span class="default">Default</span><span class="default"> = </span><span class="default">nwin</span><span class="default">-1)</span> +<span class="default">number</span> <span class="default">of</span> <span class="default">points</span> <span class="default">by</span> <span class="default">which</span> <span class="default">successive</span> <span class="default">windows</span> <span class="default">overlap</span><span class="default">. </span><span class="default">noverlap</span> <span class="default">not</span> +<span class="default">used</span> <span class="default">if</span> <span class="default">x</span> <span class="default">is</span> <span class="default">a</span> <span class="default">matrix</span> +<span class="default">freqrange</span><span class="default"> - </span><span class="default">string</span> +<span class="default">The</span> <span class="default">range</span> <span class="default">of</span> <span class="default">frequencies</span> <span class="default">over</span> <span class="default">which</span> <span class="default">the</span> <span class="default">pseudospetrogram</span> <span class="default">is</span> +<span class="default">computed</span><span class="default">. </span><span class="default">Three</span> <span class="default">possible</span> <span class="default">values</span><span class="default"> - </span>'<span class="default">onesided</span>'<span class="default">, </span>'<span class="default">twosided</span>'<span class="default">, </span>'<span class="default">centered</span>' +'<span class="default">corr</span>' <span class="default">flag</span> +<span class="default">Presence</span> <span class="default">indicates</span> <span class="default">that</span> <span class="default">the</span> <span class="default">primary</span> <span class="default">input</span> <span class="default">x</span> <span class="default">is</span> <span class="default">actually</span> <span class="default">a</span> +<span class="default">correlation</span> <span class="default">matrix</span> + +<span class="default">Examples</span><span class="default">:</span> +<span class="default">TODO</span><span class="default">:</span></pre></div></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"><li class="member"><a href="rooteig.html" class="link">| pmusic | pmtm | pcov | pmcov | pburg | pyulear | pwelch | corrmtx</a></li></ul></div> + +<div class="refsection"><h3 class="title">Authors</h3> + <ul class="itemizedlist"><li class="member">Ayush Baid</li> + <li class="member">References</li> + <li class="member">[1] Petre Stoica and Randolph Moses, Introduction To Spectral</li> + <li class="member">Analysis, Prentice-Hall, 1997, pg. 15</li> + <li class="member">[2] S. J. Orfanidis, Optimum Signal Processing. An Introduction.</li> + <li class="member">2nd Ed., Macmillan, 1988.</li></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="peak2rms.html"><< peak2rms</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="periodogram.html">periodogram >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/periodogram.html b/help/en_US/scilab_en_US_help/periodogram.html new file mode 100644 index 0000000..3d8b862 --- /dev/null +++ b/help/en_US/scilab_en_US_help/periodogram.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>periodogram</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="peig.html"><< peig</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="phaseInputParseAs_ab.html">phaseInputParseAs_ab >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > periodogram</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">periodogram</h1> + <p class="refpurpose">funcprot(0);</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="peig.html"><< peig</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="phaseInputParseAs_ab.html">phaseInputParseAs_ab >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/phaseInputParseAs_ab.html b/help/en_US/scilab_en_US_help/phaseInputParseAs_ab.html new file mode 100644 index 0000000..b4dbf2d --- /dev/null +++ b/help/en_US/scilab_en_US_help/phaseInputParseAs_ab.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>phaseInputParseAs_ab</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="periodogram.html"><< periodogram</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="phaseInputParseAs_sos.html">phaseInputParseAs_sos >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > phaseInputParseAs_ab</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">phaseInputParseAs_ab</h1> + <p class="refpurpose">fs=0;</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="periodogram.html"><< periodogram</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="phaseInputParseAs_sos.html">phaseInputParseAs_sos >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/phaseInputParseAs_sos.html b/help/en_US/scilab_en_US_help/phaseInputParseAs_sos.html new file mode 100644 index 0000000..7f890a3 --- /dev/null +++ b/help/en_US/scilab_en_US_help/phaseInputParseAs_sos.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>phaseInputParseAs_sos</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="phaseInputParseAs_ab.html"><< phaseInputParseAs_ab</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="phasedelay.html">phasedelay >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > phaseInputParseAs_sos</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">phaseInputParseAs_sos</h1> + <p class="refpurpose">fs=0;</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="phaseInputParseAs_ab.html"><< phaseInputParseAs_ab</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="phasedelay.html">phasedelay >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/phasedelay.html b/help/en_US/scilab_en_US_help/phasedelay.html new file mode 100644 index 0000000..f94d122 --- /dev/null +++ b/help/en_US/scilab_en_US_help/phasedelay.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>phasedelay</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="phaseInputParseAs_sos.html"><< phaseInputParseAs_sos</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="phasez.html">phasez >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > phasedelay</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">phasedelay</h1> + <p class="refpurpose">cas variable is 2 if sos form is involved and 1 if direct rational form is given</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="phaseInputParseAs_sos.html"><< phaseInputParseAs_sos</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="phasez.html">phasez >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/phasez.html b/help/en_US/scilab_en_US_help/phasez.html new file mode 100644 index 0000000..38cfbd6 --- /dev/null +++ b/help/en_US/scilab_en_US_help/phasez.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>phasez</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="phasedelay.html"><< phasedelay</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="pmusic.html">pmusic >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > phasez</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">phasez</h1> + <p class="refpurpose">cas variable is 2 if sos form is involved and 1 if direct rational form is given</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="phasedelay.html"><< phasedelay</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="pmusic.html">pmusic >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/pmusic.html b/help/en_US/scilab_en_US_help/pmusic.html new file mode 100644 index 0000000..812880a --- /dev/null +++ b/help/en_US/scilab_en_US_help/pmusic.html @@ -0,0 +1,125 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>pmusic</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="phasez.html"><< phasez</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="poly2ac.html">poly2ac >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > pmusic</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">pmusic</h1> + <p class="refpurpose">Psuedospectrum using MUSIC algorithm</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">S</span><span class="default">,</span><span class="default">w</span><span class="default">] = </span><span class="functionid">pmusic</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">p</span><span class="default">)</span> +<span class="default">[</span><span class="default">S</span><span class="default">,</span><span class="default">w</span><span class="default">] = </span><span class="functionid">pmusic</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">p</span><span class="default">,</span><span class="default">w</span><span class="default">)</span> +<span class="default">[</span><span class="default">S</span><span class="default">,</span><span class="default">w</span><span class="default">] = </span><span class="functionid">pmusic</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">p</span><span class="default">,</span><span class="default">nfft</span><span class="default">)</span> +<span class="default">[</span><span class="default">S</span><span class="default">,</span><span class="default">w</span><span class="default">] = </span><span class="functionid">pmusic</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">p</span><span class="default">,</span><span class="default">nfft</span><span class="default">,</span><span class="default">fs</span><span class="default">)</span> +<span class="default">[</span><span class="default">S</span><span class="default">,</span><span class="default">w</span><span class="default">] = </span><span class="functionid">pmusic</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">p</span><span class="default">,</span><span class="default">f</span><span class="default">,</span><span class="default">fs</span><span class="default">)</span> +<span class="default">[</span><span class="default">S</span><span class="default">,</span><span class="default">f</span><span class="default">] = </span><span class="functionid">pmusic</span><span class="default">(...,</span>'<span class="default">corr</span>'<span class="default">)</span> +<span class="default">[</span><span class="default">S</span><span class="default">,</span><span class="default">f</span><span class="default">] = </span><span class="functionid">pmusic</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">p</span><span class="default">,</span><span class="default">nfft</span><span class="default">,</span><span class="default">fs</span><span class="default">,</span><span class="default">nwin</span><span class="default">,</span><span class="default">noverlap</span><span class="default">)</span> +<span class="default">[...] = </span><span class="functionid">pmusic</span><span class="default">(...,</span><span class="default">freqrange</span><span class="default">)</span> +<span class="default">[...,</span><span class="default">v</span><span class="default">,</span><span class="default">e</span><span class="default">] = </span><span class="functionid">pmusic</span><span class="default">(...)</span> + +<span class="default">Parameters</span><span class="default">:</span> +<span class="default">x</span><span class="default"> - </span><span class="default">int</span><span class="default">|</span><span class="default">double</span><span class="default"> - </span><span class="default">vector</span><span class="default">|</span><span class="default">matrix</span> +<span class="default">Input</span> <span class="default">signal</span><span class="default">. </span><span class="default">In</span> <span class="default">case</span> <span class="default">of</span> <span class="default">a</span> <span class="default">matrix</span><span class="default">, </span><span class="default">each</span> <span class="default">row</span> <span class="default">of</span> <span class="default">x</span> <span class="default">represents</span> <span class="default">a</span> +<span class="default">seperate</span> <span class="default">observation</span> <span class="default">of</span> <span class="default">the</span> <span class="default">signal</span><span class="default">. </span><span class="default">If</span> '<span class="default">corr</span>' <span class="default">flag</span> <span class="default">is</span> <span class="default">specified</span><span class="default">,</span> +<span class="default">then</span> <span class="default">x</span> <span class="default">is</span> <span class="default">the</span> <span class="default">correlation</span> <span class="default">matrix</span><span class="default">.</span> +<span class="default">If</span> <span class="default">w</span> <span class="default">is</span> <span class="default">not</span> <span class="default">specified</span> <span class="default">in</span> <span class="default">the</span> <span class="default">input</span><span class="default">, </span><span class="default">it</span> <span class="default">is</span> <span class="default">determined</span> <span class="default">by</span> <span class="default">the</span> +<span class="default">algorithm</span><span class="default">. </span><span class="default">If</span> <span class="default">x</span> <span class="default">is</span> <span class="default">real</span> <span class="default">valued</span><span class="default">, </span><span class="default">then</span> <span class="default">range</span> <span class="default">of</span> <span class="default">w</span> <span class="default">is</span><span class="default"> [0, </span><span class="default">pi</span><span class="default">].</span> +<span class="default">Otherwise</span><span class="default">, </span><span class="default">the</span> <span class="default">range</span> <span class="default">of</span> <span class="default">w</span> <span class="default">is</span><span class="default"> [0, 2</span><span class="default">pi</span><span class="default">)</span> +<span class="default">p</span><span class="default"> - </span><span class="default">int</span><span class="default">|</span><span class="default">double</span><span class="default"> - </span><span class="default">scalar</span><span class="default">|</span><span class="default">vector</span> +<span class="default">p</span><span class="default">(1) </span><span class="default">is</span> <span class="default">the</span> <span class="default">dimension</span> <span class="default">of</span> <span class="default">the</span> <span class="default">signal</span> <span class="default">subspace</span> +<span class="default">p</span><span class="default">(2), </span><span class="default">if</span> <span class="default">specified</span><span class="default">, </span><span class="default">represents</span> <span class="default">a</span> <span class="default">threshold</span> <span class="default">that</span> <span class="default">is</span> <span class="default">multiplied</span> <span class="default">by</span> +<span class="default">the</span> <span class="default">smallest</span> <span class="default">estimated</span> <span class="default">eigenvalue</span> <span class="default">of</span> <span class="default">the</span> <span class="default">signal</span>'<span class="default">s</span> <span class="default">correlation</span> <span class="default">matrix</span><span class="default">.</span> +<span class="default">w</span><span class="default"> - </span><span class="default">int</span><span class="default">|</span><span class="default">double</span><span class="default"> - </span><span class="default">vector</span> +<span class="default">w</span> <span class="default">is</span> <span class="default">the</span> <span class="default">vector</span> <span class="default">of</span> <span class="default">normalized</span> <span class="default">frequencies</span> <span class="default">over</span> <span class="default">which</span> <span class="default">the</span> +<span class="default">pseuspectrogram</span> <span class="default">is</span> <span class="default">to</span> <span class="default">be</span> <span class="default">computed</span><span class="default">.</span> +<span class="default">nfft</span><span class="default"> - </span><span class="default">int</span><span class="default"> - </span><span class="default">scalar</span><span class="default"> (</span><span class="default">Default</span><span class="default"> = 256)</span> +<span class="default">Length</span> <span class="default">of</span> <span class="default">the</span> <span class="default">fft</span> <span class="default">used</span> <span class="default">to</span> <span class="default">compute</span> <span class="default">pseudospectrum</span><span class="default">. </span><span class="default">The</span> <span class="default">length</span> <span class="default">of</span> <span class="default">S</span> +<span class="default">(</span><span class="default">and</span> <span class="default">hence</span> <span class="default">w</span><span class="default">/</span><span class="default">f</span><span class="default">) </span><span class="default">depends</span> <span class="default">on</span> <span class="default">the</span> <span class="default">type</span> <span class="default">of</span> <span class="default">values</span> <span class="default">in</span> <span class="default">x</span> <span class="default">and</span> <span class="default">nfft</span><span class="default">.</span> +<span class="default">If</span> <span class="default">x</span> <span class="default">is</span> <span class="default">real</span><span class="default">, </span><span class="default">length</span> <span class="default">of</span> <span class="default">s</span> <span class="default">is</span><span class="default"> (</span><span class="default">nfft</span><span class="default">/</span><span class="default">2 + 1) {</span><span class="default">Range</span> <span class="default">of</span> <span class="default">w</span><span class="default"> = [0, </span><span class="default">pi</span><span class="default">]} </span><span class="default">if</span> +<span class="default">nfft</span> <span class="default">is</span> <span class="default">even</span> <span class="default">and</span><span class="default"> (</span><span class="default">nfft</span><span class="default">+1)</span><span class="default">/</span><span class="default">2 {</span><span class="default">Range</span> <span class="default">of</span> <span class="default">w</span><span class="default"> = [0, </span><span class="default">pi</span><span class="default">)} </span><span class="default">otherwise</span><span class="default">.</span> +<span class="default">If</span> <span class="default">x</span> <span class="default">is</span> <span class="default">complex</span><span class="default">, </span><span class="default">length</span> <span class="default">of</span> <span class="default">s</span> <span class="default">is</span> <span class="default">nfft</span><span class="default">.</span> +<span class="default">fs</span><span class="default"> - </span><span class="default">int</span><span class="default">|</span><span class="default">double</span><span class="default"> - </span><span class="default">scalar</span><span class="default"> (</span><span class="default">Default</span><span class="default"> = 1)</span> +<span class="default">Sampling</span> <span class="default">rate</span><span class="default">. </span><span class="default">Used</span> <span class="default">to</span> <span class="default">convert</span> <span class="default">the</span> <span class="default">normalized</span> <span class="default">frequencies</span><span class="default"> (</span><span class="default">w</span><span class="default">) </span><span class="default">to</span> +<span class="default">actual</span> <span class="default">values</span><span class="default"> (</span><span class="default">f</span><span class="default">) </span><span class="default">and</span> <span class="default">vice</span><span class="default">-</span><span class="default">versa</span><span class="default">.</span> +<span class="default">nwin</span><span class="default"> - </span><span class="default">int</span><span class="default">|</span><span class="default">double</span><span class="default"> - </span><span class="default">scalar</span><span class="default"> (</span><span class="default">int</span> <span class="default">only</span><span class="default">)|</span><span class="default">vector</span><span class="default"> (</span><span class="default">Default</span><span class="default"> = 2*</span><span class="default">p</span><span class="default">(1))</span> +<span class="default">If</span> <span class="default">nwin</span> <span class="default">is</span> <span class="default">scalar</span><span class="default">, </span><span class="default">it</span> <span class="default">is</span> <span class="default">the</span> <span class="default">length</span> <span class="default">of</span> <span class="default">the</span> <span class="default">rectangular</span> <span class="default">window</span><span class="default">.</span> +<span class="default">Otherwise</span><span class="default">, </span><span class="default">the</span> <span class="default">vector</span> <span class="default">input</span> <span class="default">is</span> <span class="default">considered</span> <span class="default">as</span> <span class="default">the</span> <span class="default">window</span> <span class="default">coefficients</span><span class="default">.</span> +<span class="default">Not</span> <span class="default">used</span> <span class="default">if</span> '<span class="default">corr</span>' <span class="default">flag</span> <span class="default">present</span><span class="default">.</span> +<span class="default">If</span> <span class="default">x</span> <span class="default">is</span> <span class="default">a</span> <span class="default">vector</span><span class="default">, </span><span class="default">windowing</span> <span class="default">not</span> <span class="default">done</span> <span class="default">in</span> <span class="default">nwin</span> <span class="default">in</span> <span class="default">scalar</span><span class="default">. </span><span class="default">If</span> <span class="default">x</span> <span class="default">is</span> <span class="default">a</span> +<span class="default">matrix</span><span class="default">,</span> +<span class="default">noverlap</span><span class="default"> - </span><span class="default">int</span><span class="default"> - </span><span class="default">scalar</span><span class="default"> (</span><span class="default">Default</span><span class="default"> = </span><span class="default">nwin</span><span class="default">-1)</span> +<span class="default">number</span> <span class="default">of</span> <span class="default">points</span> <span class="default">by</span> <span class="default">which</span> <span class="default">successive</span> <span class="default">windows</span> <span class="default">overlap</span><span class="default">. </span><span class="default">noverlap</span> <span class="default">not</span> +<span class="default">used</span> <span class="default">if</span> <span class="default">x</span> <span class="default">is</span> <span class="default">a</span> <span class="default">matrix</span> +<span class="default">freqrange</span><span class="default"> - </span><span class="default">string</span> +<span class="default">The</span> <span class="default">range</span> <span class="default">of</span> <span class="default">frequencies</span> <span class="default">over</span> <span class="default">which</span> <span class="default">the</span> <span class="default">pseudospetrogram</span> <span class="default">is</span> +<span class="default">computed</span><span class="default">. </span><span class="default">Three</span> <span class="default">possible</span> <span class="default">values</span><span class="default"> - </span>'<span class="default">onesided</span>'<span class="default">, </span>'<span class="default">twosided</span>'<span class="default">, </span>'<span class="default">centered</span>' +'<span class="default">corr</span>' <span class="default">flag</span> +<span class="default">Presence</span> <span class="default">indicates</span> <span class="default">that</span> <span class="default">the</span> <span class="default">primary</span> <span class="default">input</span> <span class="default">x</span> <span class="default">is</span> <span class="default">actually</span> <span class="default">a</span> +<span class="default">correlation</span> <span class="default">matrix</span> + +<span class="default">Examples</span><span class="default">:</span> +<span class="default">TODO</span><span class="default">:</span></pre></div></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"><li class="member"><a href="scilab://pburg" class="link">| peig | periodogram | pmtm | prony | pwelch | rooteig | rootmusic</a></li></ul></div> + +<div class="refsection"><h3 class="title">Authors</h3> + <ul class="itemizedlist"><li class="member">Ayush Baid</li> + <li class="member">References</li> + <li class="member">[1] Petre Stoica and Randolph Moses, Introduction To Spectral</li> + <li class="member">Analysis, Prentice-Hall, 1997, pg. 15</li> + <li class="member">[2] S. J. Orfanidis, Optimum Signal Processing. An Introduction.</li> + <li class="member">2nd Ed., Macmillan, 1988.</li></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="phasez.html"><< phasez</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="poly2ac.html">poly2ac >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/poly2ac.html b/help/en_US/scilab_en_US_help/poly2ac.html new file mode 100644 index 0000000..0c8b707 --- /dev/null +++ b/help/en_US/scilab_en_US_help/poly2ac.html @@ -0,0 +1,92 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>poly2ac</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="pmusic.html"><< pmusic</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="poly2lsf.html">poly2lsf >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > poly2ac</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">poly2ac</h1> + <p class="refpurpose">Convert prediction polynomial to autocorrelation sequence.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">R</span><span class="default"> = </span><span class="functionid">poly2ac</span><span class="default">(</span><span class="default">a</span><span class="default">,</span><span class="default">efinal</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">a:</span> + <dd><p class="para">input prediction polynomial with 1st element 1 (if not, poly2ac normalizes it to 1 before proceeding).</p></dd></dt> + <dt><span class="term">efinal:</span> + <dd><p class="para">input prediction error</p></dd></dt> + <dt><span class="term">r:</span> + <dd><p class="para">output autocorrelation sequence</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This function obtains the underlying autocorrelation sequence that would best fit a linear prediction filter described by the +denominator polynomial and the numerator scaling. The filter is H(z) = efinal/(a(1) + a(2) x z a(3) x z^2 ... a(n) x z^n-1)</p> + <p class="para"></p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1.0000</span> <span class="scilabnumber">0.4288</span> <span class="scilabnumber">0.76</span> <span class="scilabnumber">0.0404</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.02</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">efinal</span> <span class="scilaboperator">=</span> <span class="scilabnumber">0.2</span><span class="scilabdefault">;</span> <span class="scilabcomment">// Step prediction error</span> +<span class="scilabid">r</span> <span class="scilaboperator">=</span> <span class="scilabid">poly2ac</span><span class="scilabopenclose">(</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">efinal</span><span class="scilabopenclose">)</span> <span class="scilabcomment">// Autocorrelation sequence</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"><li class="member"><a href="ac2poly.html" class="link">ac2poly</a></li> + <li class="member"><a href="poly2rc.html" class="link">poly2rc</a></li> + <li class="member"><a href="rc2poly.html" class="link">rc2poly</a></li> + <li class="member"><a href="rc2ac.html" class="link">rc2ac</a></li> + <li class="member"><a href="ac2rc.html" class="link">ac2rc</a></li> + <li class="member"><a href="scilab://Author:" class="link">Parthe Pandit</a></li></ul></div> + +<div class="refsection"><h3 class="title">Bibliography</h3> + <p class="para">S. Kay, Modern Spectral Estimation, Prentice Hall, N.J., 1987, Chapter 6.</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="pmusic.html"><< pmusic</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="poly2lsf.html">poly2lsf >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/poly2lsf.html b/help/en_US/scilab_en_US_help/poly2lsf.html new file mode 100644 index 0000000..0c09ade --- /dev/null +++ b/help/en_US/scilab_en_US_help/poly2lsf.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>poly2lsf</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="poly2ac.html"><< poly2ac</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="poly2rc.html">poly2rc >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > poly2lsf</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">poly2lsf</h1> + <p class="refpurpose"></p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="poly2ac.html"><< poly2ac</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="poly2rc.html">poly2rc >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/poly2rc.html b/help/en_US/scilab_en_US_help/poly2rc.html new file mode 100644 index 0000000..807c292 --- /dev/null +++ b/help/en_US/scilab_en_US_help/poly2rc.html @@ -0,0 +1,64 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>poly2rc</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="poly2lsf.html"><< poly2lsf</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="polyscale.html">polyscale >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > poly2rc</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">poly2rc</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">kr</span><span class="default"> = </span><span class="functionid">poly2rc</span><span class="default">(</span><span class="default">a</span><span class="default">)</span> +<span class="default">[</span><span class="default">kr</span><span class="default">, </span><span class="default">R0</span><span class="default">] = </span><span class="default">rc2poly</span><span class="default">(</span><span class="default">a</span><span class="default">, </span><span class="default">efinal</span><span class="default">)</span></pre></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="poly2lsf.html"><< poly2lsf</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="polyscale.html">polyscale >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/polyscale.html b/help/en_US/scilab_en_US_help/polyscale.html new file mode 100644 index 0000000..6a38887 --- /dev/null +++ b/help/en_US/scilab_en_US_help/polyscale.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>polyscale</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="poly2rc.html"><< poly2rc</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="polystab.html">polystab >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > polyscale</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">polyscale</h1> + <p class="refpurpose">errcheck1</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="poly2rc.html"><< poly2rc</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="polystab.html">polystab >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/polystab.html b/help/en_US/scilab_en_US_help/polystab.html new file mode 100644 index 0000000..7023ed8 --- /dev/null +++ b/help/en_US/scilab_en_US_help/polystab.html @@ -0,0 +1,76 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>polystab</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="polyscale.html"><< polyscale</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="polyval.html">polyval >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > polystab</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">polystab</h1> + <p class="refpurpose">This function stabilizes the polynomial transfer function.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">b</span><span class="default"> = </span><span class="functionid">polystab</span><span class="default">(</span><span class="default">a</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">a:</span> + <dd><p class="para"></p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function stabilizes the polynomial transfer function by replacing all roots outside the unit circle with their reflection inside the unit circle.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">polystab</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">5</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">1.</span> <span class="scilabnumber">0.6</span> <span class="scilabnumber">0.2</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="polyscale.html"><< polyscale</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="polyval.html">polyval >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/polyval.html b/help/en_US/scilab_en_US_help/polyval.html new file mode 100644 index 0000000..f81e56b --- /dev/null +++ b/help/en_US/scilab_en_US_help/polyval.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>polyval</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="polystab.html"><< polystab</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="pow2db.html">pow2db >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > polyval</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">polyval</h1> + <p class="refpurpose"></p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="polystab.html"><< polystab</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="pow2db.html">pow2db >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/pow2db.html b/help/en_US/scilab_en_US_help/pow2db.html new file mode 100644 index 0000000..a45679c --- /dev/null +++ b/help/en_US/scilab_en_US_help/pow2db.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>pow2db</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="polyval.html"><< polyval</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="primitive.html">primitive >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > pow2db</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">pow2db</h1> + <p class="refpurpose">rhs = argn(2)</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="polyval.html"><< polyval</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="primitive.html">primitive >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/primitive.html b/help/en_US/scilab_en_US_help/primitive.html new file mode 100644 index 0000000..d82fb83 --- /dev/null +++ b/help/en_US/scilab_en_US_help/primitive.html @@ -0,0 +1,81 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>primitive</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="pow2db.html"><< pow2db</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="prony.html">prony >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > primitive</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">primitive</h1> + <p class="refpurpose">This function calculates the primitive of a given function supplied as input.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default"> = </span><span class="functionid">primitive</span><span class="default">(</span><span class="default">f</span><span class="default">, </span><span class="default">t</span><span class="default">)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">primitive</span><span class="default">(</span><span class="default">f</span><span class="default">, </span><span class="default">t</span><span class="default">, </span><span class="default">x</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">f:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">t:</span> + <dd><p class="para"></p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function calculates the primitive of a given function supplied as input. +The second parameter t is a vector at which the output is evaluated (at the points t). This vector should be ascending and ordered. +The function approximates the primitive (indefinite integral) of the univariate function handle f with constant of integration x.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">primitive</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">5</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">9</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">9.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="pow2db.html"><< pow2db</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="prony.html">prony >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/prony.html b/help/en_US/scilab_en_US_help/prony.html new file mode 100644 index 0000000..fb62758 --- /dev/null +++ b/help/en_US/scilab_en_US_help/prony.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>prony</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="primitive.html"><< primitive</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="pulseperiod.html">pulseperiod >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > prony</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">prony</h1> + <p class="refpurpose"></p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="primitive.html"><< primitive</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="pulseperiod.html">pulseperiod >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/pulseperiod.html b/help/en_US/scilab_en_US_help/pulseperiod.html new file mode 100644 index 0000000..29702cd --- /dev/null +++ b/help/en_US/scilab_en_US_help/pulseperiod.html @@ -0,0 +1,69 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>pulseperiod</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="prony.html"><< prony</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="pulsesep.html">pulsesep >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > pulseperiod</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">pulseperiod</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">p</span><span class="default">=</span><span class="functionid">pulseperiod</span><span class="default">(</span><span class="default">x</span><span class="default">)</span> +<span class="default">p</span><span class="default">=</span><span class="functionid">pulseperiod</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">Fs</span><span class="default">)</span> +<span class="default">p</span><span class="default">=</span><span class="functionid">pulseperiod</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">)</span> +<span class="default">p</span><span class="default">=</span><span class="functionid">pulseperiod</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">, </span>'<span class="default">Polarity</span>'<span class="default">, </span><span class="default">pol</span><span class="default">)</span> +<span class="default">p</span><span class="default">=</span><span class="functionid">pulseperiod</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">, </span>'<span class="default">MidPercentReferenceLevel</span>'<span class="default">, </span><span class="default">N</span><span class="default"> )</span> +<span class="default">p</span><span class="default">=</span><span class="functionid">pulseperiod</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">, </span>'<span class="default">Tolerance</span>'<span class="default">, </span><span class="default">M</span><span class="default">)</span> +<span class="default">p</span><span class="default">=</span><span class="functionid">pulseperiod</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">,</span>'<span class="default">StateLevels</span>'<span class="default">, </span><span class="default">O</span><span class="default">)</span></pre></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="prony.html"><< prony</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="pulsesep.html">pulsesep >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/pulsesep.html b/help/en_US/scilab_en_US_help/pulsesep.html new file mode 100644 index 0000000..b78de51 --- /dev/null +++ b/help/en_US/scilab_en_US_help/pulsesep.html @@ -0,0 +1,69 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>pulsesep</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="pulseperiod.html"><< pulseperiod</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="pulsewidth.html">pulsewidth >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > pulsesep</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">pulsesep</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">s</span><span class="default">=</span><span class="functionid">pulsesep</span><span class="default">(</span><span class="default">x</span><span class="default">)</span> +<span class="default">s</span><span class="default">=</span><span class="functionid">pulsesep</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">Fs</span><span class="default">)</span> +<span class="default">s</span><span class="default">=</span><span class="functionid">pulsesep</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">)</span> +<span class="default">s</span><span class="default">=</span><span class="functionid">pulsesep</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">, </span>'<span class="default">Polarity</span>'<span class="default">, </span><span class="default">pol</span><span class="default">)</span> +<span class="default">s</span><span class="default">=</span><span class="functionid">pulsesep</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">, </span>'<span class="default">MidPercentReferenceLevel</span>'<span class="default">, </span><span class="default">N</span><span class="default"> )</span> +<span class="default">s</span><span class="default">=</span><span class="functionid">pulsesep</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">, </span>'<span class="default">Tolerance</span>'<span class="default">, </span><span class="default">M</span><span class="default">)</span> +<span class="default">s</span><span class="default">=</span><span class="functionid">pulsesep</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">,</span>'<span class="default">StateLevels</span>'<span class="default">, [</span><span class="default">O</span><span class="default"> 1])</span></pre></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="pulseperiod.html"><< pulseperiod</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="pulsewidth.html">pulsewidth >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/pulsewidth.html b/help/en_US/scilab_en_US_help/pulsewidth.html new file mode 100644 index 0000000..4fa6e17 --- /dev/null +++ b/help/en_US/scilab_en_US_help/pulsewidth.html @@ -0,0 +1,69 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>pulsewidth</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="pulsesep.html"><< pulsesep</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="pulstran.html">pulstran >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > pulsewidth</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">pulsewidth</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">w</span><span class="default">=</span><span class="functionid">pulsewidth</span><span class="default">(</span><span class="default">x</span><span class="default">)</span> +<span class="default">w</span><span class="default">=</span><span class="functionid">pulsewidth</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">Fs</span><span class="default">)</span> +<span class="default">w</span><span class="default">=</span><span class="functionid">pulsewidth</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">)</span> +<span class="default">w</span><span class="default">=</span><span class="functionid">pulsewidth</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">, </span>'<span class="default">Polarity</span>'<span class="default">, </span><span class="default">pol</span><span class="default">)</span> +<span class="default">w</span><span class="default">=</span><span class="functionid">pulsewidth</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">, </span>'<span class="default">MidPercentReferenceLevel</span>'<span class="default">, </span><span class="default">N</span><span class="default"> )</span> +<span class="default">w</span><span class="default">=</span><span class="functionid">pulsewidth</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">, </span>'<span class="default">Tolerance</span>'<span class="default">, </span><span class="default">M</span><span class="default">)</span> +<span class="default">w</span><span class="default">=</span><span class="functionid">pulsewidth</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">t</span><span class="default">,</span>'<span class="default">StateLevels</span>'<span class="default">, </span><span class="default">O</span><span class="default">)</span></pre></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="pulsesep.html"><< pulsesep</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="pulstran.html">pulstran >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/pulstran.html b/help/en_US/scilab_en_US_help/pulstran.html new file mode 100644 index 0000000..9a20b7a --- /dev/null +++ b/help/en_US/scilab_en_US_help/pulstran.html @@ -0,0 +1,88 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>pulstran</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="pulsewidth.html"><< pulsewidth</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rc2ac.html">rc2ac >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > pulstran</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">pulstran</h1> + <p class="refpurpose">This function generates the signal y = sum(func(t+d,...)) for each d.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default"> = </span><span class="functionid">pulstran</span><span class="default"> (</span><span class="default">t</span><span class="default">, </span><span class="default">d</span><span class="default">, </span><span class="default">func</span><span class="default">, ...)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">pulstran</span><span class="default"> (</span><span class="default">t</span><span class="default">, </span><span class="default">d</span><span class="default">, </span><span class="default">p</span><span class="default">)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">pulstran</span><span class="default"> (</span><span class="default">t</span><span class="default">, </span><span class="default">d</span><span class="default">, </span><span class="default">p</span><span class="default">, </span><span class="default">fs</span><span class="default">)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">pulstran</span><span class="default"> (</span><span class="default">t</span><span class="default">, </span><span class="default">d</span><span class="default">, </span><span class="default">p</span><span class="default">, </span><span class="default">Ffs</span><span class="default">, </span><span class="default">meth</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">t:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">d:</span> + <dd><p class="para">vector or matrix</p></dd></dt> + <dt><span class="term">p:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">fs:</span> + <dd><p class="para">default value 1Hz</p></dd></dt> + <dt><span class="term">func:</span> + <dd><p class="para">function which accepts vector (of times)</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function generates the signal y = sum(func(t+d,...)) for each d. If d is a matrix of two columns, the first column is the delay d and the second column is the amplitude a, and y = sum(a*func(t+d)) for each d, a. Here, func is a function which accepts a vector of times. +If a pulse shape sampled at frequency Fs (default 1 Hz) is supplied instead of a function name, an interpolated version of the pulse is added at each delay d.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">pulstran</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">0.5</span><span class="scilabdefault">,</span><span class="scilabnumber">9</span><span class="scilabdefault">,</span><span class="scilabnumber">8</span><span class="scilabdefault">,</span><span class="scilabnumber">7</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">6</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">7</span><span class="scilabdefault">,</span><span class="scilabnumber">0.5</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.</span> <span class="scilabnumber">0.</span> <span class="scilabnumber">0.</span> <span class="scilabnumber">0.5</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="pulsewidth.html"><< pulsewidth</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rc2ac.html">rc2ac >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/rc2ac.html b/help/en_US/scilab_en_US_help/rc2ac.html new file mode 100644 index 0000000..500d611 --- /dev/null +++ b/help/en_US/scilab_en_US_help/rc2ac.html @@ -0,0 +1,63 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>rc2ac</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="pulstran.html"><< pulstran</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rc2is.html">rc2is >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > rc2ac</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">rc2ac</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">a</span><span class="default"> = </span><span class="functionid">rc2ac</span><span class="default">(</span><span class="default">k</span><span class="default">, </span><span class="default">R0</span><span class="default">)</span></pre></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="pulstran.html"><< pulstran</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rc2is.html">rc2is >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/rc2is.html b/help/en_US/scilab_en_US_help/rc2is.html new file mode 100644 index 0000000..bda7474 --- /dev/null +++ b/help/en_US/scilab_en_US_help/rc2is.html @@ -0,0 +1,91 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>rc2is</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="rc2ac.html"><< rc2ac</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rc2lar.html">rc2lar >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > rc2is</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">rc2is</h1> + <p class="refpurpose">Convert reflection coefficients to inverse sine parameters</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">isin</span><span class="default"> = </span><span class="functionid">rc2is</span><span class="default">(</span><span class="default">K</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">k:</span> + <dd><p class="para">input reflection coefficients. Needs to be an array of real numbers between -1 and 1</p></dd></dt> + <dt><span class="term">isin:</span> + <dd><p class="para">inverse sine parameters corresponding to the reflection coefficients in input</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This function returns the inverse sine parameters corresponding to the input reflection coefficients K. +output array has isin(i) = 2/pi*asin(k(i))</p> + <p class="para">Example +k = [0.3090 0.9801 0.0031 0.0082 -0.0082]; +isin = rc2is(k) //Gives inverse sine parameters</p> + <p class="para"></p></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"><li class="member"><a href="is2rc.html" class="link">is2rc</a></li> + <li class="member"><a href="rc2poly.html" class="link">rc2poly</a></li> + <li class="member"><a href="rc2ac.html" class="link">rc2ac</a></li> + <li class="member"><a href="rc2lar.html" class="link">rc2lar</a></li></ul></div> + +<div class="refsection"><h3 class="title">Authors</h3> + <ul class="itemizedlist"><li class="member">Parthe Pandit</li></ul></div> + +<div class="refsection"><h3 class="title">Bibliography</h3> + <p class="para">J.R. Deller, J.G. Proakis, J.H.L. Hansen, "Discrete-Time Processing of Speech Signals", Prentice Hall, Section 7.4.5</p> + <p class="para">modified function to handle char i/p and also changed error statements to match those of MATLAB by Debdeep Dey</p> + <p class="para">convert char i/p to their respective ascii values</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="rc2ac.html"><< rc2ac</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rc2lar.html">rc2lar >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/rc2lar.html b/help/en_US/scilab_en_US_help/rc2lar.html new file mode 100644 index 0000000..5fa9ad2 --- /dev/null +++ b/help/en_US/scilab_en_US_help/rc2lar.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>rc2lar</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="rc2is.html"><< rc2is</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rc2poly.html">rc2poly >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > rc2lar</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">rc2lar</h1> + <p class="refpurpose"></p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="rc2is.html"><< rc2is</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rc2poly.html">rc2poly >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/rc2poly.html b/help/en_US/scilab_en_US_help/rc2poly.html new file mode 100644 index 0000000..4d8d3ed --- /dev/null +++ b/help/en_US/scilab_en_US_help/rc2poly.html @@ -0,0 +1,64 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>rc2poly</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="rc2lar.html"><< rc2lar</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rcosdesign.html">rcosdesign >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > rc2poly</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">rc2poly</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">a</span><span class="default"> = </span><span class="functionid">rc2poly</span><span class="default">(</span><span class="default">kr</span><span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">efinal</span><span class="default">] = </span><span class="functionid">rc2poly</span><span class="default">(</span><span class="default">kr</span><span class="default">,</span><span class="default">R0</span><span class="default">)</span></pre></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="rc2lar.html"><< rc2lar</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rcosdesign.html">rcosdesign >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/rcosdesign.html b/help/en_US/scilab_en_US_help/rcosdesign.html new file mode 100644 index 0000000..848db3e --- /dev/null +++ b/help/en_US/scilab_en_US_help/rcosdesign.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>rcosdesign</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="rc2poly.html"><< rc2poly</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rectpuls.html">rectpuls >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > rcosdesign</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">rcosdesign</h1> + <p class="refpurpose">RCOSDESIGN computes the raised cosine FIR filter</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="rc2poly.html"><< rc2poly</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rectpuls.html">rectpuls >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/rectpuls.html b/help/en_US/scilab_en_US_help/rectpuls.html new file mode 100644 index 0000000..067c636 --- /dev/null +++ b/help/en_US/scilab_en_US_help/rectpuls.html @@ -0,0 +1,81 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>rectpuls</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="rcosdesign.html"><< rcosdesign</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rectwin.html">rectwin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > rectpuls</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">rectpuls</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">y</span><span class="default">]=</span><span class="functionid">rectpuls</span><span class="default">(</span><span class="default">t</span><span class="default">)</span> +<span class="default">[</span><span class="default">y</span><span class="default">]=</span><span class="functionid">rectpuls</span><span class="default">(</span><span class="default">t</span><span class="default">,</span><span class="default">w</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">t:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function +y = rectpuls(t) returns a continuous, aperiodic, unity-height rectangular pulse depending upon input t, centered about t=0 and having default width of 1. +y = rectpuls(t,w) generates a rectangle of width w.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1.</span> <span class="scilabid">rectpuls</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">10</span> <span class="scilabnumber">100</span> <span class="scilabnumber">1000</span> <span class="scilabnumber">13</span> <span class="scilabnumber">839</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">27</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> +<span class="scilabnumber">2.</span> <span class="scilabid">rectpuls</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1000</span> <span class="scilabnumber">1000</span> <span class="scilabnumber">100</span> <span class="scilabnumber">100</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="rcosdesign.html"><< rcosdesign</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rectwin.html">rectwin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/rectwin.html b/help/en_US/scilab_en_US_help/rectwin.html new file mode 100644 index 0000000..5092f39 --- /dev/null +++ b/help/en_US/scilab_en_US_help/rectwin.html @@ -0,0 +1,80 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>rectwin</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="rectpuls.html"><< rectpuls</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="resample.html">resample >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > rectwin</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">rectwin</h1> + <p class="refpurpose">This function returns the filter coefficients of a rectangular window.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default"> = </span><span class="functionid">rectwin</span><span class="default"> (</span><span class="default">m</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">m:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">y:</span> + <dd><p class="para">output variable, vector of real numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function returns the filter coefficients of a rectangular window of length m supplied as input, to the output vector y.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">rectwin</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">1.</span> +<span class="scilabnumber">1.</span> +<span class="scilabnumber">1.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="rectpuls.html"><< rectpuls</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="resample.html">resample >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/resample.html b/help/en_US/scilab_en_US_help/resample.html new file mode 100644 index 0000000..5833b28 --- /dev/null +++ b/help/en_US/scilab_en_US_help/resample.html @@ -0,0 +1,84 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>resample</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="rectwin.html"><< rectwin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="residued.html">residued >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > resample</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">resample</h1> + <p class="refpurpose">This function resamples in the input sequence x supplied by a factor of p/q.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default"> = </span><span class="functionid">resample</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">p</span><span class="default">, </span><span class="default">q</span><span class="default">)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">resample</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">p</span><span class="default">, </span><span class="default">q</span><span class="default">, </span><span class="default">h</span><span class="default">)</span> +<span class="default">[</span><span class="default">y</span><span class="default">, </span><span class="default">h</span><span class="default">] = </span><span class="functionid">resample</span><span class="default">(...)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">scalar, vector or matrix of real or complex numbers</p></dd></dt> + <dt><span class="term">p:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">q:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">h:</span> + <dd><p class="para">scalar, vector or matrix of real or complex numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function resamples in the input sequence x supplied by a factor of p/q. If x is a matrix, then every column is resampled.hange the sample rate of x by a factor of p/q. +This is performed using a polyphase algorithm. The impulse response h, given as parameter 4, of the antialiasing filter is either specified or designed with a Kaiser-windowed sinecard.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">resample</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> <span class="scilabnumber">0.66667</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="rectwin.html"><< rectwin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="residued.html">residued >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/residued.html b/help/en_US/scilab_en_US_help/residued.html new file mode 100644 index 0000000..31f0d84 --- /dev/null +++ b/help/en_US/scilab_en_US_help/residued.html @@ -0,0 +1,80 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>residued</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="resample.html"><< resample</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="residuez.html">residuez >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > residued</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">residued</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">r</span><span class="default">,</span><span class="default">p</span><span class="default">,</span><span class="default">f</span><span class="default">,</span><span class="default">m</span><span class="default">]=</span><span class="functionid">residued</span><span class="default">(</span><span class="default">b</span><span class="default">,</span><span class="default">a</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">b:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt> + <dt><span class="term">a:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +Similar to the "residuez" function. The difference being in the function "residuez", the IIR part (poles p and residues r) is driven in parallel with the FIR part(f) whereas in the function "residued", the IIR part is driven by the output of the FIR part. In signal modeling applications, this structure can be more accurate.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1.</span> <span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabid">c</span><span class="scilabdefault">,</span><span class="scilabid">d</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">residued</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabid">i</span><span class="scilabdefault">;</span><span class="scilabnumber">3</span> <span class="scilaboperator">-</span><span class="scilabnumber">4</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span><span class="scilabdefault">;</span> <span class="scilabnumber">3</span> <span class="scilabnumber">4</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span> <span class="scilabnumber">0.19405</span> <span class="scilaboperator">-</span> <span class="scilabnumber">1.31377</span><span class="scilabid">i</span><span class="scilabdefault">;</span> <span class="scilabnumber">0.08329</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.99163</span><span class="scilabid">i</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.27734</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.32215</span><span class="scilabid">i</span><span class="scilabopenclose">]</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.10184</span> <span class="scilaboperator">-</span> <span class="scilabnumber">1.19167</span><span class="scilabid">i</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.10184</span> <span class="scilaboperator">+</span> <span class="scilabnumber">1.19167</span><span class="scilabid">i</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">2.79632</span> <span class="scilaboperator">-</span> <span class="scilabnumber">0.00000</span><span class="scilabid">i</span><span class="scilabopenclose">]</span> +<span class="scilabid">c</span> <span class="scilaboperator">=</span> <span class="scilabnumber">1</span> +<span class="scilabid">d</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span> <span class="scilabnumber">1</span> <span class="scilabdefault">;</span> <span class="scilabnumber">1</span> <span class="scilabdefault">;</span> <span class="scilabnumber">1</span><span class="scilabopenclose">]</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="resample.html"><< resample</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="residuez.html">residuez >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/residuez.html b/help/en_US/scilab_en_US_help/residuez.html new file mode 100644 index 0000000..3acb4db --- /dev/null +++ b/help/en_US/scilab_en_US_help/residuez.html @@ -0,0 +1,80 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>residuez</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="residued.html"><< residued</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="risetime.html">risetime >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > residuez</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">residuez</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">r</span><span class="default">,</span><span class="default">p</span><span class="default">,</span><span class="default">f</span><span class="default">,</span><span class="default">m</span><span class="default">]=</span><span class="functionid">residuez</span><span class="default">(</span><span class="default">b</span><span class="default">,</span><span class="default">a</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">b:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt> + <dt><span class="term">a:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function +It compute the PFE of filter H(z)= B(z)/A(z) where inputs b and a are vectors specifying the digital filter.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1.</span> <span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabid">c</span><span class="scilabdefault">,</span><span class="scilabid">d</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">residuez</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabid">i</span> <span class="scilabnumber">2</span><span class="scilabid">i</span> <span class="scilabnumber">3</span><span class="scilabid">i</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">4</span> <span class="scilabnumber">1</span> <span class="scilabnumber">4</span><span class="scilabid">i</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0.6262</span> <span class="scilaboperator">-</span> <span class="scilabnumber">1.4412</span><span class="scilabid">i</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.4039</span> <span class="scilaboperator">+</span> <span class="scilabnumber">1.4658</span><span class="scilabid">i</span><span class="scilabopenclose">]</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">1.0000</span> <span class="scilaboperator">-</span> <span class="scilabnumber">1.4142</span><span class="scilabid">i</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">1.0000</span> <span class="scilaboperator">+</span> <span class="scilabnumber">1.4142</span><span class="scilabid">i</span><span class="scilabopenclose">]</span> +<span class="scilabid">c</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">0.22222</span> <span class="scilaboperator">-</span> <span class="scilabnumber">0.97531</span><span class="scilabid">i</span> <span class="scilabnumber">0.33333</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.51852</span><span class="scilabid">i</span> <span class="scilabnumber">0.00000</span> <span class="scilaboperator">-</span> <span class="scilabnumber">0.11111</span><span class="scilabid">i</span><span class="scilabdefault">;</span> <span class="scilabnumber">0.00000</span> <span class="scilaboperator">-</span> <span class="scilabnumber">1.33333</span><span class="scilabid">i</span><span class="scilabopenclose">]</span> +<span class="scilabid">d</span> <span class="scilaboperator">=</span> <span class="scilabnumber">1</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="residued.html"><< residued</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="risetime.html">risetime >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/risetime.html b/help/en_US/scilab_en_US_help/risetime.html new file mode 100644 index 0000000..b5cb8fd --- /dev/null +++ b/help/en_US/scilab_en_US_help/risetime.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>risetime</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="residuez.html"><< residuez</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rlevinson.html">rlevinson >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > risetime</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">risetime</h1> + <p class="refpurpose"></p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="residuez.html"><< residuez</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rlevinson.html">rlevinson >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/rlevinson.html b/help/en_US/scilab_en_US_help/rlevinson.html new file mode 100644 index 0000000..5cd12f4 --- /dev/null +++ b/help/en_US/scilab_en_US_help/rlevinson.html @@ -0,0 +1,66 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>rlevinson</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="risetime.html"><< risetime</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rms.html">rms >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > rlevinson</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">rlevinson</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">a</span><span class="default"> = </span><span class="functionid">rlevinson</span><span class="default">(</span><span class="default">a</span><span class="default">, </span><span class="default">efinal</span><span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">U</span><span class="default">] = </span><span class="functionid">rlevinson</span><span class="default">(</span><span class="default">a</span><span class="default">, </span><span class="default">efinal</span><span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">U</span><span class="default">, </span><span class="default">kr</span><span class="default">] = </span><span class="functionid">rlevinson</span><span class="default">(</span><span class="default">a</span><span class="default">, </span><span class="default">efinal</span><span class="default">)</span> +<span class="default">[</span><span class="default">a</span><span class="default">, </span><span class="default">U</span><span class="default">, </span><span class="default">kr</span><span class="default">, </span><span class="default">e</span><span class="default">] = </span><span class="functionid">rlevinson</span><span class="default">(</span><span class="default">a</span><span class="default">, </span><span class="default">efinal</span><span class="default">)</span></pre></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="risetime.html"><< risetime</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rms.html">rms >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/rms.html b/help/en_US/scilab_en_US_help/rms.html new file mode 100644 index 0000000..b44f817 --- /dev/null +++ b/help/en_US/scilab_en_US_help/rms.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>rms</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="rlevinson.html"><< rlevinson</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rooteig.html">rooteig >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > rms</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">rms</h1> + <p class="refpurpose">convert i/p values to their ascii values if they are of type char</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="rlevinson.html"><< rlevinson</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rooteig.html">rooteig >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/rooteig.html b/help/en_US/scilab_en_US_help/rooteig.html new file mode 100644 index 0000000..180c128 --- /dev/null +++ b/help/en_US/scilab_en_US_help/rooteig.html @@ -0,0 +1,86 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>rooteig</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="rms.html"><< rms</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rootmusic.html">rootmusic >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > rooteig</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">rooteig</h1> + <p class="refpurpose">Frequencies and power of sinusoids using eigenvector algorithm</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">w</span><span class="default"> = </span><span class="functionid">rooteig</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">p</span><span class="default">)</span> +<span class="default">[</span><span class="default">w</span><span class="default">,</span><span class="default">pow</span><span class="default">] = </span><span class="functionid">rooteig</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">p</span><span class="default">)</span> +<span class="default">[</span><span class="default">f</span><span class="default">,</span><span class="default">pow</span><span class="default">] = </span><span class="functionid">rooteig</span><span class="default">(...,</span><span class="default">fs</span><span class="default">)</span> +<span class="default">[</span><span class="default">w</span><span class="default">,</span><span class="default">pow</span><span class="default">] = </span><span class="functionid">rooteig</span><span class="default">(...,</span>'<span class="default">corr</span>'<span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">Examples:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">1) 3 complex exponentials:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">n=0:</span> + <dd><p class="para">99;</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"><li class="member"><a href="corrmtx.html" class="link">| peig | pmusic | rootmusic</a></li> + <li class="member"><a href="scilab://References" class="link">References</a></li> + <li class="member"><a href="scilab://1)" class="link">Stoica, P. and R. Moses, INTRODUCTION TO SPECTRAL ANALYSIS,</a></li> + <li class="member"><a href="scilab://Prentice-Hall" class="link">Prentice-Hall</a></li> + <li class="member"><a href="scilab://Output" class="link">arguments</a></li> + <li class="member"><a href="scilab://w" class="link">- double - vector</a></li> + <li class="member"><a href="scilab://Estimated" class="link">frequencies of the complex sinusoids</a></li> + <li class="member"><a href="scilab://pow" class="link">- double - vector</a></li> + <li class="member"><a href="scilab://estimated" class="link">absolute value squared amplitudes of the sinusoids at</a></li> + <li class="member"><a href="scilab://the" class="link">frequencies w</a></li></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="rms.html"><< rms</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rootmusic.html">rootmusic >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/rootmusic.html b/help/en_US/scilab_en_US_help/rootmusic.html new file mode 100644 index 0000000..b0c08fe --- /dev/null +++ b/help/en_US/scilab_en_US_help/rootmusic.html @@ -0,0 +1,86 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>rootmusic</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="rooteig.html"><< rooteig</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rssq.html">rssq >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > rootmusic</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">rootmusic</h1> + <p class="refpurpose">Frequencies and power of sinusoids using the root MUSIC algorithm</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">w</span><span class="default"> = </span><span class="functionid">rootmusic</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">p</span><span class="default">)</span> +<span class="default">[</span><span class="default">w</span><span class="default">,</span><span class="default">pow</span><span class="default">] = </span><span class="functionid">rootmusic</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">p</span><span class="default">)</span> +<span class="default">[</span><span class="default">f</span><span class="default">,</span><span class="default">pow</span><span class="default">] = </span><span class="default">rootmusc</span><span class="default">(...,</span><span class="default">fs</span><span class="default">)</span> +<span class="default">[</span><span class="default">w</span><span class="default">,</span><span class="default">pow</span><span class="default">] = </span><span class="functionid">rootmusic</span><span class="default">(...,</span>'<span class="default">corr</span>'<span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">Examples:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">1) 3 complex exponentials:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">n=0:</span> + <dd><p class="para">99;</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"><li class="member"><a href="corrmtx.html" class="link">| peig | pmusic | rooteig</a></li> + <li class="member"><a href="scilab://References" class="link">References</a></li> + <li class="member"><a href="scilab://1)" class="link">Monson H. Hayes, Statistical Digital Signal Processing And Modeling,</a></li> + <li class="member"><a href="scilab://Wiley" class="link">& Sons, Inc, [Section 8.6.3]</a></li> + <li class="member"><a href="scilab://Output" class="link">arguments</a></li> + <li class="member"><a href="scilab://w" class="link">- double - vector</a></li> + <li class="member"><a href="scilab://Estimated" class="link">frequencies of the complex sinusoids</a></li> + <li class="member"><a href="scilab://pow" class="link">- double - vector</a></li> + <li class="member"><a href="scilab://estimated" class="link">absolute value squared amplitudes of the sinusoids at</a></li> + <li class="member"><a href="scilab://the" class="link">frequencies w</a></li></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="rooteig.html"><< rooteig</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="rssq.html">rssq >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/rssq.html b/help/en_US/scilab_en_US_help/rssq.html new file mode 100644 index 0000000..fb8ff0f --- /dev/null +++ b/help/en_US/scilab_en_US_help/rssq.html @@ -0,0 +1,116 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>rssq</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="rootmusic.html"><< rootmusic</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sampled2continuous.html">sampled2continuous >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > rssq</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">rssq</h1> + <p class="refpurpose">This function calculates the square root of the sum of values of input vector IN.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">OUT</span><span class="default">=</span><span class="functionid">rssq</span><span class="default">(</span><span class="default">IN</span><span class="default">)</span> +<span class="default">OUT</span><span class="default">=</span><span class="functionid">rssq</span><span class="default">(</span><span class="default">IN</span><span class="default">,</span><span class="default">orientation</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">in:</span> + <dd><p class="para">Vector or Matrix of real or complex elements.</p></dd></dt> + <dt><span class="term">orientation:</span> + <dd><p class="para">A string with possible values "r", "c" or "m" or numericals such as '1' or '2',giving the dimension along which the rssq value is to be calculated.</p></dd></dt> + <dt><span class="term">out:</span> + <dd><p class="para">A scalar with real value when input is a vector.When input is a matrix, out is the root sum squared value along the orientation specified or the default one when not specified.</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">For vector as input, the output is real valued scalar containing the rssq value. The rssq value can be calculated by taking the square root of the squared sum of the elements. +If the input IN is a matrix, the output of function is rssq value of each column stored in a row vector OUT.</p> + <p class="para">When the elements of IN are COMPLEX, the absolute value of the element is used to calculate the output. +When the orientation is not specified for N dimensional array, it is taken as the index of the first dimension of IN that is greater than 1 and calculation is done along that orientation.</p> + <p class="para">When the orientation is specified the output is calculated along that dimension. +The orientation can be specified as 1 for rssq value of columns of matrix IN or as r. +For rssq value of rows of matrix orientation should be 2 or c.</p> + <p class="para"></p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">To</span> <span class="scilabid">calculate</span> <span class="scilabid">rssq</span> <span class="scilabid">of</span> <span class="scilabid">a</span> <span class="scilabid">vector</span><span class="scilabspecial">:</span> +<span class="scilabid">IN</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">2</span> <span class="scilabnumber">4</span> <span class="scilabnumber">6</span><span class="scilabopenclose">]</span> +<span class="scilabid">OUT</span><span class="scilaboperator">=</span><span class="scilabid">rssq</span><span class="scilabopenclose">(</span><span class="scilabid">IN</span><span class="scilabopenclose">)</span> +<span class="scilabid">The</span> <span class="scilabid">output</span> <span class="scilabid">is</span> <span class="scilabnumber">7.4833148</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">To</span> <span class="scilabid">calculate</span> <span class="scilabid">rssq</span> <span class="scilabid">of</span> <span class="scilabid">rows</span> <span class="scilabid">of</span> <a class="scilabcommand" href="scilab://matrix">matrix</a><span class="scilabspecial">:</span> +<span class="scilabid">IN</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">3</span> <span class="scilabnumber">5</span><span class="scilabdefault">;</span><span class="scilabnumber">2</span> <span class="scilabnumber">4</span> <span class="scilabnumber">6</span><span class="scilabdefault">;</span><span class="scilabnumber">7</span> <span class="scilabnumber">8</span> <span class="scilabnumber">9</span><span class="scilabopenclose">]</span> +<span class="scilabid">OUT</span><span class="scilaboperator">=</span><span class="scilabid">rssq</span><span class="scilabopenclose">(</span><span class="scilabid">IN</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> +<span class="scilabid">The</span> <span class="scilabid">output</span> <span class="scilabid">should</span> <span class="scilabid">be</span> <span class="scilabid">OUT</span><span class="scilaboperator">=</span> +<span class="scilabnumber">5.9160798</span> +<span class="scilabnumber">7.4833148</span> +<span class="scilabnumber">13.928388</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">To</span> <span class="scilabid">calculate</span> <span class="scilabid">rssq</span> <span class="scilabid">of</span> <span class="scilabid">a</span> <span class="scilabid">columns</span> <span class="scilabid">of</span> <a class="scilabmacro" href="scilab://complex">complex</a> <span class="scilabstring">matrix:</span> + +<span class="scilabid">IN</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">5</span><span class="scilaboperator">+</span><span class="scilabconstants">%i</span><span class="scilaboperator">*</span><span class="scilabnumber">3</span> <span class="scilabnumber">2</span><span class="scilaboperator">+</span><span class="scilabconstants">%i</span><span class="scilaboperator">*</span><span class="scilabnumber">4</span><span class="scilabdefault">;</span> <span class="scilabnumber">3</span><span class="scilaboperator">+</span><span class="scilabconstants">%i</span><span class="scilaboperator">*</span><span class="scilabnumber">6</span> <span class="scilabnumber">1</span><span class="scilaboperator">+</span><span class="scilabconstants">%i</span><span class="scilaboperator">*</span><span class="scilabnumber">2</span><span class="scilabopenclose">]</span> +<span class="scilabid">OUT</span><span class="scilaboperator">=</span><span class="scilabid">rssq</span><span class="scilabopenclose">(</span><span class="scilabid">IN</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> +<span class="scilabid">The</span> <span class="scilabid">output</span> <span class="scilabid">should</span> <span class="scilabid">be</span> <span class="scilabid">OUT</span><span class="scilaboperator">=</span> <span class="scilabnumber">8.8881944</span> <span class="scilabnumber">5.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"><li class="member"><a href="scilab://abs" class="link">abs</a></li> + <li class="member"><a href="scilab://mean" class="link">mean</a></li> + <li class="member"><a href="scilab://sqrt" class="link">sqrt</a></li> + <li class="member"><a href="scilab://isempty" class="link">isempty</a></li></ul></div> + +<div class="refsection"><h3 class="title">Authors</h3> + <ul class="itemizedlist"><li class="member">Indira Askaukar</li></ul></div> + +<div class="refsection"><h3 class="title">Bibliography</h3> + <p class="para">Matlab help document.</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="rootmusic.html"><< rootmusic</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sampled2continuous.html">sampled2continuous >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/sampled2continuous.html b/help/en_US/scilab_en_US_help/sampled2continuous.html new file mode 100644 index 0000000..bc6fe84 --- /dev/null +++ b/help/en_US/scilab_en_US_help/sampled2continuous.html @@ -0,0 +1,81 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>sampled2continuous</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="rssq.html"><< rssq</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sawtooth.html">sawtooth >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > sampled2continuous</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">sampled2continuous</h1> + <p class="refpurpose">This function calculates the output reconstructed from the samples n supplied as input, at a rate of 1/s samples per unit time.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">x</span><span class="default"> = </span><span class="functionid">sampled2continuous</span><span class="default"> (</span><span class="default">n</span><span class="default">, </span><span class="default">s</span><span class="default">, </span><span class="default">t</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">n:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">s:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">t:</span> + <dd><p class="para"></p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function calculates the output reconstructed from the samples n supplied as input, at a rate of 1/s samples per unit time. +The third parameter t is all the instants where output x is needed from intput n and this time is relative to x(0).</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">sampled2continuous</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">5</span><span class="scilabdefault">,</span><span class="scilabnumber">6</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">2.4166806</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="rssq.html"><< rssq</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sawtooth.html">sawtooth >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/sawtooth.html b/help/en_US/scilab_en_US_help/sawtooth.html new file mode 100644 index 0000000..090a391 --- /dev/null +++ b/help/en_US/scilab_en_US_help/sawtooth.html @@ -0,0 +1,80 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>sawtooth</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="sampled2continuous.html"><< sampled2continuous</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="schtrig.html">schtrig >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > sawtooth</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">sawtooth</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">y</span><span class="default">]=</span><span class="functionid">sawtooth</span><span class="default">(</span><span class="default">t</span><span class="default">)</span> +<span class="default">[</span><span class="default">y</span><span class="default">]=</span><span class="functionid">sawtooth</span><span class="default">(</span><span class="default">t</span><span class="default">,</span><span class="default">width</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">t:</span> + <dd><p class="para">Real valued vector or matrix</p></dd></dt> + <dt><span class="term">width:</span> + <dd><p class="para">Real number between 0 and 1</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function +This function returns a sawtooth wave with period 2*pi with +1/-1 as the maximum and minimum values for elements of t. If width is specified, it determines where the maximum is in the interval [0,2*pi].</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1.</span> <span class="scilabid">sawtooth</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">3</span> <span class="scilabnumber">4</span> <span class="scilabnumber">5</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">0.5</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">0.36338</span> <span class="scilabnumber">0.27324</span> <span class="scilabnumber">0.90986</span> <span class="scilabnumber">0.45352</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.18310</span><span class="scilabopenclose">]</span> +<span class="scilabnumber">2.</span> <span class="scilabid">sawtooth</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span><span class="scilabdefault">;</span> <span class="scilabnumber">4</span> <span class="scilabnumber">5</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">0.68169</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.36338</span><span class="scilabdefault">;</span> <span class="scilabnumber">0.27324</span> <span class="scilabnumber">0.59155</span><span class="scilabopenclose">]</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="sampled2continuous.html"><< sampled2continuous</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="schtrig.html">schtrig >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/schtrig.html b/help/en_US/scilab_en_US_help/schtrig.html new file mode 100644 index 0000000..4740c9c --- /dev/null +++ b/help/en_US/scilab_en_US_help/schtrig.html @@ -0,0 +1,82 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>schtrig</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="sawtooth.html"><< sawtooth</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="schurrc.html">schurrc >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > schtrig</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">schtrig</h1> + <p class="refpurpose">This function implements a multisignal Schmitt triggers with lev levels supplied as input.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">v</span><span class="default"> = </span><span class="functionid">schtrig</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">lev</span><span class="default">)</span> +<span class="default">v</span><span class="default"> = </span><span class="functionid">schtrig</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">lev</span><span class="default">, </span><span class="default">rs</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">vector or matrix of real numbers</p></dd></dt> + <dt><span class="term">lev:</span> + <dd><p class="para">real number</p></dd></dt> + <dt><span class="term">rs:</span> + <dd><p class="para">default value 1</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function implements a multisignal Schmitt triggers with lev levels supplied as input. +The argument 1 is a matrix (or a vector) and this trigger works along its first dimension.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">schtrig</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">0.2</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">5</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">4</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.</span> <span class="scilabnumber">0.</span> <span class="scilabnumber">1.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="sawtooth.html"><< sawtooth</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="schurrc.html">schurrc >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/schurrc.html b/help/en_US/scilab_en_US_help/schurrc.html new file mode 100644 index 0000000..be2b4b6 --- /dev/null +++ b/help/en_US/scilab_en_US_help/schurrc.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>schurrc</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="schtrig.html"><< schtrig</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="seqperiod.html">seqperiod >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > schurrc</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">schurrc</h1> + <p class="refpurpose">narginchk(1,1,argn(2));</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="schtrig.html"><< schtrig</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="seqperiod.html">seqperiod >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/scilab_code.css b/help/en_US/scilab_en_US_help/scilab_code.css new file mode 100644 index 0000000..658f42e --- /dev/null +++ b/help/en_US/scilab_en_US_help/scilab_code.css @@ -0,0 +1,96 @@ +.scilabcomment { + font-style: italic; + color: #01a801 +} + +.scilabdefault { + font-style: normal; + color: #000000 +} + +.scilabspecial { + font-style: normal; + color: #ffaa00 +} + +.scilabconstants { + font-style: normal; + color: #da70d6 +} + +.scilaboperator { + font-style: normal; + color: #5c5c5c +} + +.scilabnumber { + font-style: normal; + color: #bc8f8f +} + +.scilabfkeyword { + font-style: normal; + color: #b01813 +} + +.scilabskeyword { + font-style: normal; + color: #a020f0 +} + +.scilabckeyword { + font-style: normal; + color: #5f9ea0 +} + +.scilabcommand { + font-style: normal; + color: #32b9b9 +} + +.scilabmacro { + font-style: normal; + color: #ae5cb0 +} + +a.scilabcommand { + font-style: normal; + text-decoration: underline; + color: #32b9b9 +} + +a.scilabmacro { + font-style: normal; + text-decoration: underline; + color: #ae5cb0 +} + +.scilabstring { + font-style: normal; + color: #bc8f8f +} + +.scilabid { + font-style: normal; + color: #000000 +} + +.scilabinputoutputargs { + font-weight: bold; + color: #834310 +} + +.scilabfunctionid { + font-weight: bold; + color: #000000 +} + +.scilabfield { + font-style: normal; + color: #aaaaaa +} + +.scilabopenclose { + font-style: normal; + color: #4a55db +} diff --git a/help/en_US/scilab_en_US_help/section_be19baaac84b122b8ad501d34462f5bf.html b/help/en_US/scilab_en_US_help/section_be19baaac84b122b8ad501d34462f5bf.html new file mode 100644 index 0000000..9284e0b --- /dev/null +++ b/help/en_US/scilab_en_US_help/section_be19baaac84b122b8ad501d34462f5bf.html @@ -0,0 +1,1207 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title></title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="index.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> FOSSEE Signal Processing Toolbox</span> + + <br /><br /> + <h3 class="title-part">FOSSEE Signal Processing Toolbox</h3> +<ul class="list-chapter"><li><a href="ac2poly.html" class="refentry">ac2poly</a> — <span class="refentry-description">Convert autocorrelation sequence to polynomial of prediction filter</span></li> + + + + + +<li><a href="ac2rc.html" class="refentry">ac2rc</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="arParEst.html" class="refentry">arParEst</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="arburg.html" class="refentry">arburg</a> — <span class="refentry-description">This function calculates coefficients of an autoregressive (AR) model of complex data.</span></li> + + + + + +<li><a href="arcov.html" class="refentry">arcov</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="armcov.html" class="refentry">armcov</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="aryule.html" class="refentry">aryule</a> — <span class="refentry-description">This function fits an AR (p)-model with Yule-Walker estimates.</span></li> + + + + + +<li><a href="barthannwin.html" class="refentry">barthannwin</a> — <span class="refentry-description">This function returns the filter coefficients of a modified Bartlett-Hann window.</span></li> + + + + + +<li><a href="bartlett.html" class="refentry">bartlett</a> — <span class="refentry-description">Generates a Bartlett window</span></li> + + + + + +<li><a href="besself.html" class="refentry">besself</a> — <span class="refentry-description">This function generates a Bessel filter.</span></li> + + + + + +<li><a href="bitrevorder.html" class="refentry">bitrevorder</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="blackman.html" class="refentry">blackman</a> — <span class="refentry-description">Generates a Blackman window</span></li> + + + + + +<li><a href="blackmanharris.html" class="refentry">blackmanharris</a> — <span class="refentry-description">This function returns the filter coefficients of a Blackman-Harris window.</span></li> + + + + + +<li><a href="blackmannuttall.html" class="refentry">blackmannuttall</a> — <span class="refentry-description">This function returns the filter coefficients of a Blackman-Nuttall window.</span></li> + + + + + +<li><a href="bohmanwin.html" class="refentry">bohmanwin</a> — <span class="refentry-description">This function returns the filter coefficients of a Bohman window.</span></li> + + + + + +<li><a href="boxcar.html" class="refentry">boxcar</a> — <span class="refentry-description">This function returns the filter coefficients of a rectangular window.</span></li> + + + + + +<li><a href="buffer.html" class="refentry">buffer</a> — <span class="refentry-description">This function buffers the given data into a matrix of signal frames</span></li> + + + + + +<li><a href="butter.html" class="refentry">butter</a> — <span class="refentry-description">This function generates a Butterworth filter.</span></li> + + + + + +<li><a href="buttord.html" class="refentry">buttord</a> — <span class="refentry-description">/This function computes the minimum filter order of a Butterworth filter with the desired response characteristics.</span></li> + + + + + +<li><a href="cconv.html" class="refentry">cconv</a> — <span class="refentry-description">[nargout,nargin]=argn();</span></li> + + + + + +<li><a href="cell2sos.html" class="refentry">cell2sos</a> — <span class="refentry-description">Converts a cell array to a second order section matrix</span></li> + + + + + +<li><a href="cheb1ord.html" class="refentry">cheb1ord</a> — <span class="refentry-description">This function computes the minimum filter order of a Chebyshev type I filter with the desired response characteristics.</span></li> + + + + + +<li><a href="cheb2ord.html" class="refentry">cheb2ord</a> — <span class="refentry-description">This function computes the minimum filter order of a Chebyshev type II filter with the desired response characteristics.</span></li> + + + + + +<li><a href="chebwin.html" class="refentry">chebwin</a> — <span class="refentry-description">This function returns the filter coefficients of a Dolph-Chebyshev window.</span></li> + + + + + +<li><a href="cheby1.html" class="refentry">cheby1</a> — <span class="refentry-description">This function generates a Chebyshev type I filter with rp dB of passband ripple.</span></li> + + + + + +<li><a href="cheby2.html" class="refentry">cheby2</a> — <span class="refentry-description">This function generates a Chebyshev type II filter with rs dB of stopband attenuation.</span></li> + + + + + +<li><a href="check.html" class="refentry">check</a> — <span class="refentry-description">funcprot(0);</span></li> + + + + + +<li><a href="chirp.html" class="refentry">chirp</a> — <span class="refentry-description">This function evaluates a chirp signal at time t.</span></li> + + + + + +<li><a href="clustersegment.html" class="refentry">clustersegment</a> — <span class="refentry-description">This function calculates boundary indexes of clusters of 1’s.</span></li> + + + + + +<li><a href="cmorwavf.html" class="refentry">cmorwavf</a> — <span class="refentry-description">funcprot(0);</span></li> + + + + + +<li><a href="convmtx.html" class="refentry">convmtx</a> — <span class="refentry-description">n=double(n);</span></li> + + + + + +<li><a href="corrmtx.html" class="refentry">corrmtx</a> — <span class="refentry-description">Generate data matrix for autocorrelation matrix estimation</span></li> + + + + + +<li><a href="cummax.html" class="refentry">cummax</a> — <span class="refentry-description">Cumulative maximum</span></li> + + + + + +<li><a href="cummin.html" class="refentry">cummin</a> — <span class="refentry-description">Cumulative minimum</span></li> + + + + + +<li><a href="db.html" class="refentry">db</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="db2pow.html" class="refentry">db2pow</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="dctmtx.html" class="refentry">dctmtx</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="decimate.html" class="refentry">decimate</a> — <span class="refentry-description">rhs = argn(2)</span></li> + + + + + +<li><a href="dftmtx.html" class="refentry">dftmtx</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="diric.html" class="refentry">diric</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="downsample.html" class="refentry">downsample</a> — <span class="refentry-description">This function downsamples the signal by selecting every nth element.</span></li> + + + + + +<li><a href="dutycycle.html" class="refentry">dutycycle</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="ellip.html" class="refentry">ellip</a> — <span class="refentry-description">This function generates an elliptic or Cauer filter with rp dB of passband ripple and rs dB of stopband attenuation.</span></li> + + + + + +<li><a href="ellipord.html" class="refentry">ellipord</a> — <span class="refentry-description">This function computes the minimum filter order of an elliptic filter with the desired response characteristics.</span></li> + + + + + +<li><a href="enbw.html" class="refentry">enbw</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="eqtflength.html" class="refentry">eqtflength</a> — <span class="refentry-description">Modifies the input vector to give output vectors of the same length</span></li> + + + + + +<li><a href="falltime.html" class="refentry">falltime</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="fftfilt.html" class="refentry">fftfilt</a> — <span class="refentry-description">Performs FFT-based FIR filtering using overlap-add method</span></li> + + + + + +<li><a href="filternorm.html" class="refentry">filternorm</a> — <span class="refentry-description">Calculates the L-2 norm or L-infinity norm of a digital filter</span></li> + + + + + +<li><a href="filtfilt.html" class="refentry">filtfilt</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="filtic.html" class="refentry">filtic</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="filtord.html" class="refentry">filtord</a> — <span class="refentry-description">and denominator coefficients, a.</span></li> + + + + + +<li><a href="firpmord.html" class="refentry">firpmord</a> — <span class="refentry-description">Parks-McClennan optimal FIR filter order estimation</span></li> + + + + + +<li><a href="firtype.html" class="refentry">firtype</a> — <span class="refentry-description">if (type(b)~=1) then</span></li> + + + + + +<li><a href="flattopwin.html" class="refentry">flattopwin</a> — <span class="refentry-description">This function returns the filter coefficients of a Flat Top window.</span></li> + + + + + +<li><a href="fracshift.html" class="refentry">fracshift</a> — <span class="refentry-description">This function shifts the series x supplied as input argument by a number of samples d.</span></li> + + + + + +<li><a href="fwhm.html" class="refentry">fwhm</a> — <span class="refentry-description">This function computes peak full width at half minimum or at another level of peak minimum for vector or matrix data y supplied as input.</span></li> + + + + + +<li><a href="fwhmjlt.html" class="refentry">fwhmjlt</a> — <span class="refentry-description">rhs = argn(2)</span></li> + + + + + +<li><a href="gauspuls.html" class="refentry">gauspuls</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="gaussdesign.html" class="refentry">gaussdesign</a> — <span class="refentry-description">GAUSSDESIGN designs a Gaussian pulse-shaping filter which is a low pass FIR</span></li> + + + + + +<li><a href="gaussian.html" class="refentry">gaussian</a> — <span class="refentry-description">This function returns a Gaussian convolution window.</span></li> + + + + + +<li><a href="gausswin.html" class="refentry">gausswin</a> — <span class="refentry-description">This function returns the filter coefficients of a Gaussian window.</span></li> + + + + + +<li><a href="gmonopuls.html" class="refentry">gmonopuls</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="goertzel.html" class="refentry">goertzel</a> — <span class="refentry-description">Computes DFT using the second order Goertzel Algorithm</span></li> + + + + + +<li><a href="grpdelay.html" class="refentry">grpdelay</a> — <span class="refentry-description">This function computes the group delay of a filter.</span></li> + + + + + +<li><a href="hann.html" class="refentry">hann</a> — <span class="refentry-description">This function returns the filter coefficients of a Hanning window.</span></li> + + + + + +<li><a href="helperHarmonicDistortionAmplifier.html" class="refentry">helperHarmonicDistortionAmplifier</a> — <span class="refentry-description">helperHarmonicDistortionADC Helper function for HarmonicDistortionExample.m</span></li> + + + + + +<li><a href="icceps.html" class="refentry">icceps</a> — <span class="refentry-description">ICCEPS computes the inverse cepstrum of a real-valued input. This spectrum</span></li> + + + + + +<li><a href="iirlp2mb.html" class="refentry">iirlp2mb</a> — <span class="refentry-description">This function does IIR Low Pass Filter to Multiband Filter Transformation.</span></li> + + + + + +<li><a href="impinvar.html" class="refentry">impinvar</a> — <span class="refentry-description">This function converts analog filter with coefficients b and a to digital, conserving impulse response.</span></li> + + + + + +<li><a href="impz.html" class="refentry">impz</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="impzlength.html" class="refentry">impzlength</a> — <span class="refentry-description">Impulse response length</span></li> + + + + + +<li><a href="interp.html" class="refentry">interp</a> — <span class="refentry-description">function y = interp(x, q, n, Wc)</span></li> + + + + + +<li><a href="intfilt.html" class="refentry">intfilt</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="invimpinvar.html" class="refentry">invimpinvar</a> — <span class="refentry-description">This function converts digital filter with coefficients b and a to analog, conserving impulse response.</span></li> + + + + + +<li><a href="is2rc.html" class="refentry">is2rc</a> — <span class="refentry-description">Convert inverse sine parameters to reflection coefficients</span></li> + + + + + +<li><a href="isallpass.html" class="refentry">isallpass</a> — <span class="refentry-description">[nargout,nargin]=argn();</span></li> + + + + + +<li><a href="isfir.html" class="refentry">isfir</a> — <span class="refentry-description">[nargout,nargin]=argn();</span></li> + + + + + +<li><a href="islinphase.html" class="refentry">islinphase</a> — <span class="refentry-description">[nargout,nargin]=argn();</span></li> + + + + + +<li><a href="ismaxphase.html" class="refentry">ismaxphase</a> — <span class="refentry-description">[nargout,nargin]=argn();</span></li> + + + + + +<li><a href="isminphase.html" class="refentry">isminphase</a> — <span class="refentry-description">[nargout,nargin]=argn();</span></li> + + + + + +<li><a href="isstable.html" class="refentry">isstable</a> — <span class="refentry-description">SOS matrix corresponds to [bi(1) bi(2) bi(3) ai(1) ai(2) ai(3)].</span></li> + + + + + +<li><a href="kaiser.html" class="refentry">kaiser</a> — <span class="refentry-description">This function returns the filter coefficients of a Kaiser window.</span></li> + + + + + +<li><a href="lar2rc.html" class="refentry">lar2rc</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="latc2tf.html" class="refentry">latc2tf</a> — <span class="refentry-description">Convert lattice filter parameters to transfer function coefficients</span></li> + + + + + +<li><a href="latcfilt.html" class="refentry">latcfilt</a> — <span class="refentry-description">function [f,g,zo]=latcfilt(k,x,v,zi,dim)</span></li> + + + + + +<li><a href="latcfilt1.html" class="refentry">latcfilt1</a> — <span class="refentry-description">function [f,g,zo]=latcfilt1(k,v,x,zi)</span></li> + + + + + +<li><a href="levdown.html" class="refentry">levdown</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="levin.html" class="refentry">levin</a> — <span class="refentry-description">[ar,sigma2,rc]=lev(r)</span></li> + + + + + +<li><a href="levinson.html" class="refentry">levinson</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="lpc.html" class="refentry">lpc</a> — <span class="refentry-description">Linear prediction filter coefficients</span></li> + + + + + +<li><a href="lsf2poly.html" class="refentry">lsf2poly</a> — <span class="refentry-description">lsf2poly function convert line spectral frequencies to prediction polynomial.</span></li> + + + + + +<li><a href="mag2db.html" class="refentry">mag2db</a> — <span class="refentry-description">funcprot(0);</span></li> + + + + + +<li><a href="marcumq.html" class="refentry">marcumq</a> — <span class="refentry-description">This function computes the generalized Marcum Q function of order m with noncentrality parameter a and argument b.</span></li> + + + + + +<li><a href="medfilt1.html" class="refentry">medfilt1</a> — <span class="refentry-description">1D median filtering</span></li> + + + + + +<li><a href="mexihat.html" class="refentry">mexihat</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="meyeraux.html" class="refentry">meyeraux</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="midcross.html" class="refentry">midcross</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="modulate.html" class="refentry">modulate</a> — <span class="refentry-description">Modulates signal according to the modulation method</span></li> + + + + + +<li><a href="morlet.html" class="refentry">morlet</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="movingrms.html" class="refentry">movingrms</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="musicBase.html" class="refentry">musicBase</a> — <span class="refentry-description">Implements the core of the MUSIC algorithm</span></li> + + + + + +<li><a href="nnls.html" class="refentry">nnls</a> — <span class="refentry-description">Non Negative Least Squares (nnls) for Ex=f with the constraint x>=0</span></li> + + + + + +<li><a href="nuttallwin.html" class="refentry">nuttallwin</a> — <span class="refentry-description">This function returns the filter coefficients of a Blackman-Harris window.</span></li> + + + + + +<li><a href="parzenwin.html" class="refentry">parzenwin</a> — <span class="refentry-description">This function returns the filter coefficients of a Parzen window.</span></li> + + + + + +<li><a href="pchip.html" class="refentry">pchip</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="pchips.html" class="refentry">pchips</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="peak2peak.html" class="refentry">peak2peak</a> — <span class="refentry-description">funcprot(0);</span></li> + + + + + +<li><a href="peak2rms.html" class="refentry">peak2rms</a> — <span class="refentry-description">This function calculates the ratio of peak magnitude to the Root Mean Square(RMS) value.</span></li> + + + + + +<li><a href="peig.html" class="refentry">peig</a> — <span class="refentry-description">Psuedospectrum using the eigenvector method.</span></li> + + + + + +<li><a href="periodogram.html" class="refentry">periodogram</a> — <span class="refentry-description">funcprot(0);</span></li> + + + + + +<li><a href="phaseInputParseAs_ab.html" class="refentry">phaseInputParseAs_ab</a> — <span class="refentry-description">fs=0;</span></li> + + + + + +<li><a href="phaseInputParseAs_sos.html" class="refentry">phaseInputParseAs_sos</a> — <span class="refentry-description">fs=0;</span></li> + + + + + +<li><a href="phasedelay.html" class="refentry">phasedelay</a> — <span class="refentry-description">cas variable is 2 if sos form is involved and 1 if direct rational form is given</span></li> + + + + + +<li><a href="phasez.html" class="refentry">phasez</a> — <span class="refentry-description">cas variable is 2 if sos form is involved and 1 if direct rational form is given</span></li> + + + + + +<li><a href="pmusic.html" class="refentry">pmusic</a> — <span class="refentry-description">Psuedospectrum using MUSIC algorithm</span></li> + + + + + +<li><a href="poly2ac.html" class="refentry">poly2ac</a> — <span class="refentry-description">Convert prediction polynomial to autocorrelation sequence.</span></li> + + + + + +<li><a href="poly2lsf.html" class="refentry">poly2lsf</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="poly2rc.html" class="refentry">poly2rc</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="polyscale.html" class="refentry">polyscale</a> — <span class="refentry-description">errcheck1</span></li> + + + + + +<li><a href="polystab.html" class="refentry">polystab</a> — <span class="refentry-description">This function stabilizes the polynomial transfer function.</span></li> + + + + + +<li><a href="polyval.html" class="refentry">polyval</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="pow2db.html" class="refentry">pow2db</a> — <span class="refentry-description">rhs = argn(2)</span></li> + + + + + +<li><a href="primitive.html" class="refentry">primitive</a> — <span class="refentry-description">This function calculates the primitive of a given function supplied as input.</span></li> + + + + + +<li><a href="prony.html" class="refentry">prony</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="pulseperiod.html" class="refentry">pulseperiod</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="pulsesep.html" class="refentry">pulsesep</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="pulsewidth.html" class="refentry">pulsewidth</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="pulstran.html" class="refentry">pulstran</a> — <span class="refentry-description">This function generates the signal y = sum(func(t+d,...)) for each d.</span></li> + + + + + +<li><a href="rc2ac.html" class="refentry">rc2ac</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="rc2is.html" class="refentry">rc2is</a> — <span class="refentry-description">Convert reflection coefficients to inverse sine parameters</span></li> + + + + + +<li><a href="rc2lar.html" class="refentry">rc2lar</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="rc2poly.html" class="refentry">rc2poly</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="rcosdesign.html" class="refentry">rcosdesign</a> — <span class="refentry-description">RCOSDESIGN computes the raised cosine FIR filter</span></li> + + + + + +<li><a href="rectpuls.html" class="refentry">rectpuls</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="rectwin.html" class="refentry">rectwin</a> — <span class="refentry-description">This function returns the filter coefficients of a rectangular window.</span></li> + + + + + +<li><a href="resample.html" class="refentry">resample</a> — <span class="refentry-description">This function resamples in the input sequence x supplied by a factor of p/q.</span></li> + + + + + +<li><a href="residued.html" class="refentry">residued</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="residuez.html" class="refentry">residuez</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="risetime.html" class="refentry">risetime</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="rlevinson.html" class="refentry">rlevinson</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="rms.html" class="refentry">rms</a> — <span class="refentry-description">convert i/p values to their ascii values if they are of type char</span></li> + + + + + +<li><a href="rooteig.html" class="refentry">rooteig</a> — <span class="refentry-description">Frequencies and power of sinusoids using eigenvector algorithm</span></li> + + + + + +<li><a href="rootmusic.html" class="refentry">rootmusic</a> — <span class="refentry-description">Frequencies and power of sinusoids using the root MUSIC algorithm</span></li> + + + + + +<li><a href="rssq.html" class="refentry">rssq</a> — <span class="refentry-description">This function calculates the square root of the sum of values of input vector IN.</span></li> + + + + + +<li><a href="sampled2continuous.html" class="refentry">sampled2continuous</a> — <span class="refentry-description">This function calculates the output reconstructed from the samples n supplied as input, at a rate of 1/s samples per unit time.</span></li> + + + + + +<li><a href="sawtooth.html" class="refentry">sawtooth</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="schtrig.html" class="refentry">schtrig</a> — <span class="refentry-description">This function implements a multisignal Schmitt triggers with lev levels supplied as input.</span></li> + + + + + +<li><a href="schurrc.html" class="refentry">schurrc</a> — <span class="refentry-description">narginchk(1,1,argn(2));</span></li> + + + + + +<li><a href="seqperiod.html" class="refentry">seqperiod</a> — <span class="refentry-description">Calculates the period of a sequence</span></li> + + + + + +<li><a href="sgolay.html" class="refentry">sgolay</a> — <span class="refentry-description">This function computes the filter coefficients for all Savitzsky-Golay smoothing filters.</span></li> + + + + + +<li><a href="sgolayfilt.html" class="refentry">sgolayfilt</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="shanwavf.html" class="refentry">shanwavf</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="shiftdata.html" class="refentry">shiftdata</a> — <span class="refentry-description">Shifts data by rearranging dimensions</span></li> + + + + + +<li><a href="slewrate.html" class="refentry">slewrate</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="sos2cell.html" class="refentry">sos2cell</a> — <span class="refentry-description">Converts a second order section matrix to a cell array</span></li> + + + + + +<li><a href="sos2ss.html" class="refentry">sos2ss</a> — <span class="refentry-description">[nargout,nargin]=argn();</span></li> + + + + + +<li><a href="sos2tf.html" class="refentry">sos2tf</a> — <span class="refentry-description">This function converts series second-order sections to direct H(z) = B(z)/A(z) form.</span></li> + + + + + +<li><a href="sos2zp.html" class="refentry">sos2zp</a> — <span class="refentry-description">This function converts series second-order sections to zeros, poles, and gains (pole residues).</span></li> + + + + + +<li><a href="sosbreak.html" class="refentry">sosbreak</a> — <span class="refentry-description">function for breaking a polynomial in second order polynomials (and an extra linear)</span></li> + + + + + +<li><a href="sosfilt.html" class="refentry">sosfilt</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="specgram.html" class="refentry">specgram</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="ss2sos.html" class="refentry">ss2sos</a> — <span class="refentry-description">not taking if, order and scale as input since they do not seem useful</span></li> + + + + + +<li><a href="statelevels.html" class="refentry">statelevels</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="stmcb.html" class="refentry">stmcb</a> — <span class="refentry-description">function [b,a] = stmcb( x, u_in, q, p, niter, a_in )</span></li> + + + + + +<li><a href="strips.html" class="refentry">strips</a> — <span class="refentry-description">Plots vector or matrix in strips</span></li> + + + + + +<li><a href="subspaceMethodsInputParser.html" class="refentry">subspaceMethodsInputParser</a> — <span class="refentry-description">Input parser to be used by pmusic and peig</span></li> + + + + + +<li><a href="tf2sos.html" class="refentry">tf2sos</a> — <span class="refentry-description">This function converts direct-form filter coefficients to series second-order sections.</span></li> + + + + + +<li><a href="tf2zp.html" class="refentry">tf2zp</a> — <span class="refentry-description">[z,p,k]= tf2zp(b,a);</span></li> + + + + + +<li><a href="tf2zpk.html" class="refentry">tf2zpk</a> — <span class="refentry-description">form</span></li> + + + + + +<li><a href="transpose.html" class="refentry">transpose</a> — <span class="refentry-description">funcprot(0);</span></li> + + + + + +<li><a href="trial_iirlp2mb.html" class="refentry">trial_iirlp2mb</a> — <span class="refentry-description">B = varargin(1)</span></li> + + + + + +<li><a href="triang.html" class="refentry">triang</a> — <span class="refentry-description">This function returns the filter coefficients of a triangular window.</span></li> + + + + + +<li><a href="tripuls.html" class="refentry">tripuls</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="truth.html" class="refentry">truth</a> — <span class="refentry-description">y = %t</span></li> + + + + + +<li><a href="tukeywin.html" class="refentry">tukeywin</a> — <span class="refentry-description">This function returns the filter coefficients of a Tukey window.</span></li> + + + + + +<li><a href="udecode.html" class="refentry">udecode</a> — <span class="refentry-description">Decodes the input uniformly quantized values</span></li> + + + + + +<li><a href="uencode.html" class="refentry">uencode</a> — <span class="refentry-description">Performs uniform quantization of the input into 2^n levels</span></li> + + + + + +<li><a href="ultrwin.html" class="refentry">ultrwin</a> — <span class="refentry-description">This function returns the coefficients of an Ultraspherical window.</span></li> + + + + + +<li><a href="unshiftdata.html" class="refentry">unshiftdata</a> — <span class="refentry-description">Inverts the effect of shiftdata</span></li> + + + + + +<li><a href="upfirdn.html" class="refentry">upfirdn</a> — <span class="refentry-description">This function upsamples the input data, applies the FIR filter and then downsamples it.</span></li> + + + + + +<li><a href="upsample.html" class="refentry">upsample</a> — <span class="refentry-description">This function upsamples the signal, inserting n-1 zeros between every element.</span></li> + + + + + +<li><a href="upsamplefill.html" class="refentry">upsamplefill</a> — <span class="refentry-description">This function upsamples a vector interleaving given values or copies of the vector elements.</span></li> + + + + + +<li><a href="var.html" class="refentry">var</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="vco.html" class="refentry">vco</a> — <span class="refentry-description">Voltage Controlled Oscillator</span></li> + + + + + +<li><a href="welchwin.html" class="refentry">welchwin</a> — <span class="refentry-description">This function returns the filter coefficients of a Welch window.</span></li> + + + + + +<li><a href="window.html" class="refentry">window</a> — <span class="refentry-description">This function creates an m-point window from the function f given as input.</span></li> + + + + + +<li><a href="wkeep.html" class="refentry">wkeep</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="wrev.html" class="refentry">wrev</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="xcorr2.html" class="refentry">xcorr2</a> — <span class="refentry-description"></span></li> + + + + + +<li><a href="zerocrossing.html" class="refentry">zerocrossing</a> — <span class="refentry-description">This function estimates the points at which a given waveform crosses the x-axis.</span></li> + + + + + +<li><a href="zp2sos.html" class="refentry">zp2sos</a> — <span class="refentry-description">This function converts filter poles and zeros to second-order sections.</span></li> + + + + + +<li><a href="zplane.html" class="refentry">zplane</a> — <span class="refentry-description">funcprot(0);</span></li></ul> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="index.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/seqperiod.html b/help/en_US/scilab_en_US_help/seqperiod.html new file mode 100644 index 0000000..62f1084 --- /dev/null +++ b/help/en_US/scilab_en_US_help/seqperiod.html @@ -0,0 +1,105 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>seqperiod</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="schurrc.html"><< schurrc</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sgolay.html">sgolay >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > seqperiod</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">seqperiod</h1> + <p class="refpurpose">Calculates the period of a sequence</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">p</span><span class="default">,</span><span class="default">num</span><span class="default">]=</span><span class="functionid">seqperiod</span><span class="default">(</span><span class="default">x</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">A vector matrix or n-dimensional array</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">[p,num]=seqperiod(x) +Returns an integer p such that x(1:p) is the smallest subsequence that repeats in x +The number of times the subsequence repeats is returned in num (may not be an integer) +Repetitions may be incomplete at the end of the sequence but no breaks are permitted between repetitions +If there is no subsequence that repeats in x then p=length(x) +If x is a matrix or n-dimesnional array, the function operates along the first non-singleton dimension of x</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">x</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">4</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">5</span><span class="scilabdefault">;</span> +<span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">5</span><span class="scilabdefault">;</span> +<span class="scilabnumber">2</span> <span class="scilabnumber">0</span> <span class="scilabnumber">3</span> <span class="scilabnumber">5</span><span class="scilabdefault">;</span> +<span class="scilabnumber">3</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">5</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> +<span class="scilabid">p</span> <span class="scilaboperator">=</span> <span class="scilabid">seqperiod</span><span class="scilabopenclose">(</span><span class="scilabid">x</span><span class="scilabopenclose">)</span> +<span class="scilabid">p</span> <span class="scilaboperator">=</span> + +<span class="scilabnumber">4.</span> <span class="scilabnumber">2.</span> <span class="scilabnumber">3.</span> <span class="scilabnumber">1.</span> +<span class="scilabid">A</span><span class="scilaboperator">=</span><a class="scilabcommand" href="scilab://zeros">zeros</a><span class="scilabopenclose">(</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">4</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> +<span class="scilabid">A</span><span class="scilabopenclose">(</span><span class="scilabspecial">:</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabspecial">:</span><span class="scilabopenclose">)</span><span class="scilaboperator">=</span><span class="scilabid">x</span><span class="scilabdefault">;</span> +<span class="scilabid">p1</span><span class="scilaboperator">=</span><span class="scilabid">seqperiod</span><span class="scilabopenclose">(</span><span class="scilabid">A</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span> +<span class="scilabid">p1</span> <span class="scilaboperator">=</span> + +<span class="scilabopenclose">(</span><span class="scilabspecial">:</span><span class="scilabdefault">,</span><span class="scilabspecial">:</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> + +<span class="scilabnumber">4.</span> +<span class="scilabopenclose">(</span><span class="scilabspecial">:</span><span class="scilabdefault">,</span><span class="scilabspecial">:</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> + +<span class="scilabnumber">2.</span> +<span class="scilabopenclose">(</span><span class="scilabspecial">:</span><span class="scilabdefault">,</span><span class="scilabspecial">:</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span> + +<span class="scilabnumber">3.</span> +<span class="scilabopenclose">(</span><span class="scilabspecial">:</span><span class="scilabdefault">,</span><span class="scilabspecial">:</span><span class="scilabdefault">,</span><span class="scilabnumber">4</span><span class="scilabopenclose">)</span> + +<span class="scilabnumber">1.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">Authors</h3> + <ul class="itemizedlist"><li class="member">Ankur Mallick</li></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="schurrc.html"><< schurrc</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sgolay.html">sgolay >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/sgolay.html b/help/en_US/scilab_en_US_help/sgolay.html new file mode 100644 index 0000000..573e21a --- /dev/null +++ b/help/en_US/scilab_en_US_help/sgolay.html @@ -0,0 +1,87 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>sgolay</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="seqperiod.html"><< seqperiod</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sgolayfilt.html">sgolayfilt >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > sgolay</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">sgolay</h1> + <p class="refpurpose">This function computes the filter coefficients for all Savitzsky-Golay smoothing filters.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">F</span><span class="default"> = </span><span class="functionid">sgolay</span><span class="default"> (</span><span class="default">p</span><span class="default">, </span><span class="default">n</span><span class="default">)</span> +<span class="default">F</span><span class="default"> = </span><span class="functionid">sgolay</span><span class="default"> (</span><span class="default">p</span><span class="default">, </span><span class="default">n</span><span class="default">, </span><span class="default">m</span><span class="default">)</span> +<span class="default">F</span><span class="default"> = </span><span class="functionid">sgolay</span><span class="default"> (</span><span class="default">p</span><span class="default">, </span><span class="default">n</span><span class="default">, </span><span class="default">m</span><span class="default">, </span><span class="default">ts</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">p:</span> + <dd><p class="para">polynomial</p></dd></dt> + <dt><span class="term">n:</span> + <dd><p class="para">odd integer value, larger than polynomial p</p></dd></dt> + <dt><span class="term">m:</span> + <dd><p class="para">positive integer less than 2^31 or logical</p></dd></dt> + <dt><span class="term">ts:</span> + <dd><p class="para">real or complex value</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function computes the filter coefficients for all Savitzsky-Golay smoothing filters of order p for length n (odd). +m can be used in order to get directly the mth derivative; ts is a scaling factor.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">y</span> <span class="scilaboperator">=</span> <span class="scilabid">sgolay</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabopenclose">)</span> +<span class="scilabid">y</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.83333</span> <span class="scilabnumber">0.33333</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.16667</span> +<span class="scilabnumber">0.33333</span> <span class="scilabnumber">0.33333</span> <span class="scilabnumber">0.33333</span> +<span class="scilaboperator">-</span><span class="scilabnumber">0.16667</span> <span class="scilabnumber">0.33333</span> <span class="scilabnumber">0.83333</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="seqperiod.html"><< seqperiod</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sgolayfilt.html">sgolayfilt >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/sgolayfilt.html b/help/en_US/scilab_en_US_help/sgolayfilt.html new file mode 100644 index 0000000..d202d4d --- /dev/null +++ b/help/en_US/scilab_en_US_help/sgolayfilt.html @@ -0,0 +1,96 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>sgolayfilt</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="sgolay.html"><< sgolay</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="shanwavf.html">shanwavf >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > sgolayfilt</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">sgolayfilt</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default"> = </span><span class="functionid">sgolayfilt</span><span class="default"> (</span><span class="default">x</span><span class="default">)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">sgolayfilt</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">p</span><span class="default">)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">sgolayfilt</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">p</span><span class="default">, </span><span class="default">n</span><span class="default">)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">sgolayfilt</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">p</span><span class="default">, </span><span class="default">n</span><span class="default">, </span><span class="default">m</span><span class="default">)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">sgolayfilt</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">p</span><span class="default">, </span><span class="default">n</span><span class="default">, </span><span class="default">m</span><span class="default">, </span><span class="default">ts</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">vector or matrix of real or complex numbers</p></dd></dt> + <dt><span class="term">p:</span> + <dd><p class="para">polynomial order, real number less than n, default value 3</p></dd></dt> + <dt><span class="term">n:</span> + <dd><p class="para">integer, odd number greater than p</p></dd></dt> + <dt><span class="term">m:</span> + <dd><p class="para">vector of real positive valued numbers, length n</p></dd></dt> + <dt><span class="term">ts:</span> + <dd><p class="para">real number, default value 1</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This function applies a Savitzky-Golay FIR smoothing filter to the data given in the vector x; if x is a matrix, this function operates +on each column. +The polynomial order p should be real, less than the size of the frame given by n. +m is a weighting vector with default value identity matrix. +ts is the dimenstion along which the filter operates. If not specified, the function operates along the first non singleton dimension.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">sgolayfilt</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">;</span><span class="scilabnumber">2</span><span class="scilabdefault">;</span><span class="scilabid">i</span><span class="scilabdefault">;</span><span class="scilabnumber">4</span><span class="scilabdefault">;</span><span class="scilabnumber">7</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span> <span class="scilabnumber">0.3</span><span class="scilabdefault">,</span> <span class="scilabnumber">3</span><span class="scilabdefault">,</span> <span class="scilabnumber">0</span><span class="scilabdefault">,</span> <span class="scilabnumber">0</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">1.0000</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.3333</span><span class="scilabid">i</span> +<span class="scilabnumber">1.0000</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.3333</span><span class="scilabid">i</span> +<span class="scilabnumber">2.0000</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.3333</span><span class="scilabid">i</span> +<span class="scilabnumber">3.6667</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.3333</span><span class="scilabid">i</span> +<span class="scilabnumber">3.6667</span> <span class="scilaboperator">+</span> <span class="scilabnumber">0.3333</span><span class="scilabid">i</span> +<span class="scilabid">This</span> <span class="scilabfkeyword">function</span> <span class="scilabid">being</span> <span class="scilabid">called</span> <span class="scilabid">from</span> <span class="scilabid">Octave</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="sgolay.html"><< sgolay</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="shanwavf.html">shanwavf >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/shanwavf.html b/help/en_US/scilab_en_US_help/shanwavf.html new file mode 100644 index 0000000..b575b8f --- /dev/null +++ b/help/en_US/scilab_en_US_help/shanwavf.html @@ -0,0 +1,88 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>shanwavf</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="sgolayfilt.html"><< sgolayfilt</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="shiftdata.html">shiftdata >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > shanwavf</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">shanwavf</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">psi</span><span class="default">,</span><span class="default">x</span><span class="default">]=</span><span class="functionid">shanwavf</span><span class="default">(</span><span class="default">lb</span><span class="default">,</span><span class="default">ub</span><span class="default">,</span><span class="default">n</span><span class="default">,</span><span class="default">fb</span><span class="default">,</span><span class="default">fc</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">lb:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt> + <dt><span class="term">ub:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt> + <dt><span class="term">n:</span> + <dd><p class="para">Real valued integer strictly positive</p></dd></dt> + <dt><span class="term">fb:</span> + <dd><p class="para">Real or complex valued vector or matrix, strictly positive value for scalar input</p></dd></dt> + <dt><span class="term">fc:</span> + <dd><p class="para">Real or complex valued vector or matrix, strictly positive value for scalar input</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function +This function implements the complex Shannon wavelet function and returns the value obtained. The complex Shannon wavelet is defined by a bandwidth parameter FB, a wavelet center frequency FC on an N point regular grid in the interval [LB,UB].</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1.</span> <span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">shanwavf</span> <span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">8</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">6</span><span class="scilabopenclose">)</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">3.8982e-17</span> <span class="scilaboperator">+</span> <span class="scilabnumber">1.1457e-31</span><span class="scilabid">i</span> <span class="scilabnumber">3.8982e-17</span> <span class="scilaboperator">-</span> <span class="scilabnumber">8.4040e-31</span><span class="scilabid">i</span> <span class="scilaboperator">-</span><span class="scilabnumber">3.8982e-17</span> <span class="scilaboperator">+</span> <span class="scilabnumber">4.5829e-31</span><span class="scilabid">i</span><span class="scilabopenclose">]</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">2</span> <span class="scilabnumber">5</span> <span class="scilabnumber">8</span><span class="scilabopenclose">]</span> +<span class="scilabnumber">2.</span> <span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">shanwavf</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">;</span><span class="scilabid">i</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">;</span><span class="scilaboperator">-</span><span class="scilabid">i</span><span class="scilabdefault">,</span><span class="scilabid">i</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">5.5128e-17</span> <span class="scilaboperator">-</span> <span class="scilabnumber">2.7005e-32</span><span class="scilabid">i</span> <span class="scilaboperator">-</span><span class="scilabnumber">5.5128e-17</span> <span class="scilaboperator">+</span> <span class="scilabnumber">5.4010e-32</span><span class="scilabid">i</span><span class="scilabdefault">;</span> +<span class="scilabnumber">8.6404e+06</span> <span class="scilaboperator">+</span> <span class="scilabnumber">8.6404e+06</span><span class="scilabid">i</span> <span class="scilaboperator">-</span><span class="scilabnumber">1.9225e-22</span> <span class="scilaboperator">-</span> <span class="scilabnumber">0.0000e+00</span><span class="scilabid">i</span><span class="scilabopenclose">]</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabnumber">2</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="sgolayfilt.html"><< sgolayfilt</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="shiftdata.html">shiftdata >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/shiftdata.html b/help/en_US/scilab_en_US_help/shiftdata.html new file mode 100644 index 0000000..b16f1e1 --- /dev/null +++ b/help/en_US/scilab_en_US_help/shiftdata.html @@ -0,0 +1,118 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>shiftdata</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="shanwavf.html"><< shanwavf</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="slewrate.html">slewrate >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > shiftdata</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">shiftdata</h1> + <p class="refpurpose">Shifts data by rearranging dimensions</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">[y,perm,nshifts]=shiftdata(x,dim) +Shifts the entries along dimension dim in x to the first column and returns the permutation vector in perm +[y,perm,nshifts]=shiftdata(x) +Shifts the entries along dimension dim in x to the first column and returns the number of shifts in nshifts</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//When dim is specified:</span> +<span class="scilabid">x</span><span class="scilaboperator">=</span><a class="scilabcommand" href="scilab://testmatrix">testmatrix</a><span class="scilabopenclose">(</span><span class="scilabstring">'</span><span class="scilabstring">magi</span><span class="scilabstring">'</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span> +<span class="scilabid">x</span> <span class="scilaboperator">=</span> + +<span class="scilabnumber">8.</span> <span class="scilabnumber">1.</span> <span class="scilabnumber">6.</span> +<span class="scilabnumber">3.</span> <span class="scilabnumber">5.</span> <span class="scilabnumber">7.</span> +<span class="scilabnumber">4.</span> <span class="scilabnumber">9.</span> <span class="scilabnumber">2.</span> +<span class="scilabopenclose">[</span><span class="scilabid">y</span><span class="scilabdefault">,</span><span class="scilabid">perm</span><span class="scilabdefault">,</span><span class="scilabid">nshifts</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">shiftdata</span><span class="scilabopenclose">(</span><span class="scilabid">x</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> +<span class="scilabid">nshifts</span> <span class="scilaboperator">=</span> + +<span class="scilabopenclose">[</span><span class="scilabopenclose">]</span> +<span class="scilabid">perm</span> <span class="scilaboperator">=</span> + +<span class="scilabnumber">2.</span> <span class="scilabnumber">1.</span> +<span class="scilabid">y</span> <span class="scilaboperator">=</span> + +<span class="scilabnumber">8.</span> <span class="scilabnumber">3.</span> <span class="scilabnumber">4.</span> +<span class="scilabnumber">1.</span> <span class="scilabnumber">5.</span> <span class="scilabnumber">9.</span> +<span class="scilabnumber">6.</span> <span class="scilabnumber">7.</span> <span class="scilabnumber">2.</span> +<span class="scilabcomment">//When dim is not specified:</span> +<span class="scilabid">x</span><span class="scilaboperator">=</span><span class="scilabnumber">1</span><span class="scilabspecial">:</span><span class="scilabnumber">5</span> +<span class="scilabid">x</span> <span class="scilaboperator">=</span> + +<span class="scilabnumber">1.</span> <span class="scilabnumber">2.</span> <span class="scilabnumber">3.</span> <span class="scilabnumber">4.</span> <span class="scilabnumber">5.</span> +<span class="scilabopenclose">[</span><span class="scilabid">y</span><span class="scilabdefault">,</span><span class="scilabid">perm</span><span class="scilabdefault">,</span><span class="scilabid">nshifts</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">shiftdata</span><span class="scilabopenclose">(</span><span class="scilabid">x</span><span class="scilabopenclose">)</span> +<span class="scilabid">nshifts</span> <span class="scilaboperator">=</span> + +<span class="scilabnumber">1.</span> +<span class="scilabid">perm</span> <span class="scilaboperator">=</span> + +<span class="scilabopenclose">[</span><span class="scilabopenclose">]</span> +<span class="scilabid">y</span> <span class="scilaboperator">=</span> + +<span class="scilabnumber">1.</span> +<span class="scilabnumber">2.</span> +<span class="scilabnumber">3.</span> +<span class="scilabnumber">4.</span> +<span class="scilabnumber">5.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"><li class="member"><a href="scilab://permute" class="link">permute</a></li> + <li class="member"><a href="unshiftdata.html" class="link">unshiftdata</a></li> + <li class="member"><a href="scilab://Author" class="link">Author</a></li> + <li class="member"><a href="scilab://Ankur" class="link">Mallick</a></li></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="shanwavf.html"><< shanwavf</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="slewrate.html">slewrate >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/slewrate.html b/help/en_US/scilab_en_US_help/slewrate.html new file mode 100644 index 0000000..37c370f --- /dev/null +++ b/help/en_US/scilab_en_US_help/slewrate.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>slewrate</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="shiftdata.html"><< shiftdata</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sos2cell.html">sos2cell >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > slewrate</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">slewrate</h1> + <p class="refpurpose"></p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="shiftdata.html"><< shiftdata</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sos2cell.html">sos2cell >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/sos2cell.html b/help/en_US/scilab_en_US_help/sos2cell.html new file mode 100644 index 0000000..97ec9d8 --- /dev/null +++ b/help/en_US/scilab_en_US_help/sos2cell.html @@ -0,0 +1,96 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>sos2cell</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="slewrate.html"><< slewrate</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sos2ss.html">sos2ss >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > sos2cell</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">sos2cell</h1> + <p class="refpurpose">Converts a second order section matrix to a cell array</p></div> + + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">c=sos2cell(s) converts an L-by-6 second-order-section matrix s given by: +s = [B1 A1 +B2 A2 +... +BL AL] +to a cell array c = { {B1},{A1}, {B2},{A2}, ... {BL},{AL}} where each +numerator vector Bi and denominator vector Ai contains the coefficients of a +linear or quadratic polynomial. If the polynomial is linear, the coefficients +zero-padded on the right +c=sos2cell(s,g) adds a leading gain term to the start of the cell array as: +c={ {[g,1]},{B1},{A1}, {B2},{A2}, ... {BL},{AL}} +Example +s=rand(2,6) +s =</p> + <p class="para"></p> + <p class="para">column 1 to 5</p> + <p class="para">0.0437334 0.2639556 0.2806498 0.7783129 0.1121355 +0.4818509 0.4148104 0.1280058 0.2119030 0.6856896</p> + <p class="para">column 6</p> + <p class="para">0.1531217 +0.6970851</p> + <p class="para">sos2cell(s,2) +ans =</p> + <p class="para"></p> + <p class="para"></p> + <p class="para">column 1 to 3</p> + <p class="para">![2,1] [0.0437334,0.2639556,0.2806498] [0.7783129,0.1121355,0.1531217] !</p> + <p class="para">column 4 to 5</p> + <p class="para">![0.4818509,0.4148104,0.1280058] [0.2119030,0.6856896,0.6970851] ! +Author +Ankur Mallick</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="slewrate.html"><< slewrate</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sos2ss.html">sos2ss >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/sos2ss.html b/help/en_US/scilab_en_US_help/sos2ss.html new file mode 100644 index 0000000..405a9c1 --- /dev/null +++ b/help/en_US/scilab_en_US_help/sos2ss.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>sos2ss</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="sos2cell.html"><< sos2cell</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sos2tf.html">sos2tf >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > sos2ss</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">sos2ss</h1> + <p class="refpurpose">[nargout,nargin]=argn();</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="sos2cell.html"><< sos2cell</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sos2tf.html">sos2tf >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/sos2tf.html b/help/en_US/scilab_en_US_help/sos2tf.html new file mode 100644 index 0000000..7b0cd3e --- /dev/null +++ b/help/en_US/scilab_en_US_help/sos2tf.html @@ -0,0 +1,84 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>sos2tf</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="sos2ss.html"><< sos2ss</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sos2zp.html">sos2zp >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > sos2tf</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">sos2tf</h1> + <p class="refpurpose">This function converts series second-order sections to direct H(z) = B(z)/A(z) form.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">B</span><span class="default">] = </span><span class="functionid">sos2tf</span><span class="default">(</span><span class="default">sos</span><span class="default">)</span> +<span class="default">[</span><span class="default">B</span><span class="default">] = </span><span class="functionid">sos2tf</span><span class="default">(</span><span class="default">sos</span><span class="default">, </span><span class="default">g</span><span class="default">)</span> +<span class="default">[</span><span class="default">B</span><span class="default">,</span><span class="default">A</span><span class="default">] = </span><span class="functionid">sos2tf</span><span class="default">(...)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">sos:</span> + <dd><p class="para">matrix of real or complex numbers</p></dd></dt> + <dt><span class="term">g:</span> + <dd><p class="para">real or complex value, default value is 1</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function converts series second-order sections to direct H(z) = B(z)/A(z) form. +The input is the sos matrix and the second parameter is the overall gain, default value of which is 1. +The output is a vector.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">sos2tf</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">5</span><span class="scilabdefault">,</span><span class="scilabnumber">6</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">3</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">4</span> <span class="scilabnumber">5</span> <span class="scilabnumber">6</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="sos2ss.html"><< sos2ss</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sos2zp.html">sos2zp >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/sos2zp.html b/help/en_US/scilab_en_US_help/sos2zp.html new file mode 100644 index 0000000..dc2db65 --- /dev/null +++ b/help/en_US/scilab_en_US_help/sos2zp.html @@ -0,0 +1,92 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>sos2zp</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="sos2tf.html"><< sos2tf</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sosbreak.html">sosbreak >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > sos2zp</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">sos2zp</h1> + <p class="refpurpose">This function converts series second-order sections to zeros, poles, and gains (pole residues).</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">z</span><span class="default"> = </span><span class="functionid">sos2zp</span><span class="default"> (</span><span class="default">sos</span><span class="default">)</span> +<span class="default">z</span><span class="default"> = </span><span class="functionid">sos2zp</span><span class="default"> (</span><span class="default">sos</span><span class="default">, </span><span class="default">g</span><span class="default">)</span> +<span class="default">[</span><span class="default">z</span><span class="default">, </span><span class="default">p</span><span class="default">] = </span><span class="functionid">sos2zp</span><span class="default"> (...)</span> +<span class="default">[</span><span class="default">z</span><span class="default">, </span><span class="default">p</span><span class="default">, </span><span class="default">k</span><span class="default">] = </span><span class="functionid">sos2zp</span><span class="default"> (...)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">sos:</span> + <dd><p class="para">matrix of real or complex numbers</p></dd></dt> + <dt><span class="term">g:</span> + <dd><p class="para">real or complex value, default value is 1</p></dd></dt> + <dt><span class="term">z:</span> + <dd><p class="para">column vector</p></dd></dt> + <dt><span class="term">p:</span> + <dd><p class="para">column vector</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function converts series second-order sections to zeros, poles, and gains (pole residues). +The input is the sos matrix and the second parameter is the overall gain, default value of which is 1. +The outputs are z, p, k. z and p are column vectors containing zeros and poles respectively, and k is the overall gain.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabopenclose">[</span><span class="scilabid">a</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabid">c</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">sos2zp</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">5</span><span class="scilabdefault">,</span><span class="scilabnumber">6</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">a</span> <span class="scilaboperator">=</span> +<span class="scilaboperator">-</span><span class="scilabnumber">1.0000</span> <span class="scilaboperator">+</span> <span class="scilabnumber">1.4142</span><span class="scilabid">i</span> +<span class="scilaboperator">-</span><span class="scilabnumber">1.0000</span> <span class="scilaboperator">-</span> <span class="scilabnumber">1.4142</span><span class="scilabid">i</span> +<span class="scilabid">b</span> <span class="scilaboperator">=</span> +<span class="scilaboperator">-</span><span class="scilabnumber">0.6250</span> <span class="scilaboperator">+</span> <span class="scilabnumber">1.0533</span><span class="scilabid">i</span> +<span class="scilaboperator">-</span><span class="scilabnumber">0.6250</span> <span class="scilaboperator">-</span> <span class="scilabnumber">1.0533</span><span class="scilabid">i</span> +<span class="scilabid">c</span> <span class="scilaboperator">=</span> <span class="scilabnumber">1</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="sos2tf.html"><< sos2tf</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sosbreak.html">sosbreak >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/sosbreak.html b/help/en_US/scilab_en_US_help/sosbreak.html new file mode 100644 index 0000000..cc0cfa0 --- /dev/null +++ b/help/en_US/scilab_en_US_help/sosbreak.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>sosbreak</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="sos2zp.html"><< sos2zp</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sosfilt.html">sosfilt >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > sosbreak</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">sosbreak</h1> + <p class="refpurpose">function for breaking a polynomial in second order polynomials (and an extra linear)</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="sos2zp.html"><< sos2zp</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="sosfilt.html">sosfilt >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/sosfilt.html b/help/en_US/scilab_en_US_help/sosfilt.html new file mode 100644 index 0000000..4974e6f --- /dev/null +++ b/help/en_US/scilab_en_US_help/sosfilt.html @@ -0,0 +1,79 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>sosfilt</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="sosbreak.html"><< sosbreak</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="specgram.html">specgram >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > sosfilt</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">sosfilt</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">y</span><span class="default">]=</span><span class="functionid">sosfilt</span><span class="default">(</span><span class="default">sos</span><span class="default">,</span><span class="default">x</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">sos:</span> + <dd><p class="para">Real or complex valued Lx6 vector or matrix</p></dd></dt> + <dt><span class="term">x:</span> + <dd><p class="para">Real or complex valued vector or matrix</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function +Second order section digital filter sos is applied to the input vector and the output vector obtained is of the same length.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1.</span> <span class="scilabid">sosfilt</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">3</span> <span class="scilabnumber">4</span> <span class="scilabnumber">5</span> <span class="scilabnumber">6</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span> <span class="scilabnumber">10</span><span class="scilabid">i</span><span class="scilabdefault">;</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span><span class="scilabopenclose">[</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.25000</span> <span class="scilabnumber">0.00000</span><span class="scilabdefault">;</span> <span class="scilabnumber">0.06250</span> <span class="scilabnumber">0.50000</span><span class="scilabopenclose">]</span> +<span class="scilabnumber">2.</span> <span class="scilabid">sosfilt</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">32</span> <span class="scilabnumber">28</span> <span class="scilabnumber">84</span> <span class="scilabnumber">47</span> <span class="scilabnumber">2</span> <span class="scilabnumber">29</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.68085</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="sosbreak.html"><< sosbreak</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="specgram.html">specgram >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/specgram.html b/help/en_US/scilab_en_US_help/specgram.html new file mode 100644 index 0000000..5dc47b0 --- /dev/null +++ b/help/en_US/scilab_en_US_help/specgram.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>specgram</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="sosfilt.html"><< sosfilt</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="ss2sos.html">ss2sos >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > specgram</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">specgram</h1> + <p class="refpurpose"></p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="sosfilt.html"><< sosfilt</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="ss2sos.html">ss2sos >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/ss2sos.html b/help/en_US/scilab_en_US_help/ss2sos.html new file mode 100644 index 0000000..6330957 --- /dev/null +++ b/help/en_US/scilab_en_US_help/ss2sos.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>ss2sos</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="specgram.html"><< specgram</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="statelevels.html">statelevels >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > ss2sos</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">ss2sos</h1> + <p class="refpurpose">not taking if, order and scale as input since they do not seem useful</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="specgram.html"><< specgram</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="statelevels.html">statelevels >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/statelevels.html b/help/en_US/scilab_en_US_help/statelevels.html new file mode 100644 index 0000000..4b9b34e --- /dev/null +++ b/help/en_US/scilab_en_US_help/statelevels.html @@ -0,0 +1,97 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>statelevels</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="ss2sos.html"><< ss2sos</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="stmcb.html">stmcb >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > statelevels</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">statelevels</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">levels</span><span class="default">=</span><span class="functionid">statelevels</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">nbins</span><span class="default">, </span><span class="default">method</span><span class="default">, </span><span class="default">bounds</span><span class="default">)</span> +<span class="default">[</span><span class="default">levels</span> <span class="default">histogram</span><span class="default">]=</span><span class="functionid">statelevels</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">nbins</span><span class="default">, </span><span class="default">method</span><span class="default">, </span><span class="default">bounds</span><span class="default">)</span> +<span class="default">[</span><span class="default">levels</span> <span class="default">histogram</span> <span class="default">bins</span><span class="default">]=</span><span class="functionid">statelevels</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">nbins</span><span class="default">, </span><span class="default">method</span><span class="default">, </span><span class="default">bounds</span><span class="default">)</span> +<span class="default">[</span><span class="default">levels</span> <span class="default">histogram</span> <span class="default">bins</span><span class="default">]=</span><span class="functionid">statelevels</span><span class="default">(</span><span class="default">x</span><span class="default">, </span><span class="default">nbins</span><span class="default">, </span><span class="default">method</span><span class="default">, </span><span class="default">bounds</span><span class="default">, </span>'<span class="default">fig</span>'<span class="default">, </span><span class="default">On</span> <span class="default">or</span> <span class="default">Off</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">real vector</p></dd></dt> + <dt><span class="term">nbins:</span> + <dd><p class="para">number of histogram bins to use in the histogram as a positive scalar, where the default value is 100</p></dd></dt> + <dt><span class="term">method:</span> + <dd><p class="para">method to estimate the statelevels using specified METHOD as one of 'mean' or 'mode', where the default value is 'mode'</p></dd></dt> + <dt><span class="term">bounds:</span> + <dd><p class="para">specify the lower and upper bound for the histogram as a two-element row vector</p></dd></dt> + <dt><span class="term">fig:</span> + <dd><p class="para">specify the logical input value to display figure as one of 'on' or 'off', where the default input in 'off'.</p></dd></dt> + <dt><span class="term">levels:</span> + <dd><p class="para">return lower and upper level values</p></dd></dt> + <dt><span class="term">histogram:</span> + <dd><p class="para">return histogram values</p></dd></dt> + <dt><span class="term">bins:</span> + <dd><p class="para">return binlevels values</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">x</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">1.2</span><span class="scilabdefault">,</span> <span class="scilabnumber">5</span><span class="scilabdefault">,</span> <span class="scilabnumber">10</span><span class="scilabdefault">,</span> <span class="scilaboperator">-</span><span class="scilabnumber">20</span><span class="scilabdefault">,</span> <span class="scilabnumber">12</span><span class="scilabopenclose">]</span> +<span class="scilabid">nbins</span><span class="scilaboperator">=</span><span class="scilabnumber">10</span> +<span class="scilabid">method</span><span class="scilaboperator">=</span><span class="scilabstring">'</span><span class="scilabstring">mode</span><span class="scilabstring">'</span> +<span class="scilabid">bounds</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">10</span><span class="scilabopenclose">]</span> +<span class="scilabid">levels</span><span class="scilaboperator">=</span><span class="scilabid">statelevels</span><span class="scilabopenclose">(</span><span class="scilabid">x</span><span class="scilabdefault">,</span> <span class="scilabid">nbins</span><span class="scilabdefault">,</span> <span class="scilabid">method</span><span class="scilabdefault">,</span> <span class="scilabid">bounds</span><span class="scilabopenclose">)</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"></ul></div> + +<div class="refsection"><h3 class="title">Authors</h3> + <ul class="itemizedlist"><li class="member">Jitendra Singh</li></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="ss2sos.html"><< ss2sos</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="stmcb.html">stmcb >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/stmcb.html b/help/en_US/scilab_en_US_help/stmcb.html new file mode 100644 index 0000000..dd781d5 --- /dev/null +++ b/help/en_US/scilab_en_US_help/stmcb.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>stmcb</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="statelevels.html"><< statelevels</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="strips.html">strips >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > stmcb</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">stmcb</h1> + <p class="refpurpose">function [b,a] = stmcb( x, u_in, q, p, niter, a_in )</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="statelevels.html"><< statelevels</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="strips.html">strips >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/strips.html b/help/en_US/scilab_en_US_help/strips.html new file mode 100644 index 0000000..0de8a21 --- /dev/null +++ b/help/en_US/scilab_en_US_help/strips.html @@ -0,0 +1,85 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>strips</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="stmcb.html"><< stmcb</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="subspaceMethodsInputParser.html">subspaceMethodsInputParser >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > strips</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">strips</h1> + <p class="refpurpose">Plots vector or matrix in strips</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="functionid">strips</span><span class="default">(</span><span class="default">x</span><span class="default">);</span> +<span class="functionid">strips</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">sd</span><span class="default">);</span> +<span class="functionid">strips</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">sd</span><span class="default">,</span><span class="default">fs</span><span class="default">);</span> +<span class="functionid">strips</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">sd</span><span class="default">,</span><span class="default">fs</span><span class="default">,</span><span class="default">scale</span><span class="default">);</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">strips(x) +Plots a vector x in horizontal strips of length 250 +If x is a matrix, it plots each column of x on a separate strip with the leftmost +column as the topmost strip +strips(x,sd) +Plots x in strips of length sd samples each +strips(x,sd,fs) +Plots x in strips of duration sd seconds with sampling frequency fs (in Hz) +strips(x,sd,fs,scale) +Plots x in strips as above, and scales the vertical axis by scale +If x is a matrix, strips uses a column vector of all the elements of x for the strip plot +If x has complex entries, only the real part of those entries are considered +Author +Ankur Mallick</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="stmcb.html"><< stmcb</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="subspaceMethodsInputParser.html">subspaceMethodsInputParser >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/style.css b/help/en_US/scilab_en_US_help/style.css new file mode 100644 index 0000000..0fe8923 --- /dev/null +++ b/help/en_US/scilab_en_US_help/style.css @@ -0,0 +1,350 @@ +body { + color:#000000; + background-color:#ffffff; + font-family:sans-serif; + font-size:100%; + margin:5px; + padding:0; + background : url("/img/body.png"); + background-repeat : repeat-x; +} + +.para { + padding-left: 10px; +} + +.refname { + color: #ff6c0a; +} +.refpurpose { + font-size: 110%; +} + +.synopsis { + border: 1px solid black; + width:80%; + padding: 0.5em; +} + +.editbar { + text-align: right; +} + +.term { + color:#800000; + font-size:100%; +} + +h3 { + color: #000063; + font-weight: bold; + font-size:130%; + margin-bottom: 10px; +} + +.programlisting { + font-family: monospace; + font-size: 100%; + background-color:#EEEEFF; + border-color:#CCCCCC; + border-style:solid; + border-width:2px medium; + width:80%; + color:#333333; + line-height:120%; + padding:10px; +} + +.literal { + font-family: monospace; + font-size: 100%; +} + +.option { + font-family: monospace; + font-style: italic; + font-size: 100%; +} + +.command { + font-family: monospace; + font-size: 100%; + color: #32b9b9; +} + +.function { + font-family: monospace; + font-size: 100%; + color: #32b9b9; +} + +.varname { + font-family: monospace; + font-weight: bold; + font-size: 100%; +} + +.constant { + font-family: monospace; + font-size: 100%; + color: #da70d6; +} + +a { + color: blue; + text-decoration:none; +} + +a:hover { + text-decoration:underline; +} + +.itemizedlist { + list-style-type: disk; +} + +.inline-list li { + display: inline; + list-style-type: disk; +} + +.vert-list { + list-style-type: disk; +} + +pre { + margin-bottom: 0px; + margin-top: 0px; +} + +.leftpart { + position:absolute; + float:left; + width: 186px; + padding: 5px; + font-size: smaller; +} + +.content { + margin-top: 100px; + margin-left: 196px +} + +.container { + margin: 0 auto; + width:1024px; +} + +ul.toc li.list-active { + list-style-type:disc; + font-weight:bold; +} + +ul.toc li.parent { + font-size: 115%; + padding: 5px 0px 5px 11px; + border-bottom: 1px solid #cccccc; + margin-bottom: 5px; +} + +ul.toc li.root { + font-size: 135%; + padding: 5px 0px 5px 11px; + border-bottom: 1px solid #cccccc; + margin-bottom: 5px; +} + +ul.toc li { + font-size: 85%; + margin: 1px 0 1px 1px; + padding: 1px 0 1px 11px; + background-repeat: no-repeat; + background-position: center left; + list-style-type: circle; +} + +.next { + float:right; + text-align: right; +} + +.center { + text-align: center; +} + +.screen { + font-family: monospace; + font-size: 100%; + background-color:#FFFFFF; + border-color:#CCCCCC; + border-style:solid; + border-width:2px medium; + width:80%; + color:#333333; + line-height:120%; + padding:10px; +} + +/* Top and bottom navigation controls on manual pages --------------------- */ +div.manualnavbar { + background-color: #E0E0E0; + color: inherit; + padding: 4px; + margin-bottom: 10px; +} +div.manualnavbar .prev { + padding-right: 4px; +} +div.manualnavbar .next { + text-align: right; + padding-left: 4px; +} + +div.manualnavbar .top { + text-align: center; + display: block; +} + +div.manualnavbar hr { + color: #cccccc; + background-color: #cccccc; +} + +/* Footer navigation area ------------------------------------------------- */ + +#pagefooter { + position: relative; + font-size: 75%; + color: inherit; + background-color: #e5e5e5; + width: 100%; +} + +#pagefooterleft { + top: 0px; + left: 0px; + padding: 6px; + margin-right: 30%; +} + +#pagefooterright { + text-align: right; + margin-left: 50%; + padding: 6px; +} +#footnav { + color: inherit; + background-color: #9999cc; + border-width: 1px 0px; + border-color: #333366; + border-style: solid; + text-align: right; + padding-right: 6px; +} + + + + + #global{ +/* width: 90%; */ + max-width: 90em; +/* min-width: 850px; */ + margin-left: auto; + margin-right: auto; + } + + #myHeader{ + background-color:#000000; + color:white; + margin-bottom : 10px; + position : relative; + text-align: center; +/* width : 1024px;*/ + height : 100px; + padding-left : 20px; + background : url("http://atoms.scilab.org/images/homepage/cadre_head.png"); + background-repeat : no-repeat; + background-position : 0px 0px; + + } + + #myFooter{ + background-color:#E5E5E5; + font-color:black; +/* width: 90%;*/ + max-width: 90em; +/* min-width: 850px; + margin-left: 5%; + margin-right: 5%;*/ + margin-top:10px; + padding:10px; + } + + #mainArea{ + width: 100%; + overflow: hidden; + } + + #myLeftArea{ + color:white; + float: left; + width: 180px; + padding:5px; + } + + #myMiddleArea{ + color:black; + margin-left: 200px; + padding: 10px 20px; + } + + #myRightArea{ + color:white; + float: right; + width: 200px; + padding: 12px 20px; + } + + +div#cadre_head +{ + position : relative; + text-align: center; +/* width : 1024px;*/ + height : 100px; + padding-left : 20px; + background : url("/img/cadre_head.png"); + background-repeat : no-repeat; + background-position : 0px 0px; +} + + +div#slogan{ + position: absolute; + top : 50px; + left:251px; + color:#0000AA; + font: 120%, Georgia,Serif; +} +div#cadre_help +{ + position: absolute; + top:45px; + right:0px; + font-size:0.8em; + color:#0000AA; +} + +table.revhistory +{ + width:80%; + border-color:#CCCCCC; + border-style:solid; + border-width:2px medium; + margin-bottom: 10px; +} + +table.revhistory tr.title td +{ + background-color: #9999CC; +}
\ No newline at end of file diff --git a/help/en_US/scilab_en_US_help/subspaceMethodsInputParser.html b/help/en_US/scilab_en_US_help/subspaceMethodsInputParser.html new file mode 100644 index 0000000..0180a3a --- /dev/null +++ b/help/en_US/scilab_en_US_help/subspaceMethodsInputParser.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>subspaceMethodsInputParser</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="strips.html"><< strips</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="tf2sos.html">tf2sos >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > subspaceMethodsInputParser</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">subspaceMethodsInputParser</h1> + <p class="refpurpose">Input parser to be used by pmusic and peig</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="strips.html"><< strips</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="tf2sos.html">tf2sos >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/tf2sos.html b/help/en_US/scilab_en_US_help/tf2sos.html new file mode 100644 index 0000000..dfc0413 --- /dev/null +++ b/help/en_US/scilab_en_US_help/tf2sos.html @@ -0,0 +1,84 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>tf2sos</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="subspaceMethodsInputParser.html"><< subspaceMethodsInputParser</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="tf2zp.html">tf2zp >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > tf2sos</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">tf2sos</h1> + <p class="refpurpose">This function converts direct-form filter coefficients to series second-order sections.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">sos</span><span class="default">] = </span><span class="functionid">tf2sos</span><span class="default"> (</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">)</span> +<span class="default">[</span><span class="default">sos</span><span class="default">, </span><span class="default">g</span><span class="default">] = </span><span class="functionid">tf2sos</span><span class="default"> (</span><span class="default">b</span><span class="default">, </span><span class="default">a</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">b:</span> + <dd><p class="para">matrix of real numbers</p></dd></dt> + <dt><span class="term">a:</span> + <dd><p class="para">matrix of real numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function converts direct-form filter coefficients to series second-order sections. +The input parameters b and a are vectors specifying the digital filter H(z) = B(z)/A(z). +The output is the sos matrix and the overall gain. +If there is only one output argument, the overall filter gain is applied to the first second-order section in the sos matrix.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">tf2sos</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">5</span><span class="scilabdefault">,</span><span class="scilabnumber">6</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.50000</span> <span class="scilabnumber">0.80579</span> <span class="scilabnumber">1.07239</span> <span class="scilabnumber">1.00000</span> <span class="scilabnumber">0.00000</span> <span class="scilabnumber">0.00000</span> +<span class="scilabnumber">1.00000</span> <span class="scilaboperator">-</span><span class="scilabnumber">1.10337</span> <span class="scilabnumber">1.87524</span> <span class="scilabnumber">1.00000</span> <span class="scilabnumber">0.00000</span> <span class="scilabnumber">0.00000</span> +<span class="scilabnumber">1.00000</span> <span class="scilabnumber">1.49180</span> <span class="scilaboperator">-</span><span class="scilabnumber">0.00000</span> <span class="scilabnumber">1.00000</span> <span class="scilabnumber">0.00000</span> <span class="scilabnumber">0.00000</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="subspaceMethodsInputParser.html"><< subspaceMethodsInputParser</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="tf2zp.html">tf2zp >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/tf2zp.html b/help/en_US/scilab_en_US_help/tf2zp.html new file mode 100644 index 0000000..35731d6 --- /dev/null +++ b/help/en_US/scilab_en_US_help/tf2zp.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>tf2zp</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="tf2sos.html"><< tf2sos</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="tf2zpk.html">tf2zpk >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > tf2zp</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">tf2zp</h1> + <p class="refpurpose">[z,p,k]= tf2zp(b,a);</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="tf2sos.html"><< tf2sos</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="tf2zpk.html">tf2zpk >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/tf2zpk.html b/help/en_US/scilab_en_US_help/tf2zpk.html new file mode 100644 index 0000000..2a76946 --- /dev/null +++ b/help/en_US/scilab_en_US_help/tf2zpk.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>tf2zpk</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="tf2zp.html"><< tf2zp</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="transpose.html">transpose >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > tf2zpk</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">tf2zpk</h1> + <p class="refpurpose">form</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="tf2zp.html"><< tf2zp</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="transpose.html">transpose >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/transpose.html b/help/en_US/scilab_en_US_help/transpose.html new file mode 100644 index 0000000..ea99f16 --- /dev/null +++ b/help/en_US/scilab_en_US_help/transpose.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>transpose</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="tf2zpk.html"><< tf2zpk</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="trial_iirlp2mb.html">trial_iirlp2mb >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > transpose</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">transpose</h1> + <p class="refpurpose">funcprot(0);</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="tf2zpk.html"><< tf2zpk</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="trial_iirlp2mb.html">trial_iirlp2mb >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/trial_iirlp2mb.html b/help/en_US/scilab_en_US_help/trial_iirlp2mb.html new file mode 100644 index 0000000..65c2a57 --- /dev/null +++ b/help/en_US/scilab_en_US_help/trial_iirlp2mb.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>trial_iirlp2mb</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="transpose.html"><< transpose</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="triang.html">triang >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > trial_iirlp2mb</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">trial_iirlp2mb</h1> + <p class="refpurpose">B = varargin(1)</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="transpose.html"><< transpose</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="triang.html">triang >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/triang.html b/help/en_US/scilab_en_US_help/triang.html new file mode 100644 index 0000000..07db437 --- /dev/null +++ b/help/en_US/scilab_en_US_help/triang.html @@ -0,0 +1,82 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>triang</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="trial_iirlp2mb.html"><< trial_iirlp2mb</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="tripuls.html">tripuls >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > triang</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">triang</h1> + <p class="refpurpose">This function returns the filter coefficients of a triangular window.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default"> = </span><span class="functionid">triang</span><span class="default"> (</span><span class="default">m</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">m:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">y:</span> + <dd><p class="para">output variable, vector of real numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function returns the filter coefficients of a triangular window of length m supplied as input, to the output vector y.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">triang</span><span class="scilabopenclose">(</span><span class="scilabnumber">5</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.3333333</span> +<span class="scilabnumber">0.6666667</span> +<span class="scilabnumber">1.</span> +<span class="scilabnumber">0.6666667</span> +<span class="scilabnumber">0.3333333</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="trial_iirlp2mb.html"><< trial_iirlp2mb</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="tripuls.html">tripuls >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/tripuls.html b/help/en_US/scilab_en_US_help/tripuls.html new file mode 100644 index 0000000..9feeb6b --- /dev/null +++ b/help/en_US/scilab_en_US_help/tripuls.html @@ -0,0 +1,84 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>tripuls</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="triang.html"><< triang</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="truth.html">truth >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > tripuls</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">tripuls</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">y</span><span class="default">] = </span><span class="functionid">tripuls</span><span class="default">(</span><span class="default">t</span><span class="default">)</span> +<span class="default">[</span><span class="default">y</span><span class="default">] = </span><span class="functionid">tripuls</span><span class="default">(</span><span class="default">t</span><span class="default">,</span><span class="default">w</span><span class="default">)</span> +<span class="default">[</span><span class="default">y</span><span class="default">] = </span><span class="functionid">tripuls</span><span class="default">(</span><span class="default">t</span><span class="default">,</span><span class="default">w</span><span class="default">,</span><span class="default">skew</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">t:</span> + <dd><p class="para">vector of real or complex numbers</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">real or complex number</p></dd></dt> + <dt><span class="term">skew:</span> + <dd><p class="para">real number, -1 <= s <= 1</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This function generates a triangular pulse which is sampled at times t over the interval [-w/2,w/2]. The value of skew lies between -1 +and 1. +The value of skew represents the relative placement of the peak in the given width.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">tripuls</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span> <span class="scilabnumber">.5</span><span class="scilabdefault">,</span> <span class="scilabnumber">.6</span><span class="scilabdefault">,</span> <span class="scilabnumber">1</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span> <span class="scilabnumber">0.9</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> +<span class="scilabid">This</span> <span class="scilabfkeyword">function</span> <span class="scilabid">being</span> <span class="scilabid">called</span> <span class="scilabid">from</span> <span class="scilabid">Octave</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="triang.html"><< triang</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="truth.html">truth >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/truth.html b/help/en_US/scilab_en_US_help/truth.html new file mode 100644 index 0000000..a63220f --- /dev/null +++ b/help/en_US/scilab_en_US_help/truth.html @@ -0,0 +1,59 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>truth</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="tripuls.html"><< tripuls</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="tukeywin.html">tukeywin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > truth</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">truth</h1> + <p class="refpurpose">y = %t</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="tripuls.html"><< tripuls</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="tukeywin.html">tukeywin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/tukeywin.html b/help/en_US/scilab_en_US_help/tukeywin.html new file mode 100644 index 0000000..dcb841d --- /dev/null +++ b/help/en_US/scilab_en_US_help/tukeywin.html @@ -0,0 +1,84 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>tukeywin</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="truth.html"><< truth</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="udecode.html">udecode >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > tukeywin</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">tukeywin</h1> + <p class="refpurpose">This function returns the filter coefficients of a Tukey window.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">w</span><span class="default"> = </span><span class="functionid">tukeywin</span><span class="default"> (</span><span class="default">m</span><span class="default">)</span> +<span class="default">w</span><span class="default"> = </span><span class="functionid">tukeywin</span><span class="default"> (</span><span class="default">m</span><span class="default">, </span><span class="default">r</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">m:</span> + <dd><p class="para">positive integer</p></dd></dt> + <dt><span class="term">r:</span> + <dd><p class="para">positive real number, between 0 and 1</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function returns the filter coefficients of a Tukey window of length m supplied as input, to the output vector w. +The second parameter r defines the ratio between the constant and cosine section and its value has to be between 0 and 1, with default value 0.5.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">tukeywin</span><span class="scilabopenclose">(</span><span class="scilabnumber">5</span><span class="scilabdefault">,</span> <span class="scilabnumber">2</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.</span> +<span class="scilabnumber">0.5</span> +<span class="scilabnumber">1.</span> +<span class="scilabnumber">0.5</span> +<span class="scilabnumber">0.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="truth.html"><< truth</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="udecode.html">udecode >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/udecode.html b/help/en_US/scilab_en_US_help/udecode.html new file mode 100644 index 0000000..50c0dba --- /dev/null +++ b/help/en_US/scilab_en_US_help/udecode.html @@ -0,0 +1,86 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>udecode</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="tukeywin.html"><< tukeywin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="uencode.html">uencode >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > udecode</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">udecode</h1> + <p class="refpurpose">Decodes the input uniformly quantized values</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default">=</span><span class="default">uencode</span><span class="default">(</span><span class="default">u</span><span class="default">,</span><span class="default">n</span><span class="default">,</span><span class="default">v</span><span class="default">,</span>'<span class="default">saturatemode</span>'<span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">Uniformly decodes the input vector or n-dimensional array of integers u with peak values +/- v +If u has only positive values, the range of integers is assumed to be [0,2^n-1] +If u has positive and negative values the range of integers is assumed to be [-2^(n-1),2^(n-1)-1] +If v is not specified, its default value is 1 +If saturatemode='wrap' the output is wrapped using modulo arithmetic if overflow occurs +If saturatemode='saturate' the output is saturated if overflow accors +Example +u = int8([-1 1 2 -5]); +ysat = udecode(u,3) +ysat =</p> + <p class="para">- 0.25 0.25 0.5 - 1. +Author +Ankur Mallick +[1] International Telecommunication Union. General Aspects of Digital Transmission Systems: Vocabulary of Digital Transmission and Multiplexing, and Pulse Code Modulation (PCM) Terms. ITU-T Recommendation G.701. March, 1993.</p></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"><li class="member"><a href="uencode.html" class="link">uencode</a></li> + <li class="member"><a href="scilab://floor" class="link">floor</a></li></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="tukeywin.html"><< tukeywin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="uencode.html">uencode >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/uencode.html b/help/en_US/scilab_en_US_help/uencode.html new file mode 100644 index 0000000..e79ca83 --- /dev/null +++ b/help/en_US/scilab_en_US_help/uencode.html @@ -0,0 +1,87 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>uencode</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="udecode.html"><< udecode</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="ultrwin.html">ultrwin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > uencode</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">uencode</h1> + <p class="refpurpose">Performs uniform quantization of the input into 2^n levels</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default">=</span><span class="functionid">uencode</span><span class="default">(</span><span class="default">u</span><span class="default">,</span><span class="default">n</span><span class="default">,</span><span class="default">v</span><span class="default">,</span>'<span class="default">signflag</span>'<span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">Uniformly quantizes the input vector or n-dimensional array u into 2^n levels in the interval [-v,v] +If v is not specified, its default value is 1 +'signflag' is a string that determines the nature of the quantization +If signflag='unsigned' then y contains unsigned integers in the range [0,2^n-1] corresponding to the 2^n levels +If signflag='unsigned' then y contains signed integers in the range [-2^(n-1),2^(n-1)-1] corresponding to the 2^n levels +The size of the integers in y in bits(8,16, or 32) depends on the value of n +If the input lies beyond +/- v it is saturated +Example +y=uencode(-1:0.5:1,3) +y =</p> + <p class="para">0 2 4 6 7 +Author +Ankur Mallick +References +[1] International Telecommunication Union. General Aspects of Digital Transmission Systems: Vocabulary of Digital Transmission and Multiplexing, and Pulse Code Modulation (PCM) Terms. ITU-T Recommendation G.701. March, 1993.</p></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"><li class="member"><a href="udecode.html" class="link">udecode</a></li> + <li class="member"><a href="scilab://floor" class="link">floor</a></li></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="udecode.html"><< udecode</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="ultrwin.html">ultrwin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/ultrwin.html b/help/en_US/scilab_en_US_help/ultrwin.html new file mode 100644 index 0000000..3e3bfdd --- /dev/null +++ b/help/en_US/scilab_en_US_help/ultrwin.html @@ -0,0 +1,92 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>ultrwin</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="uencode.html"><< uencode</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="unshiftdata.html">unshiftdata >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > ultrwin</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">ultrwin</h1> + <p class="refpurpose">This function returns the coefficients of an Ultraspherical window.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">w</span><span class="default"> = </span><span class="functionid">ultrwin</span><span class="default"> (</span><span class="default">m</span><span class="default">, </span><span class="default">mu</span><span class="default">, </span><span class="default">par</span><span class="default">)</span> +<span class="default">w</span><span class="default"> = </span><span class="functionid">ultrwin</span><span class="default"> (</span><span class="default">m</span><span class="default">, </span><span class="default">mu</span><span class="default">, </span><span class="default">par</span><span class="default">, </span><span class="default">key</span><span class="default">)</span> +<span class="default">w</span><span class="default"> = </span><span class="functionid">ultrwin</span><span class="default"> (</span><span class="default">m</span><span class="default">, </span><span class="default">mu</span><span class="default">, </span><span class="default">par</span><span class="default">, </span><span class="default">key</span><span class="default">, </span><span class="default">norm</span><span class="default">)</span> +<span class="default">[</span><span class="default">w</span><span class="default">, </span><span class="default">xmu</span><span class="default">] = </span><span class="functionid">ultrwin</span><span class="default"> (...)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">m:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">mu:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">par:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">key:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">norm:</span> + <dd><p class="para"></p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function returns the coefficients of an Ultraspherical window of length m supplied as input, to the output vector w. +The second parameter controls the ratio between side lobe to side lobe of the window's Fourier transform. +The third parameter controls the ratio between main lobe width to side lobe. The default value is beta. +The value of xmu is also returned for given beta, att or latt.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">ultrwin</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">0.4</span><span class="scilabdefault">,</span><span class="scilabnumber">0.5</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilaboperator">-</span> <span class="scilabnumber">1.</span> +<span class="scilabnumber">1.</span> +<span class="scilaboperator">-</span> <span class="scilabnumber">1.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="uencode.html"><< uencode</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="unshiftdata.html">unshiftdata >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/unshiftdata.html b/help/en_US/scilab_en_US_help/unshiftdata.html new file mode 100644 index 0000000..15b3acf --- /dev/null +++ b/help/en_US/scilab_en_US_help/unshiftdata.html @@ -0,0 +1,122 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>unshiftdata</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="ultrwin.html"><< ultrwin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="upfirdn.html">upfirdn >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > unshiftdata</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">unshiftdata</h1> + <p class="refpurpose">Inverts the effect of shiftdata</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">y=unshiftdata(x,perm,nshifts) +Applies the permutation perm or number of shifts nshifts on x to invert shiftdata</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">x</span><span class="scilaboperator">=</span><a class="scilabcommand" href="scilab://testmatrix">testmatrix</a><span class="scilabopenclose">(</span><span class="scilabstring">'</span><span class="scilabstring">magi</span><span class="scilabstring">'</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span> +<span class="scilabid">x</span> <span class="scilaboperator">=</span> + +<span class="scilabnumber">8.</span> <span class="scilabnumber">1.</span> <span class="scilabnumber">6.</span> +<span class="scilabnumber">3.</span> <span class="scilabnumber">5.</span> <span class="scilabnumber">7.</span> +<span class="scilabnumber">4.</span> <span class="scilabnumber">9.</span> <span class="scilabnumber">2.</span> +<span class="scilabopenclose">[</span><span class="scilabid">y</span><span class="scilabdefault">,</span><span class="scilabid">perm</span><span class="scilabdefault">,</span><span class="scilabid">nshifts</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">shiftdata</span><span class="scilabopenclose">(</span><span class="scilabid">x</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> <span class="scilabcomment">//Shifts dimension 2</span> +<span class="scilabid">nshifts</span> <span class="scilaboperator">=</span> + +<span class="scilabopenclose">[</span><span class="scilabopenclose">]</span> +<span class="scilabid">perm</span> <span class="scilaboperator">=</span> + +<span class="scilabnumber">2.</span> <span class="scilabnumber">1.</span> +<span class="scilabid">y</span> <span class="scilaboperator">=</span> + +<span class="scilabnumber">8.</span> <span class="scilabnumber">3.</span> <span class="scilabnumber">4.</span> +<span class="scilabnumber">1.</span> <span class="scilabnumber">5.</span> <span class="scilabnumber">9.</span> +<span class="scilabnumber">6.</span> <span class="scilabnumber">7.</span> <span class="scilabnumber">2.</span> +<span class="scilabid">z</span><span class="scilaboperator">=</span><span class="scilabid">unshiftdata</span><span class="scilabopenclose">(</span><span class="scilabid">y</span><span class="scilabdefault">,</span><span class="scilabid">perm</span><span class="scilabdefault">,</span><span class="scilabid">nshifts</span><span class="scilabopenclose">)</span> +<span class="scilabid">z</span> <span class="scilaboperator">=</span> + +<span class="scilabnumber">8.</span> <span class="scilabnumber">1.</span> <span class="scilabnumber">6.</span> +<span class="scilabnumber">3.</span> <span class="scilabnumber">5.</span> <span class="scilabnumber">7.</span> +<span class="scilabnumber">4.</span> <span class="scilabnumber">9.</span> <span class="scilabnumber">2.</span> + +<span class="scilabid">x</span><span class="scilaboperator">=</span><span class="scilabnumber">1</span><span class="scilabspecial">:</span><span class="scilabnumber">5</span> +<span class="scilabid">x</span> <span class="scilaboperator">=</span> + +<span class="scilabnumber">1.</span> <span class="scilabnumber">2.</span> <span class="scilabnumber">3.</span> <span class="scilabnumber">4.</span> <span class="scilabnumber">5.</span> +<span class="scilabopenclose">[</span><span class="scilabid">y</span><span class="scilabdefault">,</span><span class="scilabid">perm</span><span class="scilabdefault">,</span><span class="scilabid">nshifts</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">shiftdata</span><span class="scilabopenclose">(</span><span class="scilabid">x</span><span class="scilabopenclose">)</span> <span class="scilabcomment">//Shifts first non-singleton dimension</span> +<span class="scilabid">nshifts</span> <span class="scilaboperator">=</span> + +<span class="scilabnumber">1.</span> +<span class="scilabid">perm</span> <span class="scilaboperator">=</span> + +<span class="scilabopenclose">[</span><span class="scilabopenclose">]</span> +<span class="scilabid">y</span> <span class="scilaboperator">=</span> + +<span class="scilabnumber">1.</span> +<span class="scilabnumber">2.</span> +<span class="scilabnumber">3.</span> +<span class="scilabnumber">4.</span> +<span class="scilabnumber">5.</span> +<span class="scilabcomment">//z=unshiftdata(y,perm,nshifts)</span> +<span class="scilabid">z</span> <span class="scilaboperator">=</span> + +<span class="scilabnumber">1.</span> <span class="scilabnumber">2.</span> <span class="scilabnumber">3.</span> <span class="scilabnumber">4.</span> <span class="scilabnumber">5.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + +<div class="refsection"><h3 class="title">See also</h3> + <ul class="itemizedlist"></ul></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="ultrwin.html"><< ultrwin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="upfirdn.html">upfirdn >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/upfirdn.html b/help/en_US/scilab_en_US_help/upfirdn.html new file mode 100644 index 0000000..0b2d1e3 --- /dev/null +++ b/help/en_US/scilab_en_US_help/upfirdn.html @@ -0,0 +1,83 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>upfirdn</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="unshiftdata.html"><< unshiftdata</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="upsample.html">upsample >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > upfirdn</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">upfirdn</h1> + <p class="refpurpose">This function upsamples the input data, applies the FIR filter and then downsamples it.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default"> = </span><span class="functionid">upfirdn</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">h</span><span class="default">, </span><span class="default">p</span><span class="default">, </span><span class="default">q</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">h:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">p:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">q:</span> + <dd><p class="para"></p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function upsamples the input data in the matrix by a factor of n. Then the upsampled data is FIR filtered. After this, the resultant is downsampled.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">upfirdn</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">5</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> + +<span class="scilabnumber">2.</span> <span class="scilabnumber">0.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="unshiftdata.html"><< unshiftdata</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="upsample.html">upsample >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/upsample.html b/help/en_US/scilab_en_US_help/upsample.html new file mode 100644 index 0000000..86c1e83 --- /dev/null +++ b/help/en_US/scilab_en_US_help/upsample.html @@ -0,0 +1,82 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>upsample</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="upfirdn.html"><< upfirdn</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="upsamplefill.html">upsamplefill >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > upsample</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">upsample</h1> + <p class="refpurpose">This function upsamples the signal, inserting n-1 zeros between every element.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default"> = </span><span class="functionid">upsample</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">n</span><span class="default">)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">upsample</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">n</span><span class="default">, </span><span class="default">phase</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">scalar, vector or matrix of real or complex numbers</p></dd></dt> + <dt><span class="term">n:</span> + <dd><p class="para">real number or vector</p></dd></dt> + <dt><span class="term">phase:</span> + <dd><p class="para">integer value, 0 <= phase <= (n - 1 ), default value 0, or logical</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function upsamples the signal, inserting n-1 zeros between every element. If x is a matrix, every column is upsampled. +The phase determines the position of the inserted sample in the block of zeros. The default value is 0.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">upsample</span><span class="scilabopenclose">(</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">5</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.</span> <span class="scilabnumber">0.</span> <span class="scilabnumber">4.</span> <span class="scilabnumber">0.</span> <span class="scilabnumber">0.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="upfirdn.html"><< upfirdn</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="upsamplefill.html">upsamplefill >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/upsamplefill.html b/help/en_US/scilab_en_US_help/upsamplefill.html new file mode 100644 index 0000000..2adf098 --- /dev/null +++ b/help/en_US/scilab_en_US_help/upsamplefill.html @@ -0,0 +1,83 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>upsamplefill</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="upsample.html"><< upsample</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="var.html">var >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > upsamplefill</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">upsamplefill</h1> + <p class="refpurpose">This function upsamples a vector interleaving given values or copies of the vector elements.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default"> = </span><span class="functionid">upsamplefill</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">w</span><span class="default">)</span> +<span class="default">y</span><span class="default"> = </span><span class="functionid">upsamplefill</span><span class="default"> (</span><span class="default">x</span><span class="default">, </span><span class="default">w</span><span class="default">, </span><span class="default">cpy</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">scalar, vector or matrix of real or complex numbers</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">scalar or vector of real or complex values</p></dd></dt> + <dt><span class="term">cpy:</span> + <dd><p class="para">can take in "true" or "false", default is false</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function upsamples a vector interleaving given values or copies of the vector elements. +The second argument has the values in the vector w that are placed in between the elements of x. +The third argument, if true, means that w should be scalar and that each value in x repeated w times.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">upsamplefill</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">0.4</span><span class="scilabdefault">,</span><span class="scilabnumber">0.5</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">7</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.4</span> <span class="scilabnumber">7.</span> <span class="scilabnumber">0.5</span> <span class="scilabnumber">7.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="upsample.html"><< upsample</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="var.html">var >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/var.html b/help/en_US/scilab_en_US_help/var.html new file mode 100644 index 0000000..bdfeb75 --- /dev/null +++ b/help/en_US/scilab_en_US_help/var.html @@ -0,0 +1,75 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>var</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="upsamplefill.html"><< upsamplefill</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="vco.html">vco >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > var</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">var</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default">=</span><span class="functionid">var</span><span class="default">(</span><span class="default">x</span><span class="default">)</span> +<span class="default">y</span><span class="default">=</span><span class="functionid">var</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">w</span><span class="default">)</span> +<span class="default">y</span><span class="default">=</span><span class="functionid">var</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">w</span><span class="default">,</span><span class="default">dim</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">a vector or matrix.</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">weight vector W of length X, or may take the value of 0 and 1. The default value is 0. Consider only non-negative values.</p></dd></dt> + <dt><span class="term">dim:</span> + <dd><p class="para">consider the variance along the dimension of X. 1 for clumun wise variamce and 2 for row wise variance.</p></dd></dt> + <dt><span class="term">y:</span> + <dd><p class="para">returns the variance of the values in X.</p></dd></dt></dl></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="upsamplefill.html"><< upsamplefill</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="vco.html">vco >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/vco.html b/help/en_US/scilab_en_US_help/vco.html new file mode 100644 index 0000000..7e2f72b --- /dev/null +++ b/help/en_US/scilab_en_US_help/vco.html @@ -0,0 +1,87 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>vco</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="var.html"><< var</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="welchwin.html">welchwin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > vco</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">vco</h1> + <p class="refpurpose">Voltage Controlled Oscillator</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">y</span><span class="default">=</span><span class="functionid">vco</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">fc</span><span class="default">,</span><span class="default">fs</span><span class="default">)</span> +<span class="default">y</span><span class="default">=</span><span class="functionid">vco</span><span class="default">(</span><span class="default">x</span><span class="default">,[</span><span class="default">fmin</span> <span class="default">fmax</span><span class="default">],</span><span class="default">fs</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">y=vco(x,fc,fs) +Creates a frequency modulated cosine wave y whose frequency varies as the magnitude of x +x lies in [-1,1]. x=-1 corresponds to a frequency of 0, x=0 corresponds to a frequency of fc +and x=1 corresponds to a frequency of 2fc. +y=vco(x,[fmin fmax],fs) +Scales the frequency range so that x=-1 corresponds to a frequency of fmin and +x=1 corresponds to a frequency of fmax +If x is a matrix the same operation is performed on the columns on x +Size of y is the same as the size of x +Example +x=rand() +x =</p> + <p class="para">0.2113249 +y=vco(x,2000,8000) +y =</p> + <p class="para">0.9454092 +Author +Ankur Mallick</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="var.html"><< var</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="welchwin.html">welchwin >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/welchwin.html b/help/en_US/scilab_en_US_help/welchwin.html new file mode 100644 index 0000000..bcf3d9c --- /dev/null +++ b/help/en_US/scilab_en_US_help/welchwin.html @@ -0,0 +1,86 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>welchwin</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="vco.html"><< vco</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="window.html">window >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > welchwin</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">welchwin</h1> + <p class="refpurpose">This function returns the filter coefficients of a Welch window.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">w</span><span class="default"> = </span><span class="functionid">welchwin</span><span class="default"> (</span><span class="default">m</span><span class="default">)</span> +<span class="default">w</span><span class="default"> = </span><span class="functionid">welchwin</span><span class="default"> (</span><span class="default">m</span><span class="default">, </span><span class="default">opt</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">m:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">opt:</span> + <dd><p class="para">string value, takes "periodic" or "symmetric"</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">output variable, vector of real numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function returns the filter coefficients of a Welch window of length m supplied as input, to the output vector w. +The second parameter can take the values "periodic" or "symmetric", depending on which the corresponding form of window is returned. The default is symmetric. +For symmetric, the length should be an integer>2. For periodic, the length should be an integer>1.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">welchwin</span><span class="scilabopenclose">(</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabstring">"</span><span class="scilabstring">symmetric</span><span class="scilabstring">"</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.</span> +<span class="scilabnumber">0.8888889</span> +<span class="scilabnumber">0.8888889</span> +<span class="scilabnumber">0.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="vco.html"><< vco</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="window.html">window >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/window.html b/help/en_US/scilab_en_US_help/window.html new file mode 100644 index 0000000..219ffe9 --- /dev/null +++ b/help/en_US/scilab_en_US_help/window.html @@ -0,0 +1,88 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>window</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="welchwin.html"><< welchwin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="wkeep.html">wkeep >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > window</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">window</h1> + <p class="refpurpose">This function creates an m-point window from the function f given as input.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">w</span><span class="default"> = </span><span class="functionid">window</span><span class="default">(</span><span class="default">f</span><span class="default">, </span><span class="default">m</span><span class="default">)</span> +<span class="default">w</span><span class="default"> = </span><span class="functionid">window</span><span class="default">(</span><span class="default">f</span><span class="default">, </span><span class="default">m</span><span class="default">, </span><span class="default">opts</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">f:</span> + <dd><p class="para">string value</p></dd></dt> + <dt><span class="term">m:</span> + <dd><p class="para">positive integer value</p></dd></dt> + <dt><span class="term">opts:</span> + <dd><p class="para">string value, takes in "periodic" or "symmetric"</p></dd></dt> + <dt><span class="term">w:</span> + <dd><p class="para">output variable, vector of real numbers</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function creates an m-point window from the function f given as input, in the output vector w. +f can take any valid function as a string, for example "blackmanharris".</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabmacro">window</span><span class="scilabopenclose">(</span><span class="scilabstring">"</span><span class="scilabstring">hanning</span><span class="scilabstring">"</span><span class="scilabdefault">,</span><span class="scilabnumber">5</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">0.</span> +<span class="scilabnumber">0.5</span> +<span class="scilabnumber">1.</span> +<span class="scilabnumber">0.5</span> +<span class="scilabnumber">0.</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="welchwin.html"><< welchwin</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="wkeep.html">wkeep >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/wkeep.html b/help/en_US/scilab_en_US_help/wkeep.html new file mode 100644 index 0000000..3fde526 --- /dev/null +++ b/help/en_US/scilab_en_US_help/wkeep.html @@ -0,0 +1,83 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>wkeep</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="window.html"><< window</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="wrev.html">wrev >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > wkeep</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">wkeep</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">y</span><span class="default">]=</span><span class="functionid">wkeep</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">l</span><span class="default">)</span> +<span class="default">[</span><span class="default">y</span><span class="default">]=</span><span class="functionid">wkeep</span><span class="default">(</span><span class="default">x</span><span class="default">,</span><span class="default">l</span><span class="default">,</span><span class="default">opt</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">Real, complex or string type input vector or matrix</p></dd></dt> + <dt><span class="term">l:</span> + <dd><p class="para">Length of matrix required</p></dd></dt> + <dt><span class="term">opt:</span> + <dd><p class="para">Character input to determine which side to extract from</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function +[y]=wkeep(x,l) extracts a vector of length l from the centre of input vector x. +[y]=wkeep(x,l,opt) extracts vector based on opt which could be 'l','r' or 'c' (left, right or central).</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1.</span> <span class="scilabopenclose">[</span><span class="scilabid">y</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">wkeep</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">3</span><span class="scilabdefault">;</span><span class="scilabnumber">4</span> <span class="scilabnumber">5</span> <span class="scilabnumber">6</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabnumber">2</span> <span class="scilabnumber">2</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">y</span><span class="scilaboperator">=</span> <span class="scilabnumber">1</span> <span class="scilabnumber">2</span> +<span class="scilabnumber">2.</span> <span class="scilabopenclose">[</span><span class="scilabid">y</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">wkeep</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">3</span> <span class="scilabnumber">4</span> <span class="scilabnumber">5</span> <span class="scilabnumber">6</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabstring">'</span><span class="scilabstring">r</span><span class="scilabstring">'</span><span class="scilabopenclose">)</span> +<span class="scilabid">y</span><span class="scilaboperator">=</span> <span class="scilabnumber">4</span> <span class="scilabnumber">5</span> <span class="scilabnumber">6</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="window.html"><< window</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="wrev.html">wrev >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/wrev.html b/help/en_US/scilab_en_US_help/wrev.html new file mode 100644 index 0000000..1024697 --- /dev/null +++ b/help/en_US/scilab_en_US_help/wrev.html @@ -0,0 +1,77 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>wrev</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="wkeep.html"><< wkeep</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="xcorr2.html">xcorr2 >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > wrev</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">wrev</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">y</span><span class="default">]=</span><span class="functionid">wrev</span><span class="default">(</span><span class="default">x</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">x:</span> + <dd><p class="para">Input vector of string, real or complex values</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function reverses the order of elements of the input vector x.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabnumber">1.</span> <span class="scilabid">wrev</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span><span class="scilaboperator">=</span> <span class="scilabnumber">3</span> <span class="scilabnumber">2</span> <span class="scilabnumber">1</span> +<span class="scilabnumber">2.</span> <span class="scilabid">wrev</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabstring">'</span><span class="scilabstring">a</span><span class="scilabstring">'</span><span class="scilabdefault">,</span><span class="scilabstring">'</span><span class="scilabstring">b</span><span class="scilabstring">'</span><span class="scilabdefault">,</span><span class="scilabstring">'</span><span class="scilabstring">c</span><span class="scilabstring">'</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span><span class="scilaboperator">=</span> <span class="scilabid">cba</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="wkeep.html"><< wkeep</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="xcorr2.html">xcorr2 >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/xcorr2.html b/help/en_US/scilab_en_US_help/xcorr2.html new file mode 100644 index 0000000..6497288 --- /dev/null +++ b/help/en_US/scilab_en_US_help/xcorr2.html @@ -0,0 +1,65 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>xcorr2</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="wrev.html"><< wrev</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="zerocrossing.html">zerocrossing >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > xcorr2</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">xcorr2</h1> + <p class="refpurpose"></p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">c</span><span class="default"> = </span><span class="functionid">xcorr2</span><span class="default"> (</span><span class="default">a</span><span class="default">)</span> +<span class="default">c</span><span class="default"> = </span><span class="functionid">xcorr2</span><span class="default"> (</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">)</span> +<span class="default">c</span><span class="default"> = </span><span class="functionid">xcorr2</span><span class="default"> (</span><span class="default">a</span><span class="default">, </span><span class="default">b</span><span class="default">, </span><span class="default">biasflag</span><span class="default">)</span></pre></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="wrev.html"><< wrev</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="zerocrossing.html">zerocrossing >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/xml_code.css b/help/en_US/scilab_en_US_help/xml_code.css new file mode 100644 index 0000000..9e4c27f --- /dev/null +++ b/help/en_US/scilab_en_US_help/xml_code.css @@ -0,0 +1,94 @@ +.xmlcomment { + font-style: italic; + color: #01a801 +} + +.xmldefault { + font-style: normal; + color: #000000 +} + +.xmlentity { + font-style: normal; + color: #ffaa00 +} + +.xmlopeninstr { + font-style: normal; + color: #000000 +} + +.xmlcloseinstr { + font-style: normal; + color: #000000 +} + +.xmlinstrname { + font-style: normal; + color: #9965a6 +} + +.xmllowtag { + font-style: normal; + color: #000000 +} + +.xmltagname { + font-style: normal; + color: #0303ff +} + +.xmllowclose { + font-style: normal; + color: #000000 +} + +.xmlopencomment { + font-style: italic; + color: #01a801 +} + +.xmlcommentend { + font-style: italic; + color: #01a801 +} + +.xmlcomment { + font-style: italic; + color: #01a801 +} + +.xmlopencdata { + font-style: normal; + color: #c45555 +} + +.xmlcdataend { + font-style: normal; + color: #c45555 +} + +.xmlcdata { + font-style: normal; + color: #000000 +} + +.xmlattributename { + font-style: normal; + color: #9965a6 +} + +.xmlequal { + font-style: normal; + color: #000000 +} + +.xmlattributevalue { + font-style: normal; + color: #973964 +} + +.xmlautoclose { + font-style: normal; + color: #000000 +} diff --git a/help/en_US/scilab_en_US_help/zerocrossing.html b/help/en_US/scilab_en_US_help/zerocrossing.html new file mode 100644 index 0000000..ab976d8 --- /dev/null +++ b/help/en_US/scilab_en_US_help/zerocrossing.html @@ -0,0 +1,78 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>zerocrossing</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="xcorr2.html"><< xcorr2</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="zp2sos.html">zp2sos >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > zerocrossing</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">zerocrossing</h1> + <p class="refpurpose">This function estimates the points at which a given waveform crosses the x-axis.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">x</span><span class="default"> = </span><span class="functionid">zerocrossing</span><span class="default"> (</span><span class="default">w</span><span class="default">, </span><span class="default">y</span><span class="default">)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">w:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">y:</span> + <dd><p class="para"></p></dd></dt> + <dt><span class="term">x:</span> + <dd><p class="para"></p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function estimates the points at which a given waveform y = y(w) crosses the x-axis. It uses linear interpolation.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="xcorr2.html"><< xcorr2</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="zp2sos.html">zp2sos >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/zp2sos.html b/help/en_US/scilab_en_US_help/zp2sos.html new file mode 100644 index 0000000..f57a805 --- /dev/null +++ b/help/en_US/scilab_en_US_help/zp2sos.html @@ -0,0 +1,87 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>zp2sos</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="zerocrossing.html"><< zerocrossing</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="zplane.html">zplane >></a></span> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > zp2sos</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">zp2sos</h1> + <p class="refpurpose">This function converts filter poles and zeros to second-order sections.</p></div> + + +<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3> + <div class="synopsis"><pre><span class="default">[</span><span class="default">sos</span><span class="default">] = </span><span class="functionid">zp2sos</span><span class="default">(</span><span class="default">z</span><span class="default">)</span> +<span class="default">[</span><span class="default">sos</span><span class="default">] = </span><span class="functionid">zp2sos</span><span class="default">(</span><span class="default">z</span><span class="default">, </span><span class="default">p</span><span class="default">)</span> +<span class="default">[</span><span class="default">sos</span><span class="default">] = </span><span class="functionid">zp2sos</span><span class="default">(</span><span class="default">z</span><span class="default">, </span><span class="default">p</span><span class="default">, </span><span class="default">k</span><span class="default">)</span> +<span class="default">[</span><span class="default">sos</span><span class="default">, </span><span class="default">g</span><span class="default">] = </span><span class="functionid">zp2sos</span><span class="default">(...)</span></pre></div></div> + +<div class="refsection"><h3 class="title">Parameters</h3> + <dl><dt><span class="term">z:</span> + <dd><p class="para">column vector</p></dd></dt> + <dt><span class="term">p:</span> + <dd><p class="para">column vector</p></dd></dt> + <dt><span class="term">k:</span> + <dd><p class="para">real or complex value, default value is 1</p></dd></dt></dl></div> + +<div class="refsection"><h3 class="title">Description</h3> + <p class="para">This is an Octave function. +This function converts filter poles and zeros to second-order sections. +The first and second parameters are column vectors containing zeros and poles. The third parameter is the overall filter gain, the default value of which is 1. +The output is the sos matrix and the overall gain. +If there is only one output argument, the overall filter gain is applied to the first second-order section in the sos matrix.</p></div> + +<div class="refsection"><h3 class="title">Examples</h3> + <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">zp2sos</span><span class="scilabopenclose">(</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span> <span class="scilabnumber">2</span><span class="scilabdefault">,</span> <span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span> <span class="scilabnumber">2</span><span class="scilabdefault">,</span> <span class="scilabnumber">6</span><span class="scilabopenclose">)</span> +<span class="scilabid">ans</span> <span class="scilaboperator">=</span> +<span class="scilabnumber">6</span> <span class="scilaboperator">-</span><span class="scilabnumber">18</span> <span class="scilabnumber">12</span> <span class="scilabnumber">1</span> <span class="scilaboperator">-</span><span class="scilabnumber">2</span> <span class="scilabnumber">0</span> +<span class="scilabnumber">1</span> <span class="scilaboperator">-</span><span class="scilabnumber">3</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="zerocrossing.html"><< zerocrossing</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + <span class="next"><a href="zplane.html">zplane >></a></span> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/scilab_en_US_help/zplane.html b/help/en_US/scilab_en_US_help/zplane.html new file mode 100644 index 0000000..5713e19 --- /dev/null +++ b/help/en_US/scilab_en_US_help/zplane.html @@ -0,0 +1,57 @@ +<html><head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> + <title>zplane</title> + <style type="text/css" media="all"> + @import url("scilab_code.css"); + @import url("xml_code.css"); + @import url("c_code.css"); + @import url("style.css"); + </style> + </head> + <body> + <div class="manualnavbar"> + <table width="100%"><tr> + <td width="30%"> + <span class="previous"><a href="zp2sos.html"><< zp2sos</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + + </td> + </tr></table> + <hr /> + </div> + + + + <span class="path"><a href="index.html">FOSSEE Signal Processing Toolbox</a> >> <a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a> > zplane</span> + + <br /><br /> + <div class="refnamediv"><h1 class="refname">zplane</h1> + <p class="refpurpose">funcprot(0);</p></div> + <br /> + + <div class="manualnavbar"> + <table width="100%"> + <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr> +<tr> + <td width="30%"> + <span class="previous"><a href="zp2sos.html"><< zp2sos</a></span> + + </td> + <td width="40%" class="center"> + <span class="top"><a href="section_be19baaac84b122b8ad501d34462f5bf.html">FOSSEE Signal Processing Toolbox</a></span> + + </td> + <td width="30%" class="next"> + + </td> + </tr></table> + <hr /> + </div> + </body> +</html> diff --git a/help/en_US/seqperiod.xml b/help/en_US/seqperiod.xml new file mode 100644 index 0000000..f2f7e33 --- /dev/null +++ b/help/en_US/seqperiod.xml @@ -0,0 +1,88 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from seqperiod.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="seqperiod" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>seqperiod</refname> + <refpurpose>Calculates the period of a sequence</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [p,num]=seqperiod(x) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> A vector matrix or n-dimensional array</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +[p,num]=seqperiod(x) +Returns an integer p such that x(1:p) is the smallest subsequence that repeats in x +The number of times the subsequence repeats is returned in num (may not be an integer) +Repetitions may be incomplete at the end of the sequence but no breaks are permitted between repetitions +If there is no subsequence that repeats in x then p=length(x) +If x is a matrix or n-dimesnional array, the function operates along the first non-singleton dimension of x +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +x = [4 0 1 5; +1 1 2 5; +2 0 3 5; +3 1 1 5]; +p = seqperiod(x) +p = + +4. 2. 3. 1. +A=zeros(4,1,4); +A(:,1,:)=x; +p1=seqperiod(A); +p1 = + +(:,:,1) + +4. +(:,:,2) + +2. +(:,:,3) + +3. +(:,:,4) + +1. + ]]></programlisting> +</refsection> + +<refsection> + <title>Authors</title> + <simplelist type="vert"> + <member>Ankur Mallick</member> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/sgolay.xml b/help/en_US/sgolay.xml new file mode 100644 index 0000000..676b931 --- /dev/null +++ b/help/en_US/sgolay.xml @@ -0,0 +1,66 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from sgolay.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="sgolay" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>sgolay</refname> + <refpurpose>This function computes the filter coefficients for all Savitzsky-Golay smoothing filters.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + F = sgolay (p, n) + F = sgolay (p, n, m) + F = sgolay (p, n, m, ts) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>p:</term> + <listitem><para> polynomial</para></listitem></varlistentry> + <varlistentry><term>n:</term> + <listitem><para> odd integer value, larger than polynomial p</para></listitem></varlistentry> + <varlistentry><term>m:</term> + <listitem><para> positive integer less than 2^31 or logical</para></listitem></varlistentry> + <varlistentry><term>ts:</term> + <listitem><para> real or complex value</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function computes the filter coefficients for all Savitzsky-Golay smoothing filters of order p for length n (odd). +m can be used in order to get directly the mth derivative; ts is a scaling factor. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +y = sgolay(1,3,0) +y = +0.83333 0.33333 -0.16667 +0.33333 0.33333 0.33333 +-0.16667 0.33333 0.83333 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/sgolayfilt.xml b/help/en_US/sgolayfilt.xml new file mode 100644 index 0000000..23ca7d5 --- /dev/null +++ b/help/en_US/sgolayfilt.xml @@ -0,0 +1,75 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from sgolayfilt.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="sgolayfilt" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>sgolayfilt</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y = sgolayfilt (x) + y = sgolayfilt (x, p) + y = sgolayfilt (x, p, n) + y = sgolayfilt (x, p, n, m) + y = sgolayfilt (x, p, n, m, ts) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> vector or matrix of real or complex numbers</para></listitem></varlistentry> + <varlistentry><term>p:</term> + <listitem><para> polynomial order, real number less than n, default value 3</para></listitem></varlistentry> + <varlistentry><term>n:</term> + <listitem><para> integer, odd number greater than p</para></listitem></varlistentry> + <varlistentry><term>m:</term> + <listitem><para> vector of real positive valued numbers, length n</para></listitem></varlistentry> + <varlistentry><term>ts:</term> + <listitem><para> real number, default value 1</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This function applies a Savitzky-Golay FIR smoothing filter to the data given in the vector x; if x is a matrix, this function operates +on each column. +The polynomial order p should be real, less than the size of the frame given by n. +m is a weighting vector with default value identity matrix. +ts is the dimenstion along which the filter operates. If not specified, the function operates along the first non singleton dimension. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +sgolayfilt([1;2;i;4;7], 0.3, 3, 0, 0) +ans = +1.0000 + 0.3333i +1.0000 + 0.3333i +2.0000 + 0.3333i +3.6667 + 0.3333i +3.6667 + 0.3333i +This function is being called from Octave + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/shanwavf.xml b/help/en_US/shanwavf.xml new file mode 100644 index 0000000..3a633c3 --- /dev/null +++ b/help/en_US/shanwavf.xml @@ -0,0 +1,67 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from shanwavf.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="shanwavf" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>shanwavf</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [psi,x]=shanwavf(lb,ub,n,fb,fc) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>lb:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + <varlistentry><term>ub:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + <varlistentry><term>n:</term> + <listitem><para> Real valued integer strictly positive</para></listitem></varlistentry> + <varlistentry><term>fb:</term> + <listitem><para> Real or complex valued vector or matrix, strictly positive value for scalar input</para></listitem></varlistentry> + <varlistentry><term>fc:</term> + <listitem><para> Real or complex valued vector or matrix, strictly positive value for scalar input</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function +This function implements the complex Shannon wavelet function and returns the value obtained. The complex Shannon wavelet is defined by a bandwidth parameter FB, a wavelet center frequency FC on an N point regular grid in the interval [LB,UB]. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1. [a,b]=shanwavf (2,8,3,1,6) +a = [-3.8982e-17 + 1.1457e-31i 3.8982e-17 - 8.4040e-31i -3.8982e-17 + 4.5829e-31i] +b = [2 5 8] +2. [a,b]=shanwavf(1,2,1,[2,2;i,2],[-1,2;-i,i]) +a = [-5.5128e-17 - 2.7005e-32i -5.5128e-17 + 5.4010e-32i; +8.6404e+06 + 8.6404e+06i -1.9225e-22 - 0.0000e+00i] +b = 2 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/shiftdata.xml b/help/en_US/shiftdata.xml new file mode 100644 index 0000000..84bdb79 --- /dev/null +++ b/help/en_US/shiftdata.xml @@ -0,0 +1,99 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from shiftdata.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="shiftdata" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>shiftdata</refname> + <refpurpose>Shifts data by rearranging dimensions</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +[y,perm,nshifts]=shiftdata(x,dim) +Shifts the entries along dimension dim in x to the first column and returns the permutation vector in perm +[y,perm,nshifts]=shiftdata(x) +Shifts the entries along dimension dim in x to the first column and returns the number of shifts in nshifts +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +//When dim is specified: +x=testmatrix('magi',3) +x = + +8. 1. 6. +3. 5. 7. +4. 9. 2. +[y,perm,nshifts] = shiftdata(x,2) +nshifts = + +[] +perm = + +2. 1. +y = + +8. 3. 4. +1. 5. 9. +6. 7. 2. +//When dim is not specified: +x=1:5 +x = + +1. 2. 3. 4. 5. +[y,perm,nshifts] = shiftdata(x) +nshifts = + +1. +perm = + +[] +y = + +1. +2. +3. +4. +5. + ]]></programlisting> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + <member><link linkend="permute">permute</link></member> + <member><link linkend="unshiftdata">unshiftdata</link></member> + <member><link linkend="Author">Author</link></member> + <member><link linkend="Ankur">Mallick</link></member> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/slewrate.xml b/help/en_US/slewrate.xml new file mode 100644 index 0000000..97afbfb --- /dev/null +++ b/help/en_US/slewrate.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from slewrate.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="slewrate" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>slewrate</refname> + <refpurpose></refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/sos2cell.xml b/help/en_US/sos2cell.xml new file mode 100644 index 0000000..6e5da15 --- /dev/null +++ b/help/en_US/sos2cell.xml @@ -0,0 +1,87 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from sos2cell.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="sos2cell" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>sos2cell</refname> + <refpurpose>Converts a second order section matrix to a cell array</refpurpose> + </refnamediv> + + +<refsection> + <title>Parameters</title> + <variablelist> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +c=sos2cell(s) converts an L-by-6 second-order-section matrix s given by: +s = [B1 A1 +B2 A2 +... +BL AL] +to a cell array c = { {B1},{A1}, {B2},{A2}, ... {BL},{AL}} where each +numerator vector Bi and denominator vector Ai contains the coefficients of a +linear or quadratic polynomial. If the polynomial is linear, the coefficients +zero-padded on the right +c=sos2cell(s,g) adds a leading gain term to the start of the cell array as: +c={ {[g,1]},{B1},{A1}, {B2},{A2}, ... {BL},{AL}} +Example +s=rand(2,6) +s = + </para> + <para> + </para> + <para> +column 1 to 5 + </para> + <para> +0.0437334 0.2639556 0.2806498 0.7783129 0.1121355 +0.4818509 0.4148104 0.1280058 0.2119030 0.6856896 + </para> + <para> +column 6 + </para> + <para> +0.1531217 +0.6970851 + </para> + <para> +sos2cell(s,2) +ans = + </para> + <para> + </para> + <para> + </para> + <para> +column 1 to 3 + </para> + <para> +![2,1] [0.0437334,0.2639556,0.2806498] [0.7783129,0.1121355,0.1531217] ! + </para> + <para> +column 4 to 5 + </para> + <para> +![0.4818509,0.4148104,0.1280058] [0.2119030,0.6856896,0.6970851] ! +Author +Ankur Mallick +</para> +</refsection> +</refentry> diff --git a/help/en_US/sos2ss.xml b/help/en_US/sos2ss.xml new file mode 100644 index 0000000..99a5812 --- /dev/null +++ b/help/en_US/sos2ss.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from sos2ss.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="sos2ss" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>sos2ss</refname> + <refpurpose>[nargout,nargin]=argn();</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/sos2tf.xml b/help/en_US/sos2tf.xml new file mode 100644 index 0000000..4d4e48e --- /dev/null +++ b/help/en_US/sos2tf.xml @@ -0,0 +1,63 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from sos2tf.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="sos2tf" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>sos2tf</refname> + <refpurpose>This function converts series second-order sections to direct H(z) = B(z)/A(z) form.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [B] = sos2tf(sos) + [B] = sos2tf(sos, g) + [B,A] = sos2tf(...) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>sos:</term> + <listitem><para> matrix of real or complex numbers</para></listitem></varlistentry> + <varlistentry><term>g:</term> + <listitem><para> real or complex value, default value is 1</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function converts series second-order sections to direct H(z) = B(z)/A(z) form. +The input is the sos matrix and the second parameter is the overall gain, default value of which is 1. +The output is a vector. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +[a,b]=sos2tf([1,2,3,4,5,6]) +a = +1 2 3 +b = +4 5 6 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/sos2zp.xml b/help/en_US/sos2zp.xml new file mode 100644 index 0000000..efabf07 --- /dev/null +++ b/help/en_US/sos2zp.xml @@ -0,0 +1,71 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from sos2zp.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="sos2zp" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>sos2zp</refname> + <refpurpose>This function converts series second-order sections to zeros, poles, and gains (pole residues).</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + z = sos2zp (sos) + z = sos2zp (sos, g) + [z, p] = sos2zp (...) + [z, p, k] = sos2zp (...) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>sos:</term> + <listitem><para> matrix of real or complex numbers</para></listitem></varlistentry> + <varlistentry><term>g:</term> + <listitem><para> real or complex value, default value is 1</para></listitem></varlistentry> + <varlistentry><term>z:</term> + <listitem><para> column vector</para></listitem></varlistentry> + <varlistentry><term>p:</term> + <listitem><para> column vector</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function converts series second-order sections to zeros, poles, and gains (pole residues). +The input is the sos matrix and the second parameter is the overall gain, default value of which is 1. +The outputs are z, p, k. z and p are column vectors containing zeros and poles respectively, and k is the overall gain. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +[a,b,c]=sos2zp([1,2,3,4,5,6]) +a = +-1.0000 + 1.4142i +-1.0000 - 1.4142i +b = +-0.6250 + 1.0533i +-0.6250 - 1.0533i +c = 1 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/sosbreak.xml b/help/en_US/sosbreak.xml new file mode 100644 index 0000000..3957d94 --- /dev/null +++ b/help/en_US/sosbreak.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from sosbreak.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="sosbreak" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>sosbreak</refname> + <refpurpose>function for breaking a polynomial in second order polynomials (and an extra linear)</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/sosfilt.xml b/help/en_US/sosfilt.xml new file mode 100644 index 0000000..25ce8aa --- /dev/null +++ b/help/en_US/sosfilt.xml @@ -0,0 +1,58 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from sosfilt.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="sosfilt" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>sosfilt</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [y]=sosfilt(sos,x) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>sos:</term> + <listitem><para> Real or complex valued Lx6 vector or matrix</para></listitem></varlistentry> + <varlistentry><term>x:</term> + <listitem><para> Real or complex valued vector or matrix</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function +Second order section digital filter sos is applied to the input vector and the output vector obtained is of the same length. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1. sosfilt([1 2 3 4 5 6],[-1 10i;1 2]) +ans =[ -0.25000 0.00000; 0.06250 0.50000] +2. sosfilt([32 28 84 47 2 29],-1) +ans = -0.68085 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/specgram.xml b/help/en_US/specgram.xml new file mode 100644 index 0000000..a0215bb --- /dev/null +++ b/help/en_US/specgram.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from specgram.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="specgram" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>specgram</refname> + <refpurpose></refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/ss2sos.xml b/help/en_US/ss2sos.xml new file mode 100644 index 0000000..b0cda76 --- /dev/null +++ b/help/en_US/ss2sos.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from ss2sos.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="ss2sos" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>ss2sos</refname> + <refpurpose>not taking if, order and scale as input since they do not seem useful</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/statelevels.xml b/help/en_US/statelevels.xml new file mode 100644 index 0000000..70d7cfb --- /dev/null +++ b/help/en_US/statelevels.xml @@ -0,0 +1,79 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from statelevels.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="statelevels" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>statelevels</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + levels=statelevels(x, nbins, method, bounds) + [levels histogram]=statelevels(x, nbins, method, bounds) + [levels histogram bins]=statelevels(x, nbins, method, bounds) + [levels histogram bins]=statelevels(x, nbins, method, bounds, 'fig', On or Off) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> real vector</para></listitem></varlistentry> + <varlistentry><term>nbins:</term> + <listitem><para> number of histogram bins to use in the histogram as a positive scalar, where the default value is 100</para></listitem></varlistentry> + <varlistentry><term>method:</term> + <listitem><para> method to estimate the statelevels using specified METHOD as one of 'mean' or 'mode', where the default value is 'mode'</para></listitem></varlistentry> + <varlistentry><term>bounds:</term> + <listitem><para> specify the lower and upper bound for the histogram as a two-element row vector</para></listitem></varlistentry> + <varlistentry><term>fig:</term> + <listitem><para> specify the logical input value to display figure as one of 'on' or 'off', where the default input in 'off'.</para></listitem></varlistentry> + <varlistentry><term>levels:</term> + <listitem><para> return lower and upper level values</para></listitem></varlistentry> + <varlistentry><term>histogram:</term> + <listitem><para> return histogram values</para></listitem></varlistentry> + <varlistentry><term>bins:</term> + <listitem><para> return binlevels values</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +x=[1.2, 5, 10, -20, 12] +nbins=10 +method='mode' +bounds=[1 10] +levels=statelevels(x, nbins, method, bounds) + ]]></programlisting> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + </simplelist> +</refsection> + +<refsection> + <title>Authors</title> + <simplelist type="vert"> + <member>Jitendra Singh</member> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/stmcb.xml b/help/en_US/stmcb.xml new file mode 100644 index 0000000..2490a4b --- /dev/null +++ b/help/en_US/stmcb.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from stmcb.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="stmcb" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>stmcb</refname> + <refpurpose>function [b,a] = stmcb( x, u_in, q, p, niter, a_in )</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/strips.xml b/help/en_US/strips.xml new file mode 100644 index 0000000..f31e366 --- /dev/null +++ b/help/en_US/strips.xml @@ -0,0 +1,59 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from strips.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="strips" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>strips</refname> + <refpurpose>Plots vector or matrix in strips</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + strips(x); + strips(x,sd); + strips(x,sd,fs); + strips(x,sd,fs,scale); + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +strips(x) +Plots a vector x in horizontal strips of length 250 +If x is a matrix, it plots each column of x on a separate strip with the leftmost +column as the topmost strip +strips(x,sd) +Plots x in strips of length sd samples each +strips(x,sd,fs) +Plots x in strips of duration sd seconds with sampling frequency fs (in Hz) +strips(x,sd,fs,scale) +Plots x in strips as above, and scales the vertical axis by scale +If x is a matrix, strips uses a column vector of all the elements of x for the strip plot +If x has complex entries, only the real part of those entries are considered +Author +Ankur Mallick +</para> +</refsection> +</refentry> diff --git a/help/en_US/subspaceMethodsInputParser.xml b/help/en_US/subspaceMethodsInputParser.xml new file mode 100644 index 0000000..908ead3 --- /dev/null +++ b/help/en_US/subspaceMethodsInputParser.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from subspaceMethodsInputParser.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="subspaceMethodsInputParser" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>subspaceMethodsInputParser</refname> + <refpurpose>Input parser to be used by pmusic and peig</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/tf2sos.xml b/help/en_US/tf2sos.xml new file mode 100644 index 0000000..0c63687 --- /dev/null +++ b/help/en_US/tf2sos.xml @@ -0,0 +1,63 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from tf2sos.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="tf2sos" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>tf2sos</refname> + <refpurpose>This function converts direct-form filter coefficients to series second-order sections.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [sos] = tf2sos (b, a) + [sos, g] = tf2sos (b, a) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>b:</term> + <listitem><para> matrix of real numbers</para></listitem></varlistentry> + <varlistentry><term>a:</term> + <listitem><para> matrix of real numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function converts direct-form filter coefficients to series second-order sections. +The input parameters b and a are vectors specifying the digital filter H(z) = B(z)/A(z). +The output is the sos matrix and the overall gain. +If there is only one output argument, the overall filter gain is applied to the first second-order section in the sos matrix. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +tf2sos([1,2,3,4,5,6],2) +ans = +0.50000 0.80579 1.07239 1.00000 0.00000 0.00000 +1.00000 -1.10337 1.87524 1.00000 0.00000 0.00000 +1.00000 1.49180 -0.00000 1.00000 0.00000 0.00000 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/tf2zp.xml b/help/en_US/tf2zp.xml new file mode 100644 index 0000000..176e203 --- /dev/null +++ b/help/en_US/tf2zp.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from tf2zp.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="tf2zp" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>tf2zp</refname> + <refpurpose>[z,p,k]= tf2zp(b,a);</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/tf2zpk.xml b/help/en_US/tf2zpk.xml new file mode 100644 index 0000000..3abb26c --- /dev/null +++ b/help/en_US/tf2zpk.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from tf2zpk.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="tf2zpk" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>tf2zpk</refname> + <refpurpose>form</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/transpose.xml b/help/en_US/transpose.xml new file mode 100644 index 0000000..a8d7108 --- /dev/null +++ b/help/en_US/transpose.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from transpose.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="transpose" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>transpose</refname> + <refpurpose>funcprot(0);</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/trial_iirlp2mb.xml b/help/en_US/trial_iirlp2mb.xml new file mode 100644 index 0000000..b7364ca --- /dev/null +++ b/help/en_US/trial_iirlp2mb.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from trial_iirlp2mb.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="trial_iirlp2mb" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>trial_iirlp2mb</refname> + <refpurpose>B = varargin(1)</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/triang.xml b/help/en_US/triang.xml new file mode 100644 index 0000000..f351107 --- /dev/null +++ b/help/en_US/triang.xml @@ -0,0 +1,61 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from triang.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="triang" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>triang</refname> + <refpurpose>This function returns the filter coefficients of a triangular window.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y = triang (m) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>m:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>y:</term> + <listitem><para> output variable, vector of real numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function returns the filter coefficients of a triangular window of length m supplied as input, to the output vector y. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +triang(5) +ans = +0.3333333 +0.6666667 +1. +0.6666667 +0.3333333 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/tripuls.xml b/help/en_US/tripuls.xml new file mode 100644 index 0000000..99282a0 --- /dev/null +++ b/help/en_US/tripuls.xml @@ -0,0 +1,63 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from tripuls.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="tripuls" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>tripuls</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [y] = tripuls(t) + [y] = tripuls(t,w) + [y] = tripuls(t,w,skew) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>t:</term> + <listitem><para> vector of real or complex numbers</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> real or complex number</para></listitem></varlistentry> + <varlistentry><term>skew:</term> + <listitem><para> real number, -1 <= s <= 1</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This function generates a triangular pulse which is sampled at times t over the interval [-w/2,w/2]. The value of skew lies between -1 +and 1. +The value of skew represents the relative placement of the peak in the given width. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +tripuls([0, .5, .6, 1], 0.9) +ans = +1 0 0 0 +This function is being called from Octave + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/truth.xml b/help/en_US/truth.xml new file mode 100644 index 0000000..d6ede61 --- /dev/null +++ b/help/en_US/truth.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from truth.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="truth" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>truth</refname> + <refpurpose>y = %t</refpurpose> + </refnamediv> + +</refentry> diff --git a/help/en_US/tukeywin.xml b/help/en_US/tukeywin.xml new file mode 100644 index 0000000..c4983d3 --- /dev/null +++ b/help/en_US/tukeywin.xml @@ -0,0 +1,63 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from tukeywin.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="tukeywin" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>tukeywin</refname> + <refpurpose>This function returns the filter coefficients of a Tukey window.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + w = tukeywin (m) + w = tukeywin (m, r) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>m:</term> + <listitem><para> positive integer</para></listitem></varlistentry> + <varlistentry><term>r:</term> + <listitem><para> positive real number, between 0 and 1</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function returns the filter coefficients of a Tukey window of length m supplied as input, to the output vector w. +The second parameter r defines the ratio between the constant and cosine section and its value has to be between 0 and 1, with default value 0.5. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +tukeywin(5, 2) +ans = +0. +0.5 +1. +0.5 +0. + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/udecode.xml b/help/en_US/udecode.xml new file mode 100644 index 0000000..2a0e567 --- /dev/null +++ b/help/en_US/udecode.xml @@ -0,0 +1,66 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from udecode.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="udecode" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>udecode</refname> + <refpurpose>Decodes the input uniformly quantized values</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y=uencode(u,n,v,'saturatemode') + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +Uniformly decodes the input vector or n-dimensional array of integers u with peak values +/- v +If u has only positive values, the range of integers is assumed to be [0,2^n-1] +If u has positive and negative values the range of integers is assumed to be [-2^(n-1),2^(n-1)-1] +If v is not specified, its default value is 1 +If saturatemode='wrap' the output is wrapped using modulo arithmetic if overflow occurs +If saturatemode='saturate' the output is saturated if overflow accors +Example +u = int8([-1 1 2 -5]); +ysat = udecode(u,3) +ysat = + </para> + <para> +- 0.25 0.25 0.5 - 1. +Author +Ankur Mallick +[1] International Telecommunication Union. General Aspects of Digital Transmission Systems: Vocabulary of Digital Transmission and Multiplexing, and Pulse Code Modulation (PCM) Terms. ITU-T Recommendation G.701. March, 1993. +</para> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + <member><link linkend="uencode">uencode</link></member> + <member><link linkend="floor">floor</link></member> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/uencode.xml b/help/en_US/uencode.xml new file mode 100644 index 0000000..b5cede1 --- /dev/null +++ b/help/en_US/uencode.xml @@ -0,0 +1,67 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from uencode.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="uencode" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>uencode</refname> + <refpurpose>Performs uniform quantization of the input into 2^n levels</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y=uencode(u,n,v,'signflag') + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +Uniformly quantizes the input vector or n-dimensional array u into 2^n levels in the interval [-v,v] +If v is not specified, its default value is 1 +'signflag' is a string that determines the nature of the quantization +If signflag='unsigned' then y contains unsigned integers in the range [0,2^n-1] corresponding to the 2^n levels +If signflag='unsigned' then y contains signed integers in the range [-2^(n-1),2^(n-1)-1] corresponding to the 2^n levels +The size of the integers in y in bits(8,16, or 32) depends on the value of n +If the input lies beyond +/- v it is saturated +Example +y=uencode(-1:0.5:1,3) +y = + </para> + <para> +0 2 4 6 7 +Author +Ankur Mallick +References +[1] International Telecommunication Union. General Aspects of Digital Transmission Systems: Vocabulary of Digital Transmission and Multiplexing, and Pulse Code Modulation (PCM) Terms. ITU-T Recommendation G.701. March, 1993. +</para> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + <member><link linkend="udecode">udecode</link></member> + <member><link linkend="floor">floor</link></member> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/ultrwin.xml b/help/en_US/ultrwin.xml new file mode 100644 index 0000000..16c6400 --- /dev/null +++ b/help/en_US/ultrwin.xml @@ -0,0 +1,71 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from ultrwin.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="ultrwin" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>ultrwin</refname> + <refpurpose>This function returns the coefficients of an Ultraspherical window.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + w = ultrwin (m, mu, par) + w = ultrwin (m, mu, par, key) + w = ultrwin (m, mu, par, key, norm) + [w, xmu] = ultrwin (...) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>m:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>mu:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>par:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>key:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>norm:</term> + <listitem><para> </para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function returns the coefficients of an Ultraspherical window of length m supplied as input, to the output vector w. +The second parameter controls the ratio between side lobe to side lobe of the window's Fourier transform. +The third parameter controls the ratio between main lobe width to side lobe. The default value is beta. +The value of xmu is also returned for given beta, att or latt. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +ultrwin(3,-0.4,0.5) +ans = +- 1. +1. +- 1. + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/unshiftdata.xml b/help/en_US/unshiftdata.xml new file mode 100644 index 0000000..57e0408 --- /dev/null +++ b/help/en_US/unshiftdata.xml @@ -0,0 +1,102 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from unshiftdata.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="unshiftdata" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>unshiftdata</refname> + <refpurpose>Inverts the effect of shiftdata</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +y=unshiftdata(x,perm,nshifts) +Applies the permutation perm or number of shifts nshifts on x to invert shiftdata +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +x=testmatrix('magi',3) +x = + +8. 1. 6. +3. 5. 7. +4. 9. 2. +[y,perm,nshifts] = shiftdata(x,2) //Shifts dimension 2 +nshifts = + +[] +perm = + +2. 1. +y = + +8. 3. 4. +1. 5. 9. +6. 7. 2. +z=unshiftdata(y,perm,nshifts) +z = + +8. 1. 6. +3. 5. 7. +4. 9. 2. + +x=1:5 +x = + +1. 2. 3. 4. 5. +[y,perm,nshifts] = shiftdata(x) //Shifts first non-singleton dimension +nshifts = + +1. +perm = + +[] +y = + +1. +2. +3. +4. +5. +//z=unshiftdata(y,perm,nshifts) +z = + +1. 2. 3. 4. 5. + ]]></programlisting> +</refsection> + +<refsection> + <title>See also</title> + <simplelist type="inline"> + </simplelist> +</refsection> +</refentry> diff --git a/help/en_US/upfirdn.xml b/help/en_US/upfirdn.xml new file mode 100644 index 0000000..6688531 --- /dev/null +++ b/help/en_US/upfirdn.xml @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from upfirdn.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="upfirdn" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>upfirdn</refname> + <refpurpose>This function upsamples the input data, applies the FIR filter and then downsamples it.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y = upfirdn (x, h, p, q) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>h:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>p:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>q:</term> + <listitem><para> </para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function upsamples the input data in the matrix by a factor of n. Then the upsampled data is FIR filtered. After this, the resultant is downsampled. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +upfirdn([1,2,3],2,3,5) +ans = + +2. 0. + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/upsample.xml b/help/en_US/upsample.xml new file mode 100644 index 0000000..3d73473 --- /dev/null +++ b/help/en_US/upsample.xml @@ -0,0 +1,61 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from upsample.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="upsample" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>upsample</refname> + <refpurpose>This function upsamples the signal, inserting n-1 zeros between every element.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y = upsample (x, n) + y = upsample (x, n, phase) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> scalar, vector or matrix of real or complex numbers</para></listitem></varlistentry> + <varlistentry><term>n:</term> + <listitem><para> real number or vector</para></listitem></varlistentry> + <varlistentry><term>phase:</term> + <listitem><para> integer value, 0 <= phase <= (n - 1 ), default value 0, or logical</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function upsamples the signal, inserting n-1 zeros between every element. If x is a matrix, every column is upsampled. +The phase determines the position of the inserted sample in the block of zeros. The default value is 0. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +upsample(4,5,2) +ans = +0. 0. 4. 0. 0. + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/upsamplefill.xml b/help/en_US/upsamplefill.xml new file mode 100644 index 0000000..8a6e352 --- /dev/null +++ b/help/en_US/upsamplefill.xml @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from upsamplefill.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="upsamplefill" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>upsamplefill</refname> + <refpurpose>This function upsamples a vector interleaving given values or copies of the vector elements.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y = upsamplefill (x, w) + y = upsamplefill (x, w, cpy) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> scalar, vector or matrix of real or complex numbers</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> scalar or vector of real or complex values</para></listitem></varlistentry> + <varlistentry><term>cpy:</term> + <listitem><para> can take in "true" or "false", default is false</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function upsamples a vector interleaving given values or copies of the vector elements. +The second argument has the values in the vector w that are placed in between the elements of x. +The third argument, if true, means that w should be scalar and that each value in x repeated w times. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +upsamplefill([0.4,0.5],7) +ans = +0.4 7. 0.5 7. + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/var.xml b/help/en_US/var.xml new file mode 100644 index 0000000..53bc9bc --- /dev/null +++ b/help/en_US/var.xml @@ -0,0 +1,46 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from var.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="var" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>var</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y=var(x) + y=var(x,w) + y=var(x,w,dim) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> a vector or matrix.</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> weight vector W of length X, or may take the value of 0 and 1. The default value is 0. Consider only non-negative values.</para></listitem></varlistentry> + <varlistentry><term>dim:</term> + <listitem><para> consider the variance along the dimension of X. 1 for clumun wise variamce and 2 for row wise variance.</para></listitem></varlistentry> + <varlistentry><term>y:</term> + <listitem><para> returns the variance of the values in X.</para></listitem></varlistentry> + </variablelist> +</refsection> +</refentry> diff --git a/help/en_US/vco.xml b/help/en_US/vco.xml new file mode 100644 index 0000000..44310c1 --- /dev/null +++ b/help/en_US/vco.xml @@ -0,0 +1,65 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from vco.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="vco" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>vco</refname> + <refpurpose>Voltage Controlled Oscillator</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + y=vco(x,fc,fs) + y=vco(x,[fmin fmax],fs) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +y=vco(x,fc,fs) +Creates a frequency modulated cosine wave y whose frequency varies as the magnitude of x +x lies in [-1,1]. x=-1 corresponds to a frequency of 0, x=0 corresponds to a frequency of fc +and x=1 corresponds to a frequency of 2fc. +y=vco(x,[fmin fmax],fs) +Scales the frequency range so that x=-1 corresponds to a frequency of fmin and +x=1 corresponds to a frequency of fmax +If x is a matrix the same operation is performed on the columns on x +Size of y is the same as the size of x +Example +x=rand() +x = + </para> + <para> +0.2113249 +y=vco(x,2000,8000) +y = + </para> + <para> +0.9454092 +Author +Ankur Mallick +</para> +</refsection> +</refentry> diff --git a/help/en_US/welchwin.xml b/help/en_US/welchwin.xml new file mode 100644 index 0000000..aad08db --- /dev/null +++ b/help/en_US/welchwin.xml @@ -0,0 +1,65 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from welchwin.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="welchwin" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>welchwin</refname> + <refpurpose>This function returns the filter coefficients of a Welch window.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + w = welchwin (m) + w = welchwin (m, opt) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>m:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>opt:</term> + <listitem><para> string value, takes "periodic" or "symmetric"</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> output variable, vector of real numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function returns the filter coefficients of a Welch window of length m supplied as input, to the output vector w. +The second parameter can take the values "periodic" or "symmetric", depending on which the corresponding form of window is returned. The default is symmetric. +For symmetric, the length should be an integer>2. For periodic, the length should be an integer>1. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +welchwin(4,"symmetric") +ans = +0. +0.8888889 +0.8888889 +0. + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/window.xml b/help/en_US/window.xml new file mode 100644 index 0000000..19d4312 --- /dev/null +++ b/help/en_US/window.xml @@ -0,0 +1,67 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from window.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="window" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>window</refname> + <refpurpose>This function creates an m-point window from the function f given as input.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + w = window(f, m) + w = window(f, m, opts) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>f:</term> + <listitem><para> string value</para></listitem></varlistentry> + <varlistentry><term>m:</term> + <listitem><para> positive integer value</para></listitem></varlistentry> + <varlistentry><term>opts:</term> + <listitem><para> string value, takes in "periodic" or "symmetric"</para></listitem></varlistentry> + <varlistentry><term>w:</term> + <listitem><para> output variable, vector of real numbers</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function creates an m-point window from the function f given as input, in the output vector w. +f can take any valid function as a string, for example "blackmanharris". +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +window("hanning",5) +ans = +0. +0.5 +1. +0.5 +0. + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/wkeep.xml b/help/en_US/wkeep.xml new file mode 100644 index 0000000..3bac5e2 --- /dev/null +++ b/help/en_US/wkeep.xml @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from wkeep.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="wkeep" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>wkeep</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [y]=wkeep(x,l) + [y]=wkeep(x,l,opt) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> Real, complex or string type input vector or matrix</para></listitem></varlistentry> + <varlistentry><term>l:</term> + <listitem><para> Length of matrix required</para></listitem></varlistentry> + <varlistentry><term>opt:</term> + <listitem><para> Character input to determine which side to extract from</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function +[y]=wkeep(x,l) extracts a vector of length l from the centre of input vector x. +[y]=wkeep(x,l,opt) extracts vector based on opt which could be 'l','r' or 'c' (left, right or central). +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1. [y]=wkeep([1 2 3;4 5 6],[2 2]) +y= 1 2 +2. [y]=wkeep([1 2 3 4 5 6],3,'r') +y= 4 5 6 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/wrev.xml b/help/en_US/wrev.xml new file mode 100644 index 0000000..2068027 --- /dev/null +++ b/help/en_US/wrev.xml @@ -0,0 +1,56 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from wrev.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="wrev" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>wrev</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [y]=wrev(x) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>x:</term> + <listitem><para> Input vector of string, real or complex values</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function reverses the order of elements of the input vector x. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +1. wrev([1 2 3]) +ans= 3 2 1 +2. wrev(['a','b','c']) +ans= cba + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/xcorr2.xml b/help/en_US/xcorr2.xml new file mode 100644 index 0000000..3768635 --- /dev/null +++ b/help/en_US/xcorr2.xml @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from xcorr2.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="xcorr2" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>xcorr2</refname> + <refpurpose></refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + c = xcorr2 (a) + c = xcorr2 (a, b) + c = xcorr2 (a, b, biasflag) + </synopsis> +</refsynopsisdiv> +</refentry> diff --git a/help/en_US/zerocrossing.xml b/help/en_US/zerocrossing.xml new file mode 100644 index 0000000..5109f99 --- /dev/null +++ b/help/en_US/zerocrossing.xml @@ -0,0 +1,56 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from zerocrossing.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="zerocrossing" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>zerocrossing</refname> + <refpurpose>This function estimates the points at which a given waveform crosses the x-axis.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + x = zerocrossing (w, y) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>w:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>y:</term> + <listitem><para> </para></listitem></varlistentry> + <varlistentry><term>x:</term> + <listitem><para> </para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function estimates the points at which a given waveform y = y(w) crosses the x-axis. It uses linear interpolation. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/zp2sos.xml b/help/en_US/zp2sos.xml new file mode 100644 index 0000000..1f57c0b --- /dev/null +++ b/help/en_US/zp2sos.xml @@ -0,0 +1,66 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from zp2sos.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="zp2sos" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>zp2sos</refname> + <refpurpose>This function converts filter poles and zeros to second-order sections.</refpurpose> + </refnamediv> + + +<refsynopsisdiv> + <title>Calling Sequence</title> + <synopsis> + [sos] = zp2sos(z) + [sos] = zp2sos(z, p) + [sos] = zp2sos(z, p, k) + [sos, g] = zp2sos(...) + </synopsis> +</refsynopsisdiv> + +<refsection> + <title>Parameters</title> + <variablelist> + <varlistentry><term>z:</term> + <listitem><para> column vector</para></listitem></varlistentry> + <varlistentry><term>p:</term> + <listitem><para> column vector</para></listitem></varlistentry> + <varlistentry><term>k:</term> + <listitem><para> real or complex value, default value is 1</para></listitem></varlistentry> + </variablelist> +</refsection> + +<refsection> + <title>Description</title> + <para> +This is an Octave function. +This function converts filter poles and zeros to second-order sections. +The first and second parameters are column vectors containing zeros and poles. The third parameter is the overall filter gain, the default value of which is 1. +The output is the sos matrix and the overall gain. +If there is only one output argument, the overall filter gain is applied to the first second-order section in the sos matrix. +</para> +</refsection> + +<refsection> + <title>Examples</title> + <programlisting role="example"><![CDATA[ +zp2sos([1, 2, 3], 2, 6) +ans = +6 -18 12 1 -2 0 +1 -3 0 1 0 0 + ]]></programlisting> +</refsection> +</refentry> diff --git a/help/en_US/zplane.xml b/help/en_US/zplane.xml new file mode 100644 index 0000000..64a7172 --- /dev/null +++ b/help/en_US/zplane.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + * + * This help file was generated from zplane.sci using help_from_sci(). + * + --> + +<refentry version="5.0-subset Scilab" xml:id="zplane" xml:lang="en" + xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:ns3="http://www.w3.org/1999/xhtml" + xmlns:mml="http://www.w3.org/1998/Math/MathML" + xmlns:scilab="http://www.scilab.org" + xmlns:db="http://docbook.org/ns/docbook"> + + <refnamediv> + <refname>zplane</refname> + <refpurpose>funcprot(0);</refpurpose> + </refnamediv> + +</refentry> diff --git a/jar/scilab_en_US_help.jar b/jar/scilab_en_US_help.jar Binary files differnew file mode 100644 index 0000000..4b15c19 --- /dev/null +++ b/jar/scilab_en_US_help.jar diff --git a/loader.sce b/loader.sce new file mode 100644 index 0000000..2d835fa --- /dev/null +++ b/loader.sce @@ -0,0 +1,10 @@ +// This file is released under the 3-clause BSD license. See COPYING-BSD. +// Generated by builder.sce: Please, do not edit this file + +try + getversion("scilab"); +catch + error("Scilab 5.0 or more is required."); +end; + +exec(get_absolute_file_path("loader.sce")+"etc/"+"FOSSEE_Signal_Processing_Toolbox.start"); diff --git a/macros/README.md b/macros/README.md new file mode 100644 index 0000000..35c430c --- /dev/null +++ b/macros/README.md @@ -0,0 +1,2 @@ +# callOctave +Wrapper classes for calling Octave functions diff --git a/macros/ac2poly.bin b/macros/ac2poly.bin Binary files differnew file mode 100644 index 0000000..5df28ee --- /dev/null +++ b/macros/ac2poly.bin diff --git a/macros/ac2poly.sci b/macros/ac2poly.sci new file mode 100644 index 0000000..ef7b233 --- /dev/null +++ b/macros/ac2poly.sci @@ -0,0 +1,30 @@ +function [a,varargout] = ac2poly(r) +// Convert autocorrelation sequence to polynomial of prediction filter +// +// Calling Sequence +// a = ac2poly(r) +// [a,e] = ac2poly(r) +// +// Parameters +// r: Autocorrelation sequence to be represented with an FIR linear prediction filter +// a: Output polynomial representing the linear prediction filter e/(a(1) + a(2)z + a(3)z^2 .. a(N)z^N-1) +// e: Output scaling for the lienar prediction filter +// +// Description +// Function ac2poly() finds the best fit polynomial for FIR linear prediction filter a, corresponding to the autocorrelation sequence r. a is the same length as r, and is normalized with the first element. So a(1) = 1. +// +// Author +// Parthe Pandit +// +// Bibliography +// Kay, Steven M. Modern Spectral Estimation. Englewood Cliffs, NJ: Prentice-Hall, 1988. + +//errcheck +if (type(r) > 1) then + error('Input autocorrelation sequence needs to be of type double'); +end + +[a,e] = levinson(r); +varargout = list(e); + +endfunction diff --git a/macros/ac2poly.sci~ b/macros/ac2poly.sci~ new file mode 100644 index 0000000..653ccce --- /dev/null +++ b/macros/ac2poly.sci~ @@ -0,0 +1,29 @@ +function [a,varargout] = ac2poly(r) +// Convert autocorrelation sequence to polynomial of prediction filter +// +// Calling Sequence +// a = ac2poly(r) +// [a,e] = ac2poly(r) +// +// Parameters +// r: Autocorrelation sequence to be represented with an FIR linear prediction filter +// a: Output polynomial representing the linear prediction filter e/(a(1) + a(2)z + a(3)z^2 .. a(N)z^N-1) +// e: Output scaling for the lienar prediction filter +// +// Description +// Function ac2poly() finds the best fit polynomial for FIR linear prediction filter a, corresponding to the autocorrelation sequence r. a is the same length as r, and is normalized with the first element. So a(1) = 1. +// Author: +// Parthe Pandit +// +// Bibliography +// Kay, Steven M. Modern Spectral Estimation. Englewood Cliffs, NJ: Prentice-Hall, 1988. + +//errcheck +if (type(r) > 1) then + error('Input autocorrelation sequence needs to be of type double'); +end + +[a,e] = levinson(r); +varargout = list(e); + +endfunction diff --git a/macros/ac2rc.bin b/macros/ac2rc.bin Binary files differnew file mode 100644 index 0000000..fbfb4f1 --- /dev/null +++ b/macros/ac2rc.bin diff --git a/macros/ac2rc.sci b/macros/ac2rc.sci new file mode 100644 index 0000000..46de215 --- /dev/null +++ b/macros/ac2rc.sci @@ -0,0 +1,51 @@ +function [k,R0] = ac2rc(R)
+// Convert autocorrelation sequence to reflection coefficients.
+//
+// Calling Sequence
+// k = ac2rc(R)
+// [k,R0] = ac2rc(R)
+//
+// Parameters
+// R: The input autocorrelation sequence. If r is a matrix, each column of r is treated as a separate signal.
+// k: Returns the reflection coefficients
+// R0: the zero lag autocorrelation, R0, based on the autocorrelation sequence, R.
+//
+// Examples
+// X = [7 6 5 8 3 6 8 7 5 2 4 7 4 3 2 5 4 9 5 3 5 7 3 9 4 1 2 0 5 4 8 6 4 6 5 3];
+// [k,R0] = ac2rc(X)
+// or t=[2 5 6; 8 6 5; 8 9 4]
+// [k,R0] = ac2rc(t)
+//
+// Author
+// Jitendra Singh
+//
+
+ // call function "levin" before running this function
+
+if or(type(R)==10) then
+ error ('Input arguments must be double.')
+end
+
+if isvector(R) then
+ R=R(:);
+
+ [x,y,z] = levin(R)
+k=z;
+R0=R;
+
+else
+ n=size(R);
+
+ for i=1:n(2)
+ r=R(:,i);
+
+ [x,y, z] = levin(r)
+
+ kk(:,i)= z;
+
+k=kk;
+R0=R(1,:);
+ end
+
+ end
+endfunction
diff --git a/macros/ac2rc.sci~ b/macros/ac2rc.sci~ new file mode 100644 index 0000000..bace840 --- /dev/null +++ b/macros/ac2rc.sci~ @@ -0,0 +1,47 @@ +function [k,R0] = ac2rc(R)
+// Convert autocorrelation sequence to reflection coefficients.
+// Calling Sequence
+// k = ac2rc(R)
+// [k,R0] = ac2rc(R)
+// Parameters
+// R: The input autocorrelation sequence. If r is a matrix, each column of r is treated as a separate signal.
+// k: Returns the reflection coefficients
+// R0: the zero lag autocorrelation, R0, based on the autocorrelation sequence, R.
+// Examples
+// X = [7 6 5 8 3 6 8 7 5 2 4 7 4 3 2 5 4 9 5 3 5 7 3 9 4 1 2 0 5 4 8 6 4 6 5 3];
+// [k,R0] = ac2rc(X)
+// or t=[2 5 6; 8 6 5; 8 9 4]
+// [k,R0] = ac2rc(t)
+// Author
+// Jitendra Singh
+//
+
+ // call function "levin" before running this function
+
+if or(type(R)==10) then
+ error ('Input arguments must be double.')
+end
+
+if isvector(R) then
+ R=R(:);
+
+ [x,y,z] = levin(R)
+k=z;
+R0=R;
+
+else
+ n=size(R);
+
+ for i=1:n(2)
+ r=R(:,i);
+
+ [x,y, z] = levin(r)
+
+ kk(:,i)= z;
+
+k=kk;
+R0=R(1,:);
+ end
+
+ end
+endfunction
diff --git a/macros/arParEst.bin b/macros/arParEst.bin Binary files differnew file mode 100644 index 0000000..354bcea --- /dev/null +++ b/macros/arParEst.bin diff --git a/macros/arParEst.sci b/macros/arParEst.sci new file mode 100644 index 0000000..971bc45 --- /dev/null +++ b/macros/arParEst.sci @@ -0,0 +1,83 @@ +function [model_est, var_est, msg_strg] = arParEst(data_in, order, method) + + checkNArgin(3, 3, argn(2)) + + model_est = []; + var_est = []; + + if isvector(data_in) then + data_in = data_in(:); + end + + select method + case 'covariance' then + x_min_len = 2*order; + case 'modified' then + x_min_len = (3*order)/2; + else + msg_strg = 'Error in function arParEst: Unknown estimation method' + return; + end + + if size(data_in, 1)< x_min_len then + if (strcmp(method, 'covariance') == 0) then + if isvector(data_in) then + msg_strg = 'length of input vector should be greater than 2 times of the input order of the model' + return + else + msg_strg = 'number of rows in input matrix should be greater than 2 times of the input order of the model' + return + end + + elseif (strcmp(method, 'modified') == 0) then + if isvector(data_in) then + msg_strg = 'length of input vector should be greater than 3/2 times of the input order of the model' + return + else + msg_strg = 'number of rows in input matrix should be greater than 3/2 times of the input order of the model' + return + end + end + end + + if issparse(data_in) then + msg_strg = 'Input data should not be sparse'; + return + end + + if isempty(order) | order ~= round(order) then + msg_strg = 'Model order should be an integer'; + return + end + + msg_strg = []; + model_est = zeros((order + 1), size(data_in, 2)); + var_est = zeros(1, size(data_in, 2)); + + for i = 1: size(data_in, 2) + data_corrmtx = corrmtx(data_in(:, i), order, method); + data_allcols = data_corrmtx(:, 2:size(data_corrmtx,2)); + data_sincol = data_corrmtx(:, 1); + + model_est(:, i) = [1; -data_allcols\data_sincol]; + + var_tmp = data_sincol'*data_allcols; + var_est(:, i) = data_sincol'*data_sincol + var_tmp*model_est(2:size(model_est, 1), i); + + var_est(:, i) = abs(real(var_est(:, i))); + end + + model_est = model_est.'; + + +endfunction +function checkNArgin(min_argin, max_argin, num_of_argin) + if num_of_argin < min_argin then + error('Not enough input arguments') + end + + if num_of_argin > max_argin then + error('Too many input arguments') + end + +endfunction diff --git a/macros/arburg.bin b/macros/arburg.bin Binary files differnew file mode 100644 index 0000000..3d5ebe9 --- /dev/null +++ b/macros/arburg.bin diff --git a/macros/arburg.sci b/macros/arburg.sci new file mode 100644 index 0000000..de4dcbb --- /dev/null +++ b/macros/arburg.sci @@ -0,0 +1,57 @@ +function varargout = arburg( x, poles, criterion ) +//This function calculates coefficients of an autoregressive (AR) model of complex data. +//Calling Sequence +//a = arburg(x, poles) +//a = arburg(x, poles, criterion) +//[a, v] = arburg(...) +//[a, v, k] = arburg(...) +//Parameters +//x: vector of real or complex numbers, of length > 2 +//poles: positive integer value < length(x) - 2 +//criterion: string value, takes in "AKICc", "KIC", "AICc", "AIC" and "FPE", default it not using a model-selection criterion +//a, v, k: Output variables +//Description +//This is an Octave function. +// +//This function calculates coefficients of an autoregressive (AR) model of complex data x using the whitening lattice-filter method of Burg. +// +//The first argument is the data sampled. The second argument is the number of poles in the model (or limit in case a criterion is supplied). +//The third parameter takes in the criterion to limit the number of poles. The acceptable values are "AIC", "AKICc", "KIC", "AICc" which are based on information theory. +//Output variable a is a list of P+1 autoregression coefficients. +//Output variable v is the mean square of residual noise from the whitening operation of the Burg lattice filter. +//Output variable k corresponds to the reflection coefficients defining the lattice-filter embodiment of the model. +//Examples +//arburg([1,2,3,4,5],2) +//ans = +// 1.00000 -1.86391 0.95710 + +funcprot(0); +rhs = argn(2) +lhs = argn(1) +if(lhs>3) +error("Wrong number of output arguments.") +elseif(rhs<2) +error("Wrong number of input arguments.") +end + + select(lhs) + case 1 then + if(rhs==2) + a = callOctave("arburg",x,poles) + elseif(rhs==3) + a = callOctave("arburg",x,poles,criterion) + end + case 2 then + if(rhs==2) + [a,v] = callOctave("arburg",x,poles) + elseif(rhs==3) + [a,v] = callOctave("arburg",x,poles,criterion) + end + case 3 then + if(rhs==2) + [a,v,k] = callOctave("arburg",x,poles) + elseif(rhs==3) + [a,v,k] = callOctave("arburg",x,poles,criterion) + end + end +endfunction diff --git a/macros/arburg.sci~ b/macros/arburg.sci~ new file mode 100644 index 0000000..1ca6e01 --- /dev/null +++ b/macros/arburg.sci~ @@ -0,0 +1,55 @@ +function varargout = arburg( x, poles, criterion ) +//This function calculates coefficients of an autoregressive (AR) model of complex data. +//Calling Sequence +//a = arburg(x, poles) +//a = arburg(x, poles, criterion) +//[a, v] = arburg(...) +//[a, v, k] = arburg(...) +//Parameters +//x: vector of real or complex numbers, of length > 2 +//poles: positive integer value < length(x) - 2 +//criterion: string value, takes in "AKICc", "KIC", "AICc", "AIC" and "FPE", default it not using a model-selection criterion +//a, v, k: Output variables +//Description +//This is an Octave function. +//This function calculates coefficients of an autoregressive (AR) model of complex data x using the whitening lattice-filter method of Burg. +//The first argument is the data sampled. The second argument is the number of poles in the model (or limit in case a criterion is supplied). +//The third parameter takes in the criterion to limit the number of poles. The acceptable values are "AIC", "AKICc", "KIC", "AICc" which are based on information theory. +//Output variable a is a list of P+1 autoregression coefficients. +//Output variable v is the mean square of residual noise from the whitening operation of the Burg lattice filter. +//Output variable k corresponds to the reflection coefficients defining the lattice-filter embodiment of the model. +//Examples +//arburg([1,2,3,4,5],2) +//ans = +// 1.00000 -1.86391 0.95710 + +funcprot(0); +rhs = argn(2) +lhs = argn(1) +if(lhs>3) +error("Wrong number of output arguments.") +elseif(rhs<2) +error("Wrong number of input arguments.") +end + + select(lhs) + case 1 then + if(rhs==2) + a = callOctave("arburg",x,poles) + elseif(rhs==3) + a = callOctave("arburg",x,poles,criterion) + end + case 2 then + if(rhs==2) + [a,v] = callOctave("arburg",x,poles) + elseif(rhs==3) + [a,v] = callOctave("arburg",x,poles,criterion) + end + case 3 then + if(rhs==2) + [a,v,k] = callOctave("arburg",x,poles) + elseif(rhs==3) + [a,v,k] = callOctave("arburg",x,poles,criterion) + end + end +endfunction diff --git a/macros/arcov.bin b/macros/arcov.bin Binary files differnew file mode 100644 index 0000000..f0ef408 --- /dev/null +++ b/macros/arcov.bin diff --git a/macros/arcov.sci b/macros/arcov.sci new file mode 100644 index 0000000..b6d11cc --- /dev/null +++ b/macros/arcov.sci @@ -0,0 +1,34 @@ +function [ar_coeff, var_est] = arcov(data_in, order) +//Autoregressive all-pole model parameters — covariance method +//Calling Sequence +//a = arcov(x,p) +//[a,e] = arcov(x,p) +//Parameters +// a: contains normalized estimates of the AR system parameters, A(z), in descending powers of z. +// e: variance estimate of the white noise input to the AR model +// x: is the input signal +// p: is the order of the auto regressive model + + checkNArgin(2,2, argn(2)); + if type(data_in)==10 then + error("Input should not be of type char"); + end + method = 'covariance'; + [ar_coeff, var_est, msg] = arParEst(data_in, order, method); + if ~isempty(msg) then + error(msg); + end + + +endfunction + +function checkNArgin(min_argin, max_argin, num_of_argin) + if num_of_argin < min_argin then + error('Not enough input arguments') + end + + if num_of_argin > max_argin then + error('Too many input arguments') + end + +endfunction diff --git a/macros/arcov.sci~ b/macros/arcov.sci~ new file mode 100644 index 0000000..179e34a --- /dev/null +++ b/macros/arcov.sci~ @@ -0,0 +1,33 @@ +function [ar_coeff, var_est] = arcov(data_in, order) +//arcov Autoregressive all-pole model parameters — covariance method +//Calling Syntax +//a = arcov(x,p) +//[a,e] = arcov(x,p) +//a, contains normalized estimates of the AR system parameters, A(z), in descending powers of z. +//e variance estimate of the white noise input to the AR model +// x is the input signal +// p is the order of the auto regressive model + + checkNArgin(2,2, argn(2)); + if type(data_in)==10 then + error("Input should not be of type char"); + end + method = 'covariance'; + [ar_coeff, var_est, msg] = arParEst(data_in, order, method); + if ~isempty(msg) then + error(msg); + end + + +endfunction + +function checkNArgin(min_argin, max_argin, num_of_argin) + if num_of_argin < min_argin then + error('Not enough input arguments') + end + + if num_of_argin > max_argin then + error('Too many input arguments') + end + +endfunction diff --git a/macros/armcov.bin b/macros/armcov.bin Binary files differnew file mode 100644 index 0000000..6465aab --- /dev/null +++ b/macros/armcov.bin diff --git a/macros/armcov.sci b/macros/armcov.sci new file mode 100644 index 0000000..0c5158c --- /dev/null +++ b/macros/armcov.sci @@ -0,0 +1,22 @@ +function [ar_coeff, var_est] = armcov(data_in, order) + + checkNArgin(2,2, argn(2)); + method = 'modified'; + [ar_coeff, var_est, msg] = arParEst(data_in, order, method); + if ~isempty(msg) then + error(msg); + end + + +endfunction + +function checkNArgin(min_argin, max_argin, num_of_argin) + if num_of_argin < min_argin then + error('Not enough input arguments') + end + + if num_of_argin > max_argin then + error('Too many input arguments') + end + +endfunction diff --git a/macros/aryule.bin b/macros/aryule.bin Binary files differnew file mode 100644 index 0000000..c902718 --- /dev/null +++ b/macros/aryule.bin diff --git a/macros/aryule.sci b/macros/aryule.sci new file mode 100644 index 0000000..e752ced --- /dev/null +++ b/macros/aryule.sci @@ -0,0 +1,39 @@ +function [a, v, k] = aryule (x, p) +//This function fits an AR (p)-model with Yule-Walker estimates. +//Calling Sequence +//a = aryule (x, p) +//[a, v] = aryule (x, p) +//[a, v, k] = aryule (x, p) +//Parameters +//x: vector of real or complex numbers, length > 2 +//p: positive integer value < length(x) - 1 +//a, v, k: Output variables +//Description +//This is an Octave function. +// +//This function fits an AR (p)-model with Yule-Walker estimates. +//The first argument is the data vector which is to be estimated. +//Output variable a gives the AR coefficients, v gives the variance of the white noise and k gives the reflection coefficients to be used in the lattice filter. +//Examples +//aryule([1,2,3,4,5],2) +//ans = +// 1. - 0.8140351 0.1192982 + +funcprot(0); +rhs = argn(2) +lhs = argn(1) + +if(rhs~=2) +error("Wrong number of input arguments.") +end + + select(lhs) + case 1 then + a = callOctave("aryule",x,p) + case 2 then + [a,v] = callOctave("aryule",x,p) + case 3 then + [a,v,k] = callOctave("aryule",x,p) + end + +endfunction diff --git a/macros/aryule.sci~ b/macros/aryule.sci~ new file mode 100644 index 0000000..c933340 --- /dev/null +++ b/macros/aryule.sci~ @@ -0,0 +1,38 @@ +function [a, v, k] = aryule (x, p) +//This function fits an AR (p)-model with Yule-Walker estimates. +//Calling Sequence +//a = aryule (x, p) +//[a, v] = aryule (x, p) +//[a, v, k] = aryule (x, p) +//Parameters +//x: vector of real or complex numbers, length > 2 +//p: positive integer value < length(x) - 1 +//a, v, k: Output variables +//Description +//This is an Octave function. +//This function fits an AR (p)-model with Yule-Walker estimates. +//The first argument is the data vector which is to be estimated. +//Output variable a gives the AR coefficients, v gives the variance of the white noise and k gives the reflection coefficients to be used in the lattice filter. +//Examples +//aryule([1,2,3,4,5],2) +//ans = +// 1. - 0.8140351 0.1192982 + +funcprot(0); +rhs = argn(2) +lhs = argn(1) + +if(rhs~=2) +error("Wrong number of input arguments.") +end + + select(lhs) + case 1 then + a = callOctave("aryule",x,p) + case 2 then + [a,v] = callOctave("aryule",x,p) + case 3 then + [a,v,k] = callOctave("aryule",x,p) + end + +endfunction diff --git a/macros/barthannwin.bin b/macros/barthannwin.bin Binary files differnew file mode 100644 index 0000000..1b9ed25 --- /dev/null +++ b/macros/barthannwin.bin diff --git a/macros/barthannwin.sci b/macros/barthannwin.sci new file mode 100644 index 0000000..7ba7017 --- /dev/null +++ b/macros/barthannwin.sci @@ -0,0 +1,28 @@ +function y = barthannwin(m) +//This function returns the filter coefficients of a modified Bartlett-Hann window. +//Calling Sequence +//y = barthannwin(m) +//Parameters +//m: positive integer value +//y: output variable, vector of real numbers +//Description +//This is an Octave function. +//This function returns the filter coefficients of a modified Bartlett Hann window of length m supplied as input, to the output vector y. +//Examples +//barthannwin(4) +//ans = +// 0. +// 0.73 +// 0.73 +// 0. + +funcprot(0); +rhs = argn(2) +if(rhs~=1) +error("Wrong number of input arguments.") +end + +y = callOctave("barthannwin",m) + +endfunction + diff --git a/macros/bartlett.bin b/macros/bartlett.bin Binary files differnew file mode 100644 index 0000000..373d8c0 --- /dev/null +++ b/macros/bartlett.bin diff --git a/macros/bartlett.sci b/macros/bartlett.sci new file mode 100644 index 0000000..b450e7c --- /dev/null +++ b/macros/bartlett.sci @@ -0,0 +1,35 @@ +function w=bartlett(L) +//Generates a Bartlett window +//Calling Sequence +//w=bartlett(L) +//Parameters +//L +//A positive integer describing the length of the bartlett window +//Description +//w=bartlett(L) returns an L-point Bartlett window in a column vector w +//Example +//w=bartlett(4) +// w = +// +// 0. +// 0.6666667 +// 0.6666667 +// 0. +//Author +//Ankur Mallick +//References +//[1] Oppenheim, Alan V., Ronald W. Schafer, and John R. Buck. Discrete-Time Signal Processing. Upper Saddle River, NJ: Prentice Hall, 1999. + funcprot(0); + if(argn(2)~=1) + error('Incorrect number of input arguments.'); + elseif(~isscalar(L)|L<=0|round(L)~=L) + error('L must be a positive integer') + elseif(L==1) + w=1; //Trivial case + else + N=L-1; + w1=2*(0:1:N/2)/N; + w2=2-2*(floor(N/2)+1:1:N)/N; //floor used to adjust for odd/even + w=[w1, w2]'; + end +endfunction diff --git a/macros/besself.bin b/macros/besself.bin Binary files differnew file mode 100644 index 0000000..69dbfd2 --- /dev/null +++ b/macros/besself.bin diff --git a/macros/besself.sci b/macros/besself.sci new file mode 100644 index 0000000..f65b12a --- /dev/null +++ b/macros/besself.sci @@ -0,0 +1,53 @@ +function [a, b, c, d] = besself (n, w, varargin) +//This function generates a Bessel filter. +//Calling Sequence +//[a, b] = besself(n, w) +//[a, b] = besself (n, w, "high") +//[a, b, c] = besself (…) +//[a, b, c, d] = besself (…) +//[…] = besself (…, "z") +//Parameters +//n: positive integer value +//w: positive real value +//Description +//This is an Octave function. +//This function generates a Bessel filter. The default is a Laplace space (s) filter. +//The third parameter takes in high or low, the default value being low. The cutoff is pi*Wc radians. +//[z,p,g] = besself(...) returns filter as zero-pole-gain rather than coefficients of the numerator and denominator polynomials. +//[...] = besself(...,’z’) returns a discrete space (Z) filter. w must be less than 1. +//[a,b,c,d] = besself(...) returns state-space matrices. +//Examples +//[a,b]=besself(2,3,"low") +//a = 9.0000 +//b = +// 1.0000 5.1962 9.0000 + +funcprot(0); +rhs = argn(2) +lhs = argn(1) +if(rhs<2 | rhs>4) +error("Wrong number of input arguments.") +end +if(lhs<2 | lhs>4) +error("Wrong number of output arguments.") +end + + + select (rhs) + case 2 then + if (lhs==2) [a,b] = callOctave("besself",n, w) + elseif (lhs==3) [a,b,c] = callOctave("besself",n, w) + elseif (lhs==4) [a,b,c,d] = callOctave("besself",n, w) + end + case 3 then + if (lhs==2) [a,b] = callOctave("besself",n, w,varargin(1)) + elseif (lhs==3) [a,b,c] = callOctave("besself",n, w,varargin(1)) + elseif (lhs==4) [a,b,c,d] = callOctave("besself",n, w,varargin(1)) + end + case 4 then + if (lhs==2) [a,b] = callOctave("besself",n, w,varargin(1),varargin(2)) + elseif (lhs==3) [a,b,c] = callOctave("besself",n, w,varargin(1),varargin(2)) + elseif (lhs==4) [a,b,c,d] = callOctave("besself",n, w,varargin(1),varargin(2)) + end + end +endfunction diff --git a/macros/bitrevorder.bin b/macros/bitrevorder.bin Binary files differnew file mode 100644 index 0000000..f167fa0 --- /dev/null +++ b/macros/bitrevorder.bin diff --git a/macros/bitrevorder.sci b/macros/bitrevorder.sci new file mode 100644 index 0000000..a4b6da8 --- /dev/null +++ b/macros/bitrevorder.sci @@ -0,0 +1,25 @@ +function [y,i]=bitrevorder(x) + +// Returns input data in bit-reversed order +// Calling Sequence +// [y,i]=bitrevorder(x) +// Parameters +// x: Vector of real or complex values +// Description +// This is an Octave function. +// This function returns the input data after reversing the bits of the indices and reordering the elements of the input array. +// Examples +// 1. [y]=bitrevorder ([i,1,3,6i]) +// y = [0 + 1i 3 + 0i 1 + 0i 0 + 6i] +// 2. [y,i]=bitrevorder (['a','b','c','d']) +// y = acbd +// i = [1 3 2 4] + +funcprot(0); +[lhs,rhs]=argn(0); +if (rhs<1) then + error ("Wrong number of input arguments.") +end +[y,i]=callOctave("bitrevorder",x) + +endfunction diff --git a/macros/bitrevorder.sci~ b/macros/bitrevorder.sci~ new file mode 100644 index 0000000..86f6a35 --- /dev/null +++ b/macros/bitrevorder.sci~ @@ -0,0 +1,25 @@ +function [y,i]=bitrevorder(x) + +// Returns input data in bit-reversed order +// Calling Sequence +// [y,i]=bitrevorder(x) +// Parameters +// x: Vector of real or complex values +// Description +// This is an Octave function. +// This function returns the input data after reversing the bits of the indices and reordering the elements of the input array. +// Examples +// 1. [y]=bitrevorder ([i,1,3,6i]) +// y = [0 + 1i 3 + 0i 1 + 0i 0 + 6i] +// 2. [y,i]=bitrevorder (['a','b','c','d']) +// y = acbd +// i = [1 3 2 4] + +funcprot(0); +[lhs,rhs]=argn(0); +if (rhs<1) then + error ("Wrong number of input arguments.") +end +[y,i]=callOctave("bitrevorder",x) +end +endfunction diff --git a/macros/blackman.bin b/macros/blackman.bin Binary files differnew file mode 100644 index 0000000..020909f --- /dev/null +++ b/macros/blackman.bin diff --git a/macros/blackman.sci b/macros/blackman.sci new file mode 100644 index 0000000..1847f99 --- /dev/null +++ b/macros/blackman.sci @@ -0,0 +1,60 @@ +function w=blackman(N,sflag) +//Generates a Blackman window +//Calling Sequence +//w=blackman(N) +//w=blackman(N,sflag) +//Parameters +//N +//A positive integer describing the length of the blackman window +//sflag +//Specifies the type of blackman window desired. Can be 'symmetric' or 'periodic' +//Description +//w=blackman(N) returns an N-point symmetric Blackman window in a column vector w +//w=blackman(N,sflag) +//Returns an N point Blackman window using the type of sampling specified by sflag +//sflag can be either 'symmetric' (default) or 'periodic' (used in spectral analysis) +//Example +//w=blackman(4) +//w = +// +// - 1.388D-17 +// 0.63 +// 0.63 +// - 1.388D-17 +//Author +//Ankur Mallick +//References +//[1] Oppenheim, Alan V., Ronald W. Schafer, and John R. Buck. Discrete-Time Signal Processing. Upper Saddle River, NJ: Prentice Hall, 1999. + funcprot(0); + if(argn(2)<2) + sflag='symmetric'; //Default + end + if(argn(2)<1|argn(2)>2) + error('Incorrect number of input arguments.'); + elseif(~isscalar(N)|N<=0|round(N)~=N) + error('N must be a positive integer') + elseif(sflag~='symmetric'&sflag~='periodic') + error('Sampling flag must be either symmetric or periodic'); + elseif(N==1) + w=1; //Trivial case + else + flag=0; + if(sflag=='periodic') + N=N+1; + flag=1; + end + if(pmodulo(N,2)==1) + M=(N+1)/2; //odd + else + M=N/2; //even + end + n=0:1:M-1; + w1=0.42-0.5*cos(2*%pi*n/(N-1))+0.08*cos(4*%pi*n/(N-1)); + p=2*M-N; //0 for N even, 1 for N odd + w=[w1, w1(M-p:-1:1)]'; + if(flag==1) + //Periodic case + w(N)=[]; + end + end +endfunction diff --git a/macros/blackmanharris.bin b/macros/blackmanharris.bin Binary files differnew file mode 100644 index 0000000..c9760f6 --- /dev/null +++ b/macros/blackmanharris.bin diff --git a/macros/blackmanharris.sci b/macros/blackmanharris.sci new file mode 100644 index 0000000..f2affdf --- /dev/null +++ b/macros/blackmanharris.sci @@ -0,0 +1,35 @@ +function w = blackmanharris (m, opt) +//This function returns the filter coefficients of a Blackman-Harris window. +//Calling Sequence +//w = blackmanharris (m) +//w = blackmanharris (m, opt) +//Parameters +//m: positive integer value +//opt: string value, takes "periodic" or "symmetric" +//w: output variable, vector of real numbers +//Description +//This is an Octave function. +//This function returns the filter coefficients of a Blackman-Harris window of length m supplied as input, to the output vector w. +//The second parameter can take the values "periodic" or "symmetric", depending on which the corresponding form of window is returned. The default is symmetric. +//Examples +//blackmanharris(5,"periodic") +//ans = +// 0.00006 +// 0.1030115 +// 0.7938335 +// 0.7938335 +// 0.1030115 + +rhs = argn(2) +if(rhs<1 | rhs>2) +error("Wrong number of input arguments.") +end + + select(rhs) + case 1 then + w = callOctave("blackmanharris",m) + case 2 then + w = callOctave("blackmanharris",m,opt) + end +endfunction + diff --git a/macros/blackmannuttall.bin b/macros/blackmannuttall.bin Binary files differnew file mode 100644 index 0000000..f242bc0 --- /dev/null +++ b/macros/blackmannuttall.bin diff --git a/macros/blackmannuttall.sci b/macros/blackmannuttall.sci new file mode 100644 index 0000000..29dd1b0 --- /dev/null +++ b/macros/blackmannuttall.sci @@ -0,0 +1,34 @@ +function [w] = blackmannuttall (m, opt) +//This function returns the filter coefficients of a Blackman-Nuttall window. +//Calling Sequence +//w = blackmannuttall (m) +//w = blackmannuttall (m, opt) +//Parameters +//m: positive integer value +//opt: string value, takes "periodic" or "symmetric" +//w: output variable, vector of real numbers +//Description. +//This is an Octave function. +//This function returns the filter coefficients of a Blackman-Nuttall window of length m supplied as input, to the output vector w. +//The second parameter can take the values "periodic" or "symmetric", depending on which the corresponding form of window is returned. The default is symmetric. +//Examples +//blackmannuttall(5,"symmetric") +//ans = +// 0.0003628 +// 0.2269824 +// 1. +// 0.2269824 +// 0.0003628 +rhs = argn(2) + +if (rhs<1 | rhs>2) +error("Wrong number of input arguments.") +end + select (rhs) + case 1 then + w = callOctave("blackmannuttall",m) + case 2 then + w = callOctave("blackmannuttall",m,opt) + end +endfunction + diff --git a/macros/bohmanwin.bin b/macros/bohmanwin.bin Binary files differnew file mode 100644 index 0000000..53ea3a9 --- /dev/null +++ b/macros/bohmanwin.bin diff --git a/macros/bohmanwin.sci b/macros/bohmanwin.sci new file mode 100644 index 0000000..183637c --- /dev/null +++ b/macros/bohmanwin.sci @@ -0,0 +1,27 @@ +function y = bohmanwin (m) +//This function returns the filter coefficients of a Bohman window. +//Calling Sequence +//y = bohmanwin (m) +//Parameters +//m: positive integer value +//y: output variable, vector of real numbers +//Description +//This is an Octave function. +//This function returns the filter coefficients of a Bohman window of length m supplied as input, to the output vector y. +//Examples +//bohmanwin(4) +//ans = +// 0. +// 0.6089978 +// 0.6089978 +// 0. + +rhs = argn(2) + +if(rhs~=1) +error("Wrong number of input arguments.") +end + +y = callOctave("bohmanwin",m) + +endfunction diff --git a/macros/boxcar.bin b/macros/boxcar.bin Binary files differnew file mode 100644 index 0000000..9f129da --- /dev/null +++ b/macros/boxcar.bin diff --git a/macros/boxcar.sci b/macros/boxcar.sci new file mode 100644 index 0000000..120c6e9 --- /dev/null +++ b/macros/boxcar.sci @@ -0,0 +1,28 @@ +function [y] = boxcar (m) +//This function returns the filter coefficients of a rectangular window. +//Calling Sequence +//y = boxcar (m) +//Parameters +//m: positive integer value +//y: output variable, vector of real numbers +//Description +//This is an Octave function. +//This function returns the filter coefficients of a rectangular window of length m supplied as input, to the output vector y. +//Examples +//boxcar(6) +//ans = +// 1. +// 1. +// 1. +// 1. +// 1. +// 1. + +rhs = argn(2) +if(rhs~=1) +error("Wrong number of input arguments.") +end + +y = callOctave("boxcar",m) + +endfunction diff --git a/macros/buffer.bin b/macros/buffer.bin Binary files differnew file mode 100644 index 0000000..7cb0a77 --- /dev/null +++ b/macros/buffer.bin diff --git a/macros/buffer.sci b/macros/buffer.sci new file mode 100644 index 0000000..5cc480a --- /dev/null +++ b/macros/buffer.sci @@ -0,0 +1,59 @@ +function [y, z, opt] = buffer (x, n, p, opt) +//This function buffers the given data into a matrix of signal frames +//Calling Sequence +//[y] = buffer (x, n) +//[y] = buffer (x, n, p) +//[y] = buffer (x, n, p) +//[y, z, opt] = buffer (...) +//Parameters +//x: Data to be buffered +//n: Positive integer equal to number of rows in the produced data buffer +//p: Integer less than n, default value 0 +//opt: In case of overlap, it can be a vector of length p or the string "nodelay", In case of underlap, it is an integer between 0 and p +//Description +//This function buffers the given data into a matrix of signal frames +//Examples +//buffer(1,3,2) +//ans = +// 0 0 +// 0 1 +// 1 0 +//This function is being called from Octave + +funcprot(0); +lhs = argn(1) +rhs = argn(2) +if (rhs < 2 | rhs > 4) +error("Wrong number of input arguments.") +end + +select(rhs) + + case 2 then + if(lhs==1) + y = callOctave("buffer",x,n) + elseif(lhs==3) + [y,z,opt] = callOctave("buffer",x,n) + else + error("Wrong number of output argments.") + end + + case 3 then + if(lhs==1) + y = callOctave("buffer",x,n,p) + elseif(lhs==3) + [y,z,op] = callOctave("buffer",x,n,p) + else + error("Wrong number of output argments.") + end + case 4 then + if(lhs==1) + y = callOctave("buffer",x,n,p,opt) + elseif(lhs==3) + [y,z,opt] = callOctave("buffer",x,n,p,opt) + else + error("Wrong number of output argments.") + end + end +endfunction + diff --git a/macros/buildmacros.sce b/macros/buildmacros.sce new file mode 100644 index 0000000..7f3e1bc --- /dev/null +++ b/macros/buildmacros.sce @@ -0,0 +1,15 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +// +// This file must be used under the terms of the BSD. +// This source file is licensed as described in the file LICENSE, which +// you should have received as part of this distribution. The terms +// are also available at +// https://opensource.org/licenses/BSD-3-Clause +// Author: Shamika Mohanan +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + +tbx_build_macros("FOSSEE_Signal_Processing_Toolbox", get_absolute_file_path("buildmacros.sce")); + +clear tbx_build_macros; + diff --git a/macros/buildmacros.sce~ b/macros/buildmacros.sce~ new file mode 100644 index 0000000..3580198 --- /dev/null +++ b/macros/buildmacros.sce~ @@ -0,0 +1,15 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +// +// This file must be used under the terms of the BSD. +// This source file is licensed as described in the file LICENSE, which +// you should have received as part of this distribution. The terms +// are also available at +// https://opensource.org/licenses/BSD-3-Clause +// Author: Shamika Mohanan +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + +tbx_build_macros("FOSSEE_Scilab_Octave_Interface_Toolbox", get_absolute_file_path("buildmacros.sce")); + +clear tbx_build_macros; + diff --git a/macros/butter.bin b/macros/butter.bin Binary files differnew file mode 100644 index 0000000..1ed2eaf --- /dev/null +++ b/macros/butter.bin diff --git a/macros/butter.sci b/macros/butter.sci new file mode 100644 index 0000000..a11da7e --- /dev/null +++ b/macros/butter.sci @@ -0,0 +1,58 @@ +function [a, b, c, d] = butter (n, w, varargin) +//This function generates a Butterworth filter. +//Calling Sequence +//[a, b] = butter (n, w) +//[a, b] = butter (n, w, "high") +//[a, b] = butter (n, [wl, wh]) +//[b, a] = butter (n, [wl, wh], "stop") +//[a, b, c] = butter (…) +//[a, b, c, d] = butter (…) +//[…] = butter (…, "s") +//Parameters +//n: positive integer value +//w: positive real value, w in the range [0,1] +//Description +//This is an Octave function. +//This function generates a Butterworth filter. Default is a discrete space (Z) filter. +//The third parameter takes in low or high, default value is low. The cutoff is pi*Wc radians. +//[b,a] = butter(n, [Wl, Wh]) indicates a band pass filter with edges pi*Wl and pi*Wh radians. +//[b,a] = butter(n, [Wl, Wh], ’stop’) indicates a band reject filter with edges pi*Wl and pi*Wh radians. +//[z,p,g] = butter(...) returns filter as zero-pole-gain rather than coefficients of the numerator and denominator polynomials. +//[...] = butter(...,’s’) returns a Laplace space filter, w can be larger than 1. +//[a,b,c,d] = butter(...) returns state-space matrices. +//Examples +//[a,b]=butter(3, 0.7) +//a = +// 0.37445 1.12336 1.12336 0.37445 +//b = +// 1.00000 1.16192 0.69594 0.13776 + +rhs = argn(2) +lhs = argn(1) +if(rhs>4 | rhs<2) +error("Wrong number of input arguments.") +end +if(lhs>4 | lhs<2) +error("Wrong number of output arguments.") +end + + select (rhs) + case 2 then + if (lhs==2) [a,b] = callOctave("butter",n, w) + elseif (lhs==3) [a,b,c] = callOctave("butter",n, w) + elseif (lhs==4) [a,b,c,d] = callOctave("butter",n, w) + end + case 3 then + if (lhs==2) [a,b] = callOctave("butter",n, w,varargin(1)) + elseif (lhs==3) [a,b,c] = callOctave("butter",n, w,varargin(1)) + elseif (lhs==4) [a,b,c,d] = callOctave("butter",n, w,varargin(1)) + end + case 4 then + if (lhs==2) [a,b] = callOctave("butter",n, w,varargin(1),varargin(2)) + elseif (lhs==3) [a,b,c] = callOctave("butter",n, w,varargin(1),varargin(2)) + elseif (lhs==4) [a,b,c,d] = callOctave("butter",n, w,varargin(1),varargin(2)) + end + end +endfunction + + diff --git a/macros/buttord.bin b/macros/buttord.bin Binary files differnew file mode 100644 index 0000000..a6cdc9c --- /dev/null +++ b/macros/buttord.bin diff --git a/macros/buttord.sci b/macros/buttord.sci new file mode 100644 index 0000000..2a17521 --- /dev/null +++ b/macros/buttord.sci @@ -0,0 +1,39 @@ +function [n, Wc] = buttord(Wp, Ws, Rp, Rs) +///This function computes the minimum filter order of a Butterworth filter with the desired response characteristics. +//Calling Sequence +//n = buttord(Wp, Ws, Rp, Rs) +//[n, Wc] = buttord(Wp, Ws, Rp, Rs) +//Parameters +//Wp: scalar or vector of length 2 +//Ws: scalar or vector of length 2, elements must be in the range [0,1] +//Rp: real or complex value +//Rs: real or complex value +//Description +//This is an Octave function. +//This function computes the minimum filter order of a Butterworth filter with the desired response characteristics. +//The filter frequency band edges are specified by the passband frequency wp and stopband frequency ws. +//Frequencies are normalized to the Nyquist frequency in the range [0,1]. +//Rp is measured in decibels and is the allowable passband ripple, and Rs is also in decibels and is the minimum attenuation in the stop band. +//If ws>wp, the filter is a low pass filter. If wp>ws, the filter is a high pass filter. +//If wp and ws are vectors of length 2, then the passband interval is defined by wp the stopband interval is defined by ws. +//If wp is contained within the lower and upper limits of ws, the filter is a band-pass filter. If ws is contained within the lower and upper limits of wp the filter is a band-stop or band-reject filter. +//Examples +//Wp = 40/500 +//Ws = 150/500 +//[n, Wn] = buttord(Wp, Ws, 3, 60) +//n = 5 +//Wn = 0.080038 + +rhs = argn(2) +lhs = argn(1) +if(rhs~=4) +error("Wrong number of input arguments.") +end + + select(lhs) + case 1 then + n = callOctave(Wp,Ws,Rp,Rs) + case 2 then + [n,Wc] = callOctave(Wp,Ws,Rp,Rs) + end +endfunction diff --git a/macros/callOct.sci~ b/macros/callOct.sci~ new file mode 100644 index 0000000..a9061e1 --- /dev/null +++ b/macros/callOct.sci~ @@ -0,0 +1,18 @@ +// Copyright (C) 2017 - IIT Bombay - FOSSEE +// +// This file must be used under the terms of the BSD. +// This source file is licensed as described in the file LICENSE, which +// you should have received as part of this distribution. The terms +// are also available at +// https://opensource.org/licenses/BSD-3-Clause +// Author: Shamika Mohanan +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + + + +function a=callOct(fname,varargin) + + a=callOctave(fname,varargin); + +endfunction diff --git a/macros/cconv.bin b/macros/cconv.bin Binary files differnew file mode 100644 index 0000000..977d0b2 --- /dev/null +++ b/macros/cconv.bin diff --git a/macros/cconv.sci b/macros/cconv.sci new file mode 100644 index 0000000..c7560ef --- /dev/null +++ b/macros/cconv.sci @@ -0,0 +1,50 @@ +//Author: Parthasarathi Panda +//parthasarathipanda314@gmail.com +function o=cconv(a,b,n) + [nargout,nargin]=argn(); + if nargin==2 then + n=length(a)+length(b)-1; + end + if type(a)~=1 | type(b)~=1 | type(n)~=1 then + error('check the data type of input'); //to check if the inputs are real/complex arrays + end + if size(n)~=[1,1] then + error('check the data type of input'); //to check that n is single dimensional + end + if floor(n)~=n | imag(n)~=0 then + error('check that n is an integer');//to check if n is an integer + end + //checking if a is a 1d vector(row or column) and turning it into row vector + [i,j]=size(a); + if j~=1 & i~=1 then + error('a should be a vector'); + elseif j==1 + a=a'; + end + //checking if b is a 1d vector(row or column) and turning it into row vector + [i,j]=size(b); + if j~=1 & i~=1 then + error('b should be a vector'); + elseif j==1 + b=b'; + end + + //adjusting length of a + if n<=length(a) then + a=a(1:n); + else + a=[a,zeros(1,n-length(a))] + end + //adjusting length of b + if n<=length(b) then + b=b(1:n); + else + b=[b,zeros(1,n-length(b))] + end + //computing ffts (for speed) + aft=fft(a); + bft=fft(b); + //circular convolution dft is the product of dft of the 2 + oft=aft.*bft; + o=ifft(oft); +endfunction diff --git a/macros/cell2sos.bin b/macros/cell2sos.bin Binary files differnew file mode 100644 index 0000000..becc9e0 --- /dev/null +++ b/macros/cell2sos.bin diff --git a/macros/cell2sos.sci b/macros/cell2sos.sci new file mode 100644 index 0000000..39402b3 --- /dev/null +++ b/macros/cell2sos.sci @@ -0,0 +1,95 @@ +function [s,g] = cell2sos(c) +//Converts a cell array to a second order section matrix +//Calling Sequences +//s=cell2sos(c) +//[s,g]=cell2sos(c) +//Parameters +//c +//A cell array +//g +//The scalar gain +//Description +//s=cell2sos(c) converts a a cell array c = { {B1},{A1}, {B2},{A2}, ... {BL},{AL}} +//to an L-by-6 second-order-section matrix s given by: +// s = [B1 A1 +// B2 A2 +// ... +// BL AL] +//numerator vector Bi and denominator vector Ai contains the coefficients of a +//linear or quadratic polynomial. If the polynomial is linear, the coefficients +//zero-padded on the right. +//[s,g]=cell2sos(c) estimates the gain from the leading term of the cell array +//c={ {[g1,g2]},{B1},{A1}, {B2},{A2}, ... {BL},{AL}} to give g=g1/g2 as the gain +//Example +//c=cell(1,5); +// +//c(1,1).entries=[2, 1]; +// +//c(1,2).entries=rand(1,3); +// +//c(1,3).entries=rand(1,3); +// +//c(1,4).entries=rand(1,3); +// +//c(1,5).entries=rand(1,3); +// +// c = +// column 1 to 3 +// +//![2,1] [0.2113249,0.7560439,0.0002211] [0.3303271,0.6653811,0.6283918] ! +// +// column 4 to 5 +// +//![0.8497452,0.6857310,0.8782165] [0.0683740,0.5608486,0.6623569] ! +//[s,g]=cell2sos(c); +//s = +// +// column 1 to 5 +// +// 0.2113249 0.7560439 0.0002211 0.3303271 0.6653811 +// 0.8497452 0.6857310 0.8782165 0.0683740 0.5608486 +// +// column 6 +// +// 0.6283918 +// 0.6623569 +// +//g = +// +// 2. +//Author +//Ankur Mallick + if(argn(2)~=1) then + error("Wrong number of input arguments"); + end + + L=prod(size(c)); + for i=1:L + if(type(c(i))~=17) + error('Cell contents must themselves be cell objects'); + end + end + if (argn(1)==2) + d=c(1).entries; + if(length(d)==2) + g1=d(1); + g2=d(2); + g=g1/g2; + c=c(2:L); + else + g=1; + end + end + L=prod(size(c)); + s=zeros(L/2,6); + for i=1:2:L-1 + j=ceil(i/2) + b=c(i).entries; + a=c(i+1).entries; + b=b(:).'; + a=a(:).'; + b=[b,zeros(1,3-length(b))]; + a=[a,zeros(1,3-length(b))]; + s(j,:)=[b,a]; + end +endfunction diff --git a/macros/cheb1ord.bin b/macros/cheb1ord.bin Binary files differnew file mode 100644 index 0000000..7cf442d --- /dev/null +++ b/macros/cheb1ord.bin diff --git a/macros/cheb1ord.sci b/macros/cheb1ord.sci new file mode 100644 index 0000000..b2789bf --- /dev/null +++ b/macros/cheb1ord.sci @@ -0,0 +1,36 @@ +function [n, Wc] = cheb1ord(Wp, Ws, Rp, Rs) +//This function computes the minimum filter order of a Chebyshev type I filter with the desired response characteristics. +//Calling Sequence +//n = cheb1ord(Wp, Ws, Rp, Rs) +//[n, Wc] = cheb1ord(Wp, Ws, Rp, Rs) +//Parameters +//Wp: scalar or vector of length 2, all elements must be in the range [0,1] +//Ws: scalar or vector of length 2, all elements must be in the range [0,1] +//Rp: real value +//Rs: real value +//Description +//This is an Octave function. +//This function computes the minimum filter order of a Chebyshev type I filter with the desired response characteristics. +//Stopband frequency ws and passband frequency wp specify the the filter frequency band edges. +//Frequencies are normalized to the Nyquist frequency in the range [0,1]. +//Rp is measured in decibels and is the allowable passband ripple and Rs is also measured in decibels and is the minimum attenuation in the stop band. +//If ws>wp then the filter is a low pass filter. If wp>ws, then the filter is a high pass filter. +//If wp and ws are vectors of length 2, then the passband interval is defined by wp and the stopband interval is defined by ws. +//If wp is contained within the lower and upper limits of ws, the filter is a band-pass filter. If ws is contained within the lower and upper limits of wp, the filter is a band-stop or band-reject filter. +//Examples +//cheb1ord(0.1,0.2,-0.3,4) +//ans = 2 + +rhs = argn(2) +lhs = argn(1) +if(rhs~=4) +error("Wrong number of input arguments.") +end + + select(lhs) + case 1 then + n = callOctave("cheb1ord",Wp,Ws,Rp,Rs) + case 2 then + [n,Wc] = callOctave("cheb1ord",Wp,Ws,Rp,Rs) + end +endfunction diff --git a/macros/cheb2ord.bin b/macros/cheb2ord.bin Binary files differnew file mode 100644 index 0000000..b1602ec --- /dev/null +++ b/macros/cheb2ord.bin diff --git a/macros/cheb2ord.sci b/macros/cheb2ord.sci new file mode 100644 index 0000000..815ba0d --- /dev/null +++ b/macros/cheb2ord.sci @@ -0,0 +1,36 @@ +function [n, Wc] = cheb2ord(Wp, Ws, Rp, Rs) +//This function computes the minimum filter order of a Chebyshev type II filter with the desired response characteristics. +//Calling Sequence +//n = cheb2ord(Wp, Ws, Rp, Rs) +//[n, Wc] = cheb2ord(Wp, Ws, Rp, Rs) +//Parameters +//Wp: scalar or vector of length 2, all elements must be in the range [0,1] +//Ws: scalar or vector of length 2, all elements must be in the range [0,1] +//Rp: real value +//Rs: real value +//Description +//This is an Octave function. +//This function computes the minimum filter order of a Chebyshev type II filter with the desired response characteristics. +//Stopband frequency ws and passband frequency wp specify the the filter frequency band edges. +//Frequencies are normalized to the Nyquist frequency in the range [0,1]. +//Rp is measured in decibels and is the allowable passband ripple and Rs is also measured in decibels and is the minimum attenuation in the stop band. +//If ws>wp then the filter is a low pass filter. If wp>ws, then the filter is a high pass filter. +//If wp and ws are vectors of length 2, then the passband interval is defined by wp and the stopband interval is defined by ws. +//If wp is contained within the lower and upper limits of ws, the filter is a band-pass filter. If ws is contained within the lower and upper limits of wp, the filter is a band-stop or band-reject filter. +//Examples +//cheb2ord([0.25,0.3],[0.2,0.8],0.3,0.4) +//ans = 1 + +rhs = argn(2) +lhs = argn(1) +if(rhs~=4) +error("Wrong number of input arguments.") +end + + select(lhs) + case 1 then + n = callOctave("cheb2ord",Wp,Ws,Rp,Rs) + case 2 then + [n,Wc] = callOctave("cheb2ord",Wp,Ws,Rp,Rs) + end +endfunction diff --git a/macros/chebwin.bin b/macros/chebwin.bin Binary files differnew file mode 100644 index 0000000..cd27563 --- /dev/null +++ b/macros/chebwin.bin diff --git a/macros/chebwin.sci b/macros/chebwin.sci new file mode 100644 index 0000000..781bb6e --- /dev/null +++ b/macros/chebwin.sci @@ -0,0 +1,37 @@ +function w = chebwin (m, at) +//This function returns the filter coefficients of a Dolph-Chebyshev window. +//Calling Sequence +//w = chebwin (m) +//w = chebwin (m, at) +//Parameters +//m: positive integer value +//at: real scalar value +//w: output variable, vector of real numbers +//Description +//This is an Octave function. +//This function returns the filter coefficients of a Dolph-Chebyshev window of length m supplied as input, to the output vector w. +//The second parameter is the stop band attenuation of the Fourier transform in dB. The default value is 100 dB. +//Examples +//chebwin(7) +//ans = +// 0.0565041 +// 0.3166085 +// 0.7601208 +// 1. +// 0.7601208 +// 0.3166085 +// 0.0565041 + +rhs = argn(2) +if(rhs<1 | rhs>2) +error("Wrong number of input arguments.") +end +select(rhs) +case 1 then +w = callOctave("chebwin",m) +case 2 then +w = callOctave("chebwin",m,at) +end +endfunction + + diff --git a/macros/cheby1.bin b/macros/cheby1.bin Binary files differnew file mode 100644 index 0000000..5fff1f3 --- /dev/null +++ b/macros/cheby1.bin diff --git a/macros/cheby1.sci b/macros/cheby1.sci new file mode 100644 index 0000000..52ff1ad --- /dev/null +++ b/macros/cheby1.sci @@ -0,0 +1,59 @@ +function [a, b, c, d] = cheby1 (n, rp, w, varargin) +//This function generates a Chebyshev type I filter with rp dB of passband ripple. +//Calling Sequence +//[a, b] = cheby1 (n, rp, w) +//[a, b] = cheby1 (n, rp, w, "high") +//[a, b] = cheby1 (n, rp, [wl, wh]) +//[a, b] = cheby1 (n, rp, [wl, wh], "stop") +//[a, b, c] = cheby1 (…) +//[a, b, c, d] = cheby1 (…) +//[…] = cheby1 (…, "s") +//Parameters +//n: positive integer value +//rp: non negative scalar value +//w: vector, all elements must be in the range [0,1] +//Description +//This is an Octave function. +//This function generates a Chebyshev type I filter with rp dB of passband ripple. +//The fourth parameter takes in high or low, default value is low. The cutoff is pi*Wc radians. +//[b, a] = cheby1(n, Rp, [Wl, Wh]) indicates a band pass filter with edges pi*Wl and pi*Wh radians. +//[b, a] = cheby1(n, Rp, [Wl, Wh], ’stop’) indicates a band reject filter with edges pi*Wl and pi*Wh radians. +//[z, p, g] = cheby1(...) returns filter as zero-pole-gain rather than coefficients of the numerator and denominator polynomials. +//[...] = cheby1(...,’s’) returns a Laplace space filter, w can be larger than 1. +//[a,b,c,d] = cheby1(...) returns state-space matrices. +//Examples +//[a,b,c]=cheby1(2,6,0.7,"high") +//a = +// 1 1 +//b = +// -0.62915 + 0.55372i -0.62915 - 0.55372i +//c = 0.055649 + +rhs = argn(2) +lhs = argn(1) +[rows,columns] = size(w) +if(rhs>5 | rhs<3) +error("Wrong number of input arguments.") +end +if(lhs>4 | lhs<2) +error("Wrong number of output arguments.") +end + + select (rhs) + case 3 then + if (lhs==2) [a,b] = callOctave("cheby1",n, rp, w) + elseif (lhs==3) [a,b,c] = callOctave("cheby1",n, rp, w) + elseif (lhs==4) [a,b,c,d] = callOctave("cheby1",n, rp, w) + end + case 4 then + if (lhs==2) [a,b] = callOctave("cheby1",n, rp, w, varargin(1)) + elseif (lhs==3) [a,b,c] = callOctave("cheby1",n, rp, w, varargin(1)) + elseif (lhs==4) [a,b,c,d] = callOctave("cheby1",n, rp, w, varargin(1)) + end + case 5 then + if (lhs==2) [a,b] = callOctave("cheby1",n, rp, rs, w, varargin(1), varargin(2)) + elseif (lhs==3) [a,b,c] = callOctave("cheby1",n, rp, rs, w, varargin(1), varargin(2)) + elseif (lhs==4) [a,b,c,d] = callOctave("cheby1",n, rp, rs, w, varargin(1), varargin(2)) + end + end +endfunction diff --git a/macros/cheby2.bin b/macros/cheby2.bin Binary files differnew file mode 100644 index 0000000..f68fe52 --- /dev/null +++ b/macros/cheby2.bin diff --git a/macros/cheby2.sci b/macros/cheby2.sci new file mode 100644 index 0000000..6504837 --- /dev/null +++ b/macros/cheby2.sci @@ -0,0 +1,59 @@ +function [a, b, c, d] = cheby2 (n, rs, w, varargin) +//This function generates a Chebyshev type II filter with rs dB of stopband attenuation. +//Calling Sequence +//[a, b] = cheby2 (n, rs, wc) +//[a, b] = cheby2 (n, rs, wc, "high") +//[a, b] = cheby2 (n, rs, [wl, wh]) +//[a, b] = cheby2 (n, rs, [wl, wh], "stop") +//[a, b, c] = cheby2 (…) +//[a, b, c, d] = cheby2 (…) +//[…] = cheby2 (…, "s") +//Parameters +//n: positive integer value +//rp: non negative scalar value +//w: vector, all elements must be in the range [0,1] +//Description +//This is an Octave function. +//This function generates a Chebyshev type II filter with rs dB of stopband attenuation. +//The fourth parameter takes in high or low, default value is low. The cutoff is pi*Wc radians. +//[b, a] = cheby2(n, Rp, [Wl, Wh]) indicates a band pass filter with edges pi*Wl and pi*Wh radians. +//[b, a] = cheby2(n, Rp, [Wl, Wh], ’stop’) indicates a band reject filter with edges pi*Wl and pi*Wh radians. +//[z, p, g] = cheby2(...) returns filter as zero-pole-gain rather than coefficients of the numerator and denominator polynomials. +//[...] = cheby2(...,’s’) returns a Laplace space filter, w can be larger than 1. +//[a,b,c,d] = cheby2(...) returns state-space matrices. +//Examples +//[a,b,c]=cheby2(2,5,0.7,"high") +//a = +// -0.31645 - 0.94861i -0.31645 + 0.94861i +//b = +// -0.39388 + 0.53138i -0.39388 - 0.53138i +//c = 0.47528 + +rhs = argn(2) +lhs = argn(1) + +if(rhs>5 | rhs<3) +error("wrong number of input arguments.") +end +if(lhs<4 | lhs<2) +error("Wrong number of output arguments.") +end + +select (rhs) + case 3 then + if (lhs==2) [a,b] = callOctave("cheby2",n, rp, w) + elseif (lhs==3) [a,b,c] = callOctave("cheby2",n, rp, w) + elseif (lhs==4) [a,b,c,d] = callOctave("cheby2",n, rp, w) + end + case 4 then + if (lhs==2) [a,b] = callOctave("cheby2",n, rp, w, varargin(1)) + elseif (lhs==3) [a,b,c] = callOctave("cheby2",n, rp, w, varargin(1)) + elseif (lhs==4) [a,b,c,d] = callOctave("cheby2",n, rp, w, varargin(1)) + end + case 5 then + if (lhs==2) [a,b] = callOctave("cheby2",n, rp, rs, w, varargin(1), varargin(2)) + elseif (lhs==3) [a,b,c] = callOctave("cheby2",n, rp, rs, w, varargin(1), varargin(2)) + elseif (lhs==4) [a,b,c,d] = callOctave("cheby2",n, rp, rs, w, varargin(1), varargin(2)) + end + end +endfunction diff --git a/macros/cheby2.sci~ b/macros/cheby2.sci~ new file mode 100644 index 0000000..9efd721 --- /dev/null +++ b/macros/cheby2.sci~ @@ -0,0 +1,58 @@ +function [a, b, c, d] = cheby2 (n, rs, w, varargin) +//This function generates a Chebyshev type II filter with rs dB of stopband attenuation. +//Calling Sequence +//[a, b] = cheby2 (n, rs, wc) +//[a, b] = cheby2 (n, rs, wc, "high") +//[a, b] = cheby2 (n, rs, [wl, wh]) +//[a, b] = cheby2 (n, rs, [wl, wh], "stop") +//[a, b, c] = cheby2 (…) +//[a, b, c, d] = cheby2 (…) +//[…] = cheby2 (…, "s") +//Parameters +//n: positive integer value +//rp: non negative scalar value +//w: vector, all elements must be in the range [0,1] +//Description +//This is an Octave function. +//This function generates a Chebyshev type II filter with rs dB of stopband attenuation. +//The fourth parameter takes in high or low, default value is low. The cutoff is pi*Wc radians. +//[b, a] = cheby2(n, Rp, [Wl, Wh]) indicates a band pass filter with edges pi*Wl and pi*Wh radians. +//[b, a] = cheby2(n, Rp, [Wl, Wh], ’stop’) indicates a band reject filter with edges pi*Wl and pi*Wh radians. +//[z, p, g] = cheby2(...) returns filter as zero-pole-gain rather than coefficients of the numerator and denominator polynomials. +//[...] = cheby2(...,’s’) returns a Laplace space filter, w can be larger than 1. +//[a,b,c,d] = cheby2(...) returns state-space matrices. +//Examples +//[a,b,c]=cheby2(2,5,0.7,"high") +//a = +// -0.31645 - 0.94861i -0.31645 + 0.94861i +//b = +// -0.39388 + 0.53138i -0.39388 - 0.53138i +//c = 0.47528 + +rhs = argn(2) +lhs = argn(1) + +if(rhs>5 | rhs<3) +error("wrong number of input arguments.") +end +if(lhs<4 | lhs<2) +error("Wrong number of output arguments.") +end + +select (rhs) + case 3 then + if (lhs==2) [a,b] = callOctave("cheby2",n, rp, w) + elseif (lhs==3) [a,b,c] = callOctave("cheby2",n, rp, w) + elseif (lhs==4) [a,b,c,d] = callOctave("cheby2",n, rp, w) + end + case 4 then + if (lhs==2) [a,b] = callOctave("cheby2",n, rp, w, varargin(1)) + elseif (lhs==3) [a,b,c] = callOctave("cheby2",n, rp, w, varargin(1)) + elseif (lhs==4) [a,b,c,d] = callOctave("cheby2",n, rp, w, varargin(1)) + end + case 5 then + if (lhs==2) [a,b] = callOctave("cheby2",n, rp, rs, w, varargin(1), varargin(2)) + elseif (lhs==3) [a,b,c] = callOctave("cheby2",n, rp, rs, w, varargin(1), varargin(2)) + elseif (lhs==4) [a,b,c,d] = callOctave("cheby2",n, rp, rs, w, varargin(1), varargin(2)) + end + end diff --git a/macros/check.bin b/macros/check.bin Binary files differnew file mode 100644 index 0000000..678d4a0 --- /dev/null +++ b/macros/check.bin diff --git a/macros/check.sci b/macros/check.sci new file mode 100644 index 0000000..c7a1678 --- /dev/null +++ b/macros/check.sci @@ -0,0 +1,5 @@ +function [s] = check(str) +funcprot(0); +is_AKICc = (str == "AKICc") +disp(is_AKICc) +endfunction diff --git a/macros/chirp.bin b/macros/chirp.bin Binary files differnew file mode 100644 index 0000000..4251c53 --- /dev/null +++ b/macros/chirp.bin diff --git a/macros/chirp.sci b/macros/chirp.sci new file mode 100644 index 0000000..41a94e6 --- /dev/null +++ b/macros/chirp.sci @@ -0,0 +1,55 @@ +function [y] = chirp(t,f0,t1,f1,frm,phse) +//This function evaluates a chirp signal at time t. +//Calling Sequence +//y = chirp(t) +//y = chirp(t, f0) +//y = chirp(t, f0, t1) +//y = chirp(t, f0, t1, f1) +//y = chirp(t, f0, t1, f1, frm) +//y = chirp(t, f0, t1, f1, frm, phse) +//Parameters +//t: vector +//f0: +//t1: +//f1: +//frm: string value, takes in "linear", "quadratic", "logarithmic" +//phse: +//Description +//This is an Octave function. +//This function evaluates a chirp signal at time t. A chirp signal is a frequency swept cosine wave. +//The first argument is a vector of times to evaluate the chirp signal, second argument is the frequency at t=0, third argument is time t1 and fourth argument is frequency at t1. +//The fifth argument is the form which takes in values "linear", "quadratic" and "logarithmic", the sixth argument gives the phase shift at t=0. +//Examples +//chirp([4,3,2,1],4,5,0.9) +//ans = +// column 1 to 3 +// 0.9685832 0.2486899 0.0627905 +// column 4 +// - 0.3681246 + +funcprot(0); + +rhs = argn(2) +if(rhs<1 | rhs>6) +error("Wrong number of input arguments.") +end + select(rhs) + case 1 then + y = callOctave("chirp",t) + case 2 then + y = callOctave("chirp",t,f0) + case 3 then + y = callOctave("chirp",t,f0,t1) + case 4 then + y = callOctave("chirp",t,f0,t1,f1) + case 5 then + //if(~(form == "linear" | form == "quadratic" | form == "logarithmic")) + //error("Chirp does not understand that form. Enter linear, quadratic or logarithmic.") + //else + y = callOctave("chirp",t,f0,t1,f1,frm) + //end + case 6 then + y = callOctave("chirp",t,f0,t1,f1,frm,phse) + end +endfunction + diff --git a/macros/clustersegment.bin b/macros/clustersegment.bin Binary files differnew file mode 100644 index 0000000..fc1d371 --- /dev/null +++ b/macros/clustersegment.bin diff --git a/macros/clustersegment.sci b/macros/clustersegment.sci new file mode 100644 index 0000000..07957ee --- /dev/null +++ b/macros/clustersegment.sci @@ -0,0 +1,27 @@ +function c = clustersegment(s) +//This function calculates boundary indexes of clusters of 1’s. +//Calling Sequence +//c = clustersegment(s) +//Parameters +//s: scalar, vector or matrix of real numbers (clusters of 1s) +//c: output variable, cell array of size 1 by N, where N is the number of rows in s +//Description +//This is an Octave function. +//This function calculates boundary indexes of clusters of 1’s. +//This function calculates the initial and end indices of the sequences of 1's present in the input argument. +//The output variable c is a cell array of size 1 by N, where N is the number of rows in s and each element has two rows indicating the initial index and end index of the cluster of 1's respectively. The indexing starts from 1. +//Examples +//y = clustersegment ([0,1,0,0,1,1]) +//y = +// 2. 5. +// 2. 6. + +funcprot(0); +rhs = argn(2) +if(rhs~=1) +error("Wrong number of input arguments.") +end + +c = callOctave("clustersegment", s) + +endfunction diff --git a/macros/cmorwavf.bin b/macros/cmorwavf.bin Binary files differnew file mode 100644 index 0000000..ecaa435 --- /dev/null +++ b/macros/cmorwavf.bin diff --git a/macros/cmorwavf.sci b/macros/cmorwavf.sci new file mode 100644 index 0000000..6c20fc5 --- /dev/null +++ b/macros/cmorwavf.sci @@ -0,0 +1,26 @@ +function [psi,x]=cmorwavf(lb,ub,n,fb,fc) +funcprot(0); + +// Finds the Complex Morlet Wavelet +// Calling Sequence +// [psi,x]=cmorwavf(lb,ub,n,fb,fc) +// Parameters +// lb: Real or complex valued vector or matrix +// ub: Real or complex valued vector or matrix +// n: Real scalar strictly positive integer +// fb: Real or complex scalar value +// fc: Real or complex scalar value +// Description +// This is an Octave function. +// This function returns the value of the Complex Morlet Waveform defined by a positive bandwidth parameter FB, a wavelet center frequency FC on an N point regular grid for the interval [LB,UB]. +// Examples +// [a,b]=cmorwavf(1,2,1,3,4) +// b=2 +// a=[0.0858628 -1.682D-16i] + +rhs=argn(2); +if(rhs~=5) then + error ("Wrong number of input arguments.") +end +[psi,x]=callOctave("cmorwavf",lb,ub,n,fb,fc) +endfunction diff --git a/macros/convmtx.bin b/macros/convmtx.bin Binary files differnew file mode 100644 index 0000000..1925e20 --- /dev/null +++ b/macros/convmtx.bin diff --git a/macros/convmtx.sci b/macros/convmtx.sci new file mode 100644 index 0000000..c0aa891 --- /dev/null +++ b/macros/convmtx.sci @@ -0,0 +1,36 @@ +//Convolution Matrix +//convmtx(h,n) returns the convolution matrix for vector h. If h is a +//column vector and X is a column vector of length n, then convmtx(h,n)*X +//gives the result of the convolution oof h and X.If R is a row vector and X//is a row vector of length N, then X*convmtx(R,N) gives the convolution of R and X. +//Example: +//Generate a simple convolution matrix. +// +// h = [%i 1 2 3]; +// convmtx(h,7) //Convolution matrix +// +//Author +//Debdeep Dey +function t=convmtx(v,n); + n=double(n); + [mv,nv]=size(v); + v=v(:); + + //put Toeplitz code inline + c = [v; zeros(n-1,1)]; + r = zeros(n,1); + m = length(c); + x = [r(n:-1:2) ; c(:)]; + + cidx = (0:m-1)'; + ridx = n:-1:1; + t = cidx(:,ones(n,1)) + ridx(ones(m,1),:); //Toeplitz subscripts + t(:) = x(t); //actual data + + //t = single(t); + // end of toeplitz code + +if mv < nv then + t = t.'; + end + +endfunction diff --git a/macros/convmtx1.sce b/macros/convmtx1.sce new file mode 100644 index 0000000..75fa242 --- /dev/null +++ b/macros/convmtx1.sce @@ -0,0 +1,4 @@ +h=[1 2 3 4 56]; +n=6; +A=convmtx(h,n); +disp(A); diff --git a/macros/corrmtx.bin b/macros/corrmtx.bin Binary files differnew file mode 100644 index 0000000..1a11222 --- /dev/null +++ b/macros/corrmtx.bin diff --git a/macros/corrmtx.sci b/macros/corrmtx.sci new file mode 100644 index 0000000..2a7a000 --- /dev/null +++ b/macros/corrmtx.sci @@ -0,0 +1,126 @@ +function [X,varargout]= corrmtx(x,m,varargin) +// Generate data matrix for autocorrelation matrix estimation +// +// Calling Sequence +// X = corrmtx(x,m) +// [X,R] = corrmtx(x,m) +// X = corrmtx(x,m,s) +// [X,R] = corrmtx(x,m,s) +// +// Parameters +// x: input vector of size N for which correlation matrix of size m is to be calculated +// m: size of correlation matrix to be computed. Positive integer strictly smaller than the length of the input x +// X: data matrix as specified according to the input 'method' +// s: method for type of output matrix X +// 'autocorrelation': (default) X is the (n + m)-by-(m + 1) rectangular Toeplitz matrix that generates an autocorrelation estimate for the leng th-n data vector x, derived using prewindowed and postwindowed data, based on an mth-order prediction error model. +// 'prewindowed': X is the n-by-(m + 1) rectangular Toeplitz matrix that generates an autocorrelation estimate for the length-n data vector x, derived using prewindowed data, based on an mth-order prediction error model. +// 'postwindowed': X is the n-by-(m + 1) rectangular Toeplitz matrix that generates an autocorrelation estimate for the length-n data vector x , derived using postwindowed data, based on an mth-order prediction error model. +// 'covariance': X is the (n – m)-by-(m + 1) rectangular Toeplitz matrix that generates an autocorrelation estimate for the length-n data vect or x, derived using nonwindowed data, based on an mth-order prediction error model. +// 'modified': X is the 2(n – m)-by-(m + 1) modified rectangular Toeplitz matrix that generates an autocorrelation estimate for the length-n d ata vector x, derived using forward and backward prediction error estimates, based on an mth-order prediction error model. +// R: (m + 1)-by-(m + 1) autocorrelation matrix estimate calculated as X'*X +// +// Description +// Consider the generic matrix X below +// _ _ +// | x(1) ..........0 | +// | : . : | +// | : . : | +// | x(m+1).......x(1)| +// | : . : | +// | : . : | +//X = | x(n-m).....x(m+1)| +// | : . : | +// | : . : | +// | x(n).......x(n-m)| +// | : . : | +// | : . : | +// |_0 ..........x(n)_| +// -- +// For different inputs of string s the output would vary ass described below +// 'autocorrelation' — (default) X = X, above. +// 'prewindowed' — X is the n-by-(m + 1) submatrix of X whose first row is [x(1) … 0] and whose last row is [x(n) … x(n – m)] +// 'postwindowed' — X is the n-by-(m + 1) submatrix of X whose first row is [x(m + 1) … x(1)] and whose last row is [0 … x(n)] +// 'covariance' — X is the (n – m)-by-(m + 1) submatrix of X whose first row is [x(m + 1) … x(1)] and whose last row is [x(n) … x(n – m)] +// 'modified' — X is the 2(n – m)-by-(m + 1) matrix X_mod shown below +// _ _ +// | x(m+1) ......x(1)| +// | : . : | +// | : . : | +// | x(n-m).....x(m+1)| +// | : . : | +// | : . : | +// | x(n).......x(n-m)| +// X_mod= | x*(1).....x*(m+1)| +// | : . : | +// | : . : | +// | x*(m+1)...x*(n-m)| +// | : . : | +// | : . : | +// |_x*(n-m) ...x*(n)_| +// +// Examples +// +// +// +// See also +// peig +// pmusic +// rooteig +// rootmusic +// xcorr +// +// Author: +// Parthe Pandit +// +// Bilbligraphy +// Marple, S. Lawrence. Digital Spectral Analysis. Englewood Cliffs, NJ: Prentice-Hall, 1987. + + + + if(~isvector(x)) then + error("Input x must be a length n vector") + return + elseif (~isscalar(m)) then + error("Input m must be scalar") + return + end + + if (length(varargin) > 1) then + error('Too many input arguments. Third argument must be method for correlation matrix computation') + return + elseif (length(varargin) < 1) + method = 'autocorrelation'; + elseif (length(varargin) == 1 & type(varargin(1))~=10) + disp(type(varargin)); + error("Input method needs to be string") + return + else + method = varargin(1); + end + n = length(x); + x = matrix(x,1,n); + x_padded = [zeros(1,m),x,zeros(1,m)]; + X = zeros( (n + m),(m + 1) ); + for i = 1:size(X,1) + X(i,:) = x_padded(m+i:-1:i); + end + + select method + case "autocorrelation" then + X = X; + case 'prewindowed' then + X = X(1:n,:); + case 'postwindowed' then + X = X(m+1:$,:); + case 'covariance' then + X = X(m+1:n,:); + case 'modified' then + X = [X(m+1:n,:) ; conj(mtlb_fliplr(X(m+1:n,:)))]; + else X = X; +end + + + varargout = list(X'*X); + + +endfunction diff --git a/macros/cummax.bin b/macros/cummax.bin Binary files differnew file mode 100644 index 0000000..0dc047b --- /dev/null +++ b/macros/cummax.bin diff --git a/macros/cummax.sci b/macros/cummax.sci new file mode 100644 index 0000000..672dc5c --- /dev/null +++ b/macros/cummax.sci @@ -0,0 +1,196 @@ +function M = cummax(varargin) + // Cumulative maximum + // + // Calling Sequence + // M = cummax(A) + // returns the cumulative maximum of the arguments of A. The dimension + // of M is same as the dimension of A. If A is a 2D matrix, the operation + // is performed along the columns. For a hypermatrix, the operation is + // performed along the first non-zero dimension + // M = cummax(A,dim) + // The operation is performed along the dimension specified by dim + // M = cummax(_,direction) + // direction specifies as the direction of operation + // + // Parameters + // A - real|complex numbers - vector|matrix + // Input Array + // For complex elements, cummax compares the magnitude of elements. If + // the magnitude are same, phase angles are compared. + // dim - positive integer - scalar + // Dimension to operate along + // If no dimension is specified, then the default value is the first + // array dimension whose value is greater than 1 + // direction - string flag - 'forward' (default) or 'reverse' + // Direction of cumulation + // If the direction is forward, cummax works from 1 to end of the active + // dimension. Otherwise, it works in the opposite sense + // + // Examples + // 1) Cumulative maximum values in a vector + // v = [8 9 1 10 6 1 3 6 10 10] + // M = cummax(v) + // + // Expected output: [8 8 1 1 1 1 1 1 1 1] + // + // Authors + // Ayush Baid + // + // See Also + // cummax | cumprod | cumsum | max | max + + + + [numOutArgs,numInArgs] = argn(0); + + // ** Checking number of arguments + + if numInArgs<1 | numInArgs>3 then + msg = "cummax: Wrong number of input argument; 1-6 expected"; + error(77,msg); + end + + if numOutArgs~=1 then + msg = "cummax: Wrong number of output argument; 1 expected"; + error(78,msg); + end + + + // ** Parsing input args ** + + // defining default arguments + isForward = %t; + dim = []; + directionArg = ""; + A = varargin(1); + + // A should contain numeric entries + if ~(type(A)==1 | type(A)==8 | type(A)==17) then + msg = "cummax: Wrong type for argument #1 (A); Real or complex entries expected "; + error(53,msg); + end + + if numInArgs>1 then + temp = varargin(2); + if type(temp)==10 then + // it is the direction argument + directionArg = temp; + elseif type(temp)==1 | type(temp)==8 then + dim = int(temp); + else + msg = "cummax: Wrong type for argument #2; Either dim (integer) or direction (string) expected"; + error(53,msg); + end + end + + if numInArgs>2 then + directionArg = varargin(3); + if type(directionArg)~=10 then + msg = "cummax: Wrong type for argument #3 (direction); String expected"; + error(53,msg); + end + end + + if isempty(dim) then + dimArray = 1:ndims(A); + dim = find(size(A)~=1,1); + end + + // additional checks on dim + if size(A,dim)==1 then + M = A; + return + end + + // extracting direction + if strcmpi(directionArg,"reverse")==0 then + isForward = %f; + elseif strcmpi(directionArg,"forward")==0 then + isForward = %t; + elseif strcmpi(directionArg,"")~=0 then + msg = "cummax: Wrong value for argument #3 (direction)"; + error(53,msg); + end + + sizeA = size(A); + sizeDim = size(A,dim); + + // restructuring A into a 3D matrix with the specified dimension as the middle elements + + leftSize = prod(sizeA(1:dim-1)); + rightSize = prod(sizeA(dim+1:$)); + middleSize = sizeDim; + + + A_ = matrix(A,[leftSize,middleSize,rightSize]); + M_ = zeros(leftSize,middleSize,rightSize); + + for i=1:leftSize + for j=1:rightSize + M_(i,:,j) = cummaxVec(A_(i,:,j),isForward); + end + end + + M = matrix(M_,sizeA); + +endfunction + + +function out = cummaxVec(inp,isForward) + // performs cummax on vector inputs + + if isForward then + startIndex=1; + endIndex = length(inp); + step = 1; + else + startIndex=length(inp); + endIndex = 1; + step = -1; + end + + out(startIndex) = inp(startIndex); + if isreal(inp) then + for i=startIndex+step:step:endIndex + if isnan(out(i-step)) then + out(i) = inp(i); + elseif inp(i)>=out(i-step) then + out(i) = inp(i); + else + out(i) = out(i-step); + end + end + else + magVec = abs(inp); + phaseVec = atan(imag(inp),real(inp)); + + // phase - first compare absolute value; then give priority to positive phases + + prevMag = magVec(startIndex); + prevPhase = phaseVec(startIndex); + + for i=(startIndex+step):step:endIndex + if isnan(out(i-step)) then + out(i) = inp(i); + prevMag = magVec(i); + prevPhase = phaseVec(i); + elseif magVec(i)>prevMag then + out(i) = inp(i); + prevMag = magVec(i); + prevPhase = phaseVec(i); + elseif magVec(i)<prevMag then + out(i) = out(i-step); + else + if phaseVec(i)>prevPhase then + out(i) = inp(i); + prevMag = magVec(i); + prevPhase = phaseVec(i); + else + out(i) = out(i-step); + end + end + end + end + + +endfunction diff --git a/macros/cummin.bin b/macros/cummin.bin Binary files differnew file mode 100644 index 0000000..860597d --- /dev/null +++ b/macros/cummin.bin diff --git a/macros/cummin.sci b/macros/cummin.sci new file mode 100644 index 0000000..fccbd52 --- /dev/null +++ b/macros/cummin.sci @@ -0,0 +1,204 @@ +function M = cummin(varargin) + // Cumulative minimum + // + // Calling Sequence + // M = cummin(A) + // returns the cumulative minimum of the arguments of A. The dimension + // of M is same as the dimension of A. If A is a 2D matrix, the operation + // is performed along the columns. For a hypermatrix, the operation is + // performed along the first non-zero dimension + // M = cummin(A,dim) + // The operation is performed along the dimension specified by dim + // M = cummin(_,direction) + // direction specifies as the direction of operation + // + // Parameters + // A - real|complex numbers - vector|matrix + // Input Array + // For complex elements, cummin compares the magnitude of elements. If + // the magnitude are same, phase angles are compared. + // dim - positive integer - scalar + // Dimension to operate along + // If no dimension is specified, then the default value is the first + // array dimension whose value is greater than 1 + // direction - string flag - 'forward' (default) or 'reverse' + // Direction of cumulation + // If the direction is forward, cummin works from 1 to end of the active + // dimension. Otherwise, it works in the opposite sense + // + // Examples + // 1) Cumulative minimum values in a vector + // v = [8 9 1 10 6 1 3 6 10 10] + // M = cummin(v) + // + // Expected output: [8 8 1 1 1 1 1 1 1 1] + // + // Authors + // Ayush Baid + // + // See Also + // cummax | cumprod | cumsum | max | min + + + + [numOutArgs,numInArgs] = argn(0); + + // ** Checking number of arguments + + if numInArgs<1 | numInArgs>3 then + msg = "cummin: Wrong number of input argument; 1-6 expected"; + error(77,msg); + end + + if numOutArgs~=1 then + msg = "cummin: Wrong number of output argument; 1 expected"; + error(78,msg); + end + + + // ** Parsing input args ** + + // defining default arguments + isForward = %t; + dim = []; + directionArg = ""; + A = varargin(1); + + // A should contain numeric entries + if ~(type(A)==1 | type(A)==8 | type(A)==17) then + msg = "cummin: Wrong type for argument #1 (A); Real or complex entries expected "; + error(53,msg); + end + + if numInArgs>1 then + temp = varargin(2); + if type(temp)==10 then + // it is the direction argument + directionArg = temp; + elseif type(temp)==1 | type(temp)==8 then + dim = int(temp); + else + msg = "cummin: Wrong type for argument #2; Either dim (integer) or direction (string) expected"; + error(53,msg); + end + end + + if numInArgs>2 then + directionArg = varargin(3); + if type(directionArg)~=10 then + msg = "cummin: Wrong type for argument #3 (direction); String expected"; + error(53,msg); + end + end + + if isempty(dim) then + dimArray = 1:ndims(A); + dim = find(size(A)~=1,1); + end + + // additional checks on dim + if size(A,dim)==1 then + M = A; + return + end + + // extracting direction + if strcmpi(directionArg,"reverse")==0 then + isForward = %f; + elseif strcmpi(directionArg,"forward")==0 then + isForward = %t; + elseif strcmpi(directionArg,"")~=0 then + msg = "cummin: Wrong value for argument #3 (direction)"; + error(53,msg); + end + + sizeA = size(A); + sizeDim = size(A,dim); + + // restructuring A into a 3D matrix with the specified dimension as the middle elements + + leftSize = prod(sizeA(1:dim-1)); + rightSize = prod(sizeA(dim+1:$)); + middleSize = sizeDim; + + + A_ = matrix(A,[leftSize,middleSize,rightSize]); + M_ = zeros(leftSize,middleSize,rightSize); + + for i=1:leftSize + for j=1:rightSize + M_(i,:,j) = cumminVec(A_(i,:,j),isForward); + end + end + + M = matrix(M_,sizeA); + +endfunction + + +function out = cumminVec(inp,isForward) + // performs cummin on vector inputs + + if isForward then + startIndex=1; + endIndex = length(inp); + step = 1; + else + startIndex=length(inp); + endIndex = 1; + step = -1; + end + + if isreal(inp,1e-7) then + inp = real(inp); + end + + out = zeros(size(inp,1),size(inp,2)); + out(startIndex) = inp(startIndex); + + if isreal(inp) then + for i=(startIndex+step):step:endIndex + + if isnan(out(i-step)) then + out(i) = inp(i); + elseif inp(i)<=out(i-step) then + out(i) = inp(i); + else + out(i) = out(i-step); + end + end + else + magVec = abs(inp); + phaseVec = atan(imag(inp),real(inp)); + + // phase - first compare absolute value; then compare phase in [-pi,pi] + + prevMag = magVec(startIndex); + prevPhase = phaseVec(startIndex); + + + for i=(startIndex+step):step:endIndex + if isnan(out(i-step)) then + out(i) = inp(i); + prevMag = magVec(i); + prevPhase = phaseVec(i); + elseif magVec(i)<prevMag then + out(i) = inp(i); + prevMag = magVec(i); + prevPhase = phaseVec(i); + elseif magVec(i)>prevMag then + out(i) = out(i-step); + else + if phaseVec(i)<prevPhase then + out(i) = inp(i); + prevMag = magVec(i); + prevPhase = phaseVec(i); + else + out(i) = out(i-step); + end + end + end + end + + +endfunction diff --git a/macros/db.bin b/macros/db.bin Binary files differnew file mode 100644 index 0000000..e46766c --- /dev/null +++ b/macros/db.bin diff --git a/macros/db.sci b/macros/db.sci new file mode 100644 index 0000000..7b5f043 --- /dev/null +++ b/macros/db.sci @@ -0,0 +1,139 @@ +function [dboutput] = db(X, SignalType, R) + +//dboutput = db(X) converts the elements of the vector or matrix X to decibels (dB). The elements of X are voltage measurements across a resistance of 1 ohm. + +//dboutput = db(X,SignalType) specifies the signal type represented by the elements of X as 'voltage' or 'power'. The entries are not case sensitive. The default value is 'voltage'. For voltage measurements, the resistance defaults to 1 ohm. If you specify SignalType as 'power', the elements of X must be nonnegative. + +//dboutput = db(X,R) specifies the resistance R for voltage measurements. You can specify a resistance only when the signal measurements are voltages. + +//dboutput = db(X,'voltage',R) specifies the resistance R for voltage measurements. This syntax is equivalent to db(X,R). + +//X - Signal measurements. X must be a vector or matrix. If the elements of X are power measurements, all elements must be nonnegative. + +//SignalType - Type of signal measurements. Valid entries for SignalType are 'voltage' or 'power'. The entries are not case sensitive. If you specify SignalType as 'power', the elements of X must be nonnegative. +//Default: 'voltage' + +//R - Resistive load in ohms. You can specify resistance only when the SignalType is 'voltage'. +//Default: 1 + +//Author : Pratik Kapoor +//Modified to remove disp(SignalType) at line 28 +//Modified to handle imaginary, negative power, and zero input +//Modifications by Debdeep Dey +funcprot(0); + +[lhs, rhs] = argn(0) + +[nr, nc] = size(X); +dboutput = zeros(nr, nc); + +//disp(SignalType); +if rhs == 1 then + + R = 1; + for i = 1: nr + for j = 1: nc + //handle zero i/p + if (type(X(i, j)))==10 then + dboutput(i, j) = 10 * log10((ascii(X(i, j)) * ascii(X(i, j))) / R); + elseif abs(X(i,j))>0 then + dboutput(i, j) = 10 * log10((abs(X(i, j)) * abs(X(i, j))) / R); + + else + dboutput(i, j) = -%inf; + end + end + end + +elseif rhs == 2 then + + if (SignalType == 'voltage' | SignalType == 'Voltage' | SignalType == 'VOLTAGE') then + R = 1; + for i = 1: nr + for j = 1: nc + if (type(X(i, j)))==10 then + dboutput(i, j) = 10 * log10((ascii(X(i, j)) * ascii(X(i, j))) / R); + elseif abs(X(i,j))>0 then + dboutput(i, j) = 10 * log10((abs(X(i, j)) * abs(X(i, j))) / R); + else + dboutput(i, j) = -%inf; + end + end + end + + elseif(SignalType == 'power' | SignalType == 'Power' | SignalType == 'POWER') then[i, j] = size(X); + + R = 1; + for i = 1: nr + for j = 1: nc + if (type(X(i, j)))==10 then + dboutput(i, j) = 10 * log10((ascii(X(i, j)) * ascii(X(i, j))) / R); + elseif (X(i, j)) > 0 then + dboutput(i, j) = 10 * log10(X(i, j)); + elseif(X(i,j)==0) then + dboutput(i,j)=-%inf; + else //function should not accept negative values for power + + error("Power cannot be negative") + end + end + + end + + elseif(type(SignalType == 1)) + R = SignalType; + for i = 1: nr + for j = 1: nc + if (type(X(i, j)))==10 then + dboutput(i, j) = 10 * log10((ascii(X(i, j)) * ascii(X(i, j))) / R); + elseif abs(X(i,j))>0 then + dboutput(i, j) = 10 * log10((abs(X(i, j)) * abs(X(i, j))) / R); + else + dboutput(i,j)=-%inf; + end + end + end + end + +elseif rhs == 3 then + + if (type(SignalType) == 1) then + error('Incorrect argument. Argument 2 specifies the signal type represented by elements of X'); + + elseif(SignalType == 'voltage' | SignalType == 'Voltage' | SignalType == 'VOLTAGE') then + for i = 1: nr + for j = 1: nc + if (type(X(i, j)))==10 then + dboutput(i, j) = 10 * log10((ascii(X(i, j)) * ascii(X(i, j))) / R); + elseif abs(X(i,j))>0 then + dboutput(i, j) = 10 * log10((abs(X(i, j)) * abs(X(i, j))) / R); + else + dboutput(i,j)=-%inf; + end + end + end + + elseif(SignalType == 'power' | SignalType == 'Power' | SignalType == 'POWER') then + + + for i = 1: nr + for j = 1: nc + if (type(X(i, j)))==10 then + dboutput(i, j) = 10 * log10((ascii(X(i, j)) * ascii(X(i, j))) / R); + elseif (X(i, j)) > 0 then + dboutput(i, j) = 10 * log10(X(i, j)); + elseif(X(i,j)==0) then + dboutput(i,j)=-%inf; + else + error("Power cannot be negative"); + end + end + + + + end + end + + end + + endfunction diff --git a/macros/db2pow.bin b/macros/db2pow.bin Binary files differnew file mode 100644 index 0000000..d369ded --- /dev/null +++ b/macros/db2pow.bin diff --git a/macros/db2pow.sci b/macros/db2pow.sci new file mode 100644 index 0000000..acc83d6 --- /dev/null +++ b/macros/db2pow.sci @@ -0,0 +1,29 @@ +function [y] = db2pow(ydb) + +//This function calculates the power value in Watt of the decibel value ydb passed as the parameter +//Calling sequence +//function [y] = mag2pow(ydb) +//Parameters +//ydb : scalar or vector or matrix or N-D array +//Examples +//ydb = 20 +//y=mag2pow(ydb) +//Authors +//Ishita Bedi +//Modified to handle char i/p by Debdeep Dey + +funcprot(0); +rhs = argn(2) +if(rhs~=1) +error("Wrong number of input arguments.") +end +//This statement calculates the power in Watt of ydb which was in decibel using ydb = 10log (y) -- log base 10 +if(type(ydb)~=10) then + y = 10.^(ydb/10); +else + y1=ascii(y); + y = 10.^(y1/10); +end + +endfunction + diff --git a/macros/dctmtx.bin b/macros/dctmtx.bin Binary files differnew file mode 100644 index 0000000..68472e5 --- /dev/null +++ b/macros/dctmtx.bin diff --git a/macros/dctmtx.sci b/macros/dctmtx.sci new file mode 100644 index 0000000..e0c2354 --- /dev/null +++ b/macros/dctmtx.sci @@ -0,0 +1,25 @@ +function [y]= dctmtx(n) + +// Performs Direct Cosine Transformation +// Calling Sequence +// [y]=dctmtx(n) +// Parameters +// n: Real scalar integer greater than or equal to 1 +// Description +// This is an Octave function +// dctmtx(n) returns a Discrete cosine transform matrix of order n-by-n. It is useful for jpeg image compression. D*A is the DCT of the columns of A and D'*A is the inverse DCT of the columns of A (when A is n-by-n). +// Examples +// 1. dctmtx(2) +// ans = [0.70711 0.70711; 0.70711 -0.70711] +// 2. dctmtx(3) +// ans = [5.7735e-01 5.7735e-01 5.7735e-01; +// 7.0711e-01 4.9996e-17 -7.0711e-01; +// 4.0825e-01 -8.1650e-01 4.0825e-01] + +funcprot(0); +rhs=argn(2); +if (rhs<1) then + error ("Wrong number of input arguments.") +else [y]=callOctave("dctmtx",n) +end +endfunction diff --git a/macros/decimate.bin b/macros/decimate.bin Binary files differnew file mode 100644 index 0000000..ea34ac2 --- /dev/null +++ b/macros/decimate.bin diff --git a/macros/decimate.sci b/macros/decimate.sci new file mode 100644 index 0000000..5a2e428 --- /dev/null +++ b/macros/decimate.sci @@ -0,0 +1,47 @@ +function y = decimate(x, q, n, ftype) +rhs = argn(2) +if(rhs<2 | rhs>4) +error("Wrong number of input arguments.") +elseif(~(sum(length(q)==1) & q == fix (q) & q > 0)) +error("Parameter 2 must be a positive integer.") +end +if (nargin < 3) +ftype = "iir" +n = [] +elseif (nargin < 4) +if (ischar (n)) +ftype = n +n = [] +else +ftype = "iir" +end +end + +if (~ and(strcmp (ftype, {"fir", "iir"}))) +error("Filter type must be either fir or iir.") +end + +fir = strcmp (ftype, "fir") +if (isempty (n)) +if (fir) +n = 30 +else +n = 8 +end +end + +if(~(sum(length(n)==1) & n == fix (n) & n > 0)) +error("N must be a positive integer.") +end +select(rhs) +case 2 then +y = callOctave("decimate", x, q) +case 3 then +y = callOctave("decimate", x, q, n) +case 4 then +y = callOctave("decimate", x, q, n, ftype) +end +endfunction + + + diff --git a/macros/decimate.sci~ b/macros/decimate.sci~ new file mode 100644 index 0000000..376241a --- /dev/null +++ b/macros/decimate.sci~ @@ -0,0 +1,48 @@ +function y = decimate(x, q, n, ftype) +rhs = argn(2) +if(rhs<2 | rhs>4) +error("Wrong number of input arguments.") +end +elseif(~(sum(length(q)==1) & q == fix (q) & q > 0)) +error("Parameter 2 must be a positive integer.") +end +if (nargin < 3) +ftype = "iir" +n = [] +elseif (nargin < 4) +if (ischar (n)) +ftype = n +n = [] +else +ftype = "iir" +end +end + +if (~ and(strcmp (ftype, {"fir", "iir"}))) +error("Filter type must be either fir or iir.") +end + +fir = strcmp (ftype, "fir") +if (isempty (n)) +if (fir) +n = 30 +else +n = 8 +end +end + +if(~(sum(length(n)==1) & n == fix (n) & n > 0)) +error("N must be a positive integer.") +end +select(rhs) +case 2 then +y = callOctave("decimate", x, q) +case 3 then +y = callOctave("decimate", x, q, n) +case 4 then +y = callOctave("decimate", x, q, n, ftype) +end +endfunction + + + diff --git a/macros/dftmtx.bin b/macros/dftmtx.bin Binary files differnew file mode 100644 index 0000000..df1c875 --- /dev/null +++ b/macros/dftmtx.bin diff --git a/macros/dftmtx.sci b/macros/dftmtx.sci new file mode 100644 index 0000000..39ef91f --- /dev/null +++ b/macros/dftmtx.sci @@ -0,0 +1,23 @@ +function [d]=dftmtx(n) + +// Computes Discrete n-by-n Fourier transformation matrix +// Calling Sequence +// [d]=dftmtx(n) +// Parameters +// n: Real positive scalar number +// Description +// This is an Octave function +// This fuction gives a complex matrix of values whose product with a vector produces the discrete Fourier transform. This can also be achieved by directly using the fft function i.e. y=fft(x) is same as y=A*x where A=dftmtx(n). +// Examples +// 1. dftmtx(3) +// ans = 1.00000 + 0.00000i 1.00000 + 0.00000i 1.00000 + 0.00000i +// 1.00000 + 0.00000i -0.50000 - 0.86603i -0.50000 + 0.86603i +// 1.00000 - 0.00000i -0.50000 + 0.86603i -0.50000 - 0.86603i + +funcprot(0); +rhs=argn(2); +if (rhs<1) then + error("Wrong number of input arguments.") +else d= callOctave("dftmtx",n) +end +endfunction diff --git a/macros/diric.bin b/macros/diric.bin Binary files differnew file mode 100644 index 0000000..47eaa34 --- /dev/null +++ b/macros/diric.bin diff --git a/macros/diric.sci b/macros/diric.sci new file mode 100644 index 0000000..077bb13 --- /dev/null +++ b/macros/diric.sci @@ -0,0 +1,24 @@ +function [y]= diric(x,n) + +// Calculates the dirichlet function +// Calling Sequence +// [y]=diric(x,n) +// Parameters +// x: Real valued vector or matrix +// n: Real positive integer or complex integer +// Description +// This is an Octave function +// y=diric(x,n) returns the dirichlet function values of parameter x. +// Examples +// 1. diric([1 2 3],3) +// ans= 0.6935349 0.0559021 -0.3266617 +// 2. diric(1,2) +// ans= 0.8775826 + +funcprot(0); +rhs=argn(2); +if (rhs~=2) then + error ("Wrong number of input arguments.") +else y= callOctave("diric",x,n) +end +endfunction diff --git a/macros/downsample.bin b/macros/downsample.bin Binary files differnew file mode 100644 index 0000000..149a5cb --- /dev/null +++ b/macros/downsample.bin diff --git a/macros/downsample.sci b/macros/downsample.sci new file mode 100644 index 0000000..9bd1591 --- /dev/null +++ b/macros/downsample.sci @@ -0,0 +1,31 @@ +function y = downsample (x, n, phase) +//This function downsamples the signal by selecting every nth element. +//Calling Sequence +//y = downsample (x, n) +//y = downsample (x, n, phase) +//Parameters +//x: scalar, vector or matrix of real or complex numbers +//n: real number or vector +//phase: integer value, 0 <= phase <= (n - 1), default value 0, or logical +//Description +//This is an Octave function. +//This function downsamples the signal by selecting every nth element supplied as parameter 2. If x is a matrix, the function downsamples every column. +//If the phase is specified, every nth element is selected starting from the sample phase. The default phase is 0. +//Examples +//downsample([1,2,4],2) +//ans = +// 1. 4. + +funcprot(0); +rhs = argn(2) +if(rhs<2 | rhs>3) +error("Wrong number of input arguments.") +end + + select(rhs) + case 2 then + y = callOctave("downsample",x,n) + case 3 then + y = callOctave("downsample",x,n,phase) + end +endfunction diff --git a/macros/dutycycle.bin b/macros/dutycycle.bin Binary files differnew file mode 100644 index 0000000..710c058 --- /dev/null +++ b/macros/dutycycle.bin diff --git a/macros/dutycycle.sci b/macros/dutycycle.sci new file mode 100755 index 0000000..1938453 --- /dev/null +++ b/macros/dutycycle.sci @@ -0,0 +1,455 @@ +function [d, initialcross, finalcross, nextcross, midreference]= dutycycle(x, varargin)
+
+
+ // This function estimate duty cycle of bilevel waveform pulses.
+ // Calling Sequence
+ // d=dutycycle(x)
+ // d= dutycycle(X,Fs)
+ // d=dutycycle(x, t)
+ // d= dutycycle(tau, prf)
+ // d=dutycycle (x, t, 'Polarity', pol)
+ // d=dutycycle(x, t, 'MidPercentReferenceLevel', N )
+ // d=dutycycle(x, t, 'Tolerance', M)
+ // d=dutycycle(x, t,'StateLevels', O)
+
+ // [d initialcross finalcross nextcross midreference]=dutycycle(x)
+ // [d initialcross finalcross nextcross midreference]=dutycycle(x, t)
+ // [d initialcross finalcross nextcross midreference]=dutycycle(x, Fs)
+ // [d initialcross finalcross nextcross midreference]=dutycycle(x, t, 'Polarity', pol)
+ // [d initialcross finalcross nextcross midreference]=dutycycle(x, t, 'MidPercentReferenceLevel', N )
+ // [d initialcross finalcross nextcross midreference]= dutycycle(x, t, 'Tolerance', M)
+ // [d initialcross finalcross nextcross midreference]= dutycycle(x, t,'StateLevels', O)
+ // [d initialcross finalcross nextcross midreference]= dutycycle(x, t,'StateLevels', O, 'fig', on or off)
+ //
+ // Parameters
+ // x: real vector.
+ // Fs: specifies the sample rate, Fs, as a positive scalar, where the first sample instant corresponds to a time of zero.
+ // t: defiene instant sample time t as vector with same length of x, or specifies the sample rate, t, as a positive scalar.
+ // tau: define real scalar input pulse width TAU (in seconds).
+ // prf: pulse repetition frequency PRF (in Hz). The product of TAU and PRF must be less than or equal to 1.
+ // Polarity: specify the polarity of the pulse as either 'positive' or 'negative', where the default value is 'positive'.
+ // MidPercentReferenceLevel: specify the mid percent reference leves as a percentage, default value of N is 50.
+ // Tolerance: define the tolerance value as real scaler value, where default value of M is 2.0.
+ // StateLevels: define the lower and upper state levels as two element real vector.
+ // fig: specify the logical input value to display figure as one of 'on' or 'off', where the default input in 'off'.
+ // d: returns the ratio of the pulse width to the pulse period for each positive-polarity pulse
+ // initialcross: returns a vector of initial cross values of bilevel waveform transitions X
+ // finalcross: returns a vector of final cross values of bilevel waveform transitions X
+ // nextcross: returns a vector of next cross values of bilevel waveform transitions X
+ // midreference: return mid reference value corrosponding to mid percenr reference value.
+
+ // Examples
+ // x=[1.2, 5, 10, -20, 12]
+ //t=1:length(x)
+ //d=dutycycle(x, t)
+ // See also
+ // Authors
+ // Jitendra Singh
+
+
+ // run statelevels and midcross function before running risetime function.
+
+
+
+
+ if or(type(x)==10) then
+ error ('Input arguments must be double.')
+end
+
+
+
+ if sum(length(x))==1 & length(varargin)==0 then
+ error('You need exactly two inputs specified when TAU is a scalar.')
+ elseif sum(length(x))==1 & type(varargin(1))==1 then
+
+
+ if length(argn(1))>1 then
+ error('Too many outputs specified when TAU is a scalar.');
+ end
+
+ dd=x*varargin(1);
+
+ if or(dd>1) then
+
+ error('The product of TAU and PRF should be less than or equal to 1.')
+ else
+ d=x*varargin(1);
+ end
+
+ else
+
+
+ if length(varargin)==0 then
+ varargin=varargin;
+ end
+
+ sindex=[];
+if length(varargin)>=1 then
+a=1;
+for i=1:length(varargin)
+ if type(varargin(i))==10 then
+ sindex(a)=i;
+ a=a+1;
+ end
+end
+end
+
+
+pol='POSITIVE';
+polidx=[];
+fig='OFF'
+index_on=[];
+if (~isempty(sindex)) then
+ for j=1:length(sindex)
+ select convstr(varargin(sindex(j)), 'u') // validating input variable names
+ case {'STATELEVELS'}
+ if length(varargin) <=sindex(j) then
+ error(strcat(['parameter StateLevels required a value']));
+ end
+
+ if type(varargin(sindex(j)+1))==1 then
+ levels=varargin(sindex(j)+1);
+
+ elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='MIDPERCENTREFERENCELEVEL' | convstr(varargin(sindex(j)+1),'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='FIG' | convstr(varargin(sindex(j)+1), 'u')=='POLARITY' then
+
+ error('parameter StateLevels required a value.')
+
+
+ elseif type(varargin(sindex(j)+1))==10 then
+
+ error('Expected STATELEVELS to be one of these types: double, Instead its type was char.')
+ end
+
+ case {'MIDPERCENTREFERENCELEVEL'}
+ if length(varargin) <=sindex(j) then
+ error(strcat(['parameter MidPercentRefernceLevel required a value.']));
+ end
+
+ if type(varargin(sindex(j)+1))==1 then
+ midpercentval= varargin(sindex(j)+1);
+ elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='STATELEVELS' | convstr(varargin(sindex(j)+1),'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='FIG' | convstr(varargin(sindex(j)+1), 'u')=='POLARITY' then
+ error('parameter MidPercentRefernceLevel required a value.')
+
+ elseif type(varargin(sindex(j)+1))==10 then
+ error('Expected MidPercentRefernceLevel to be one of these types: double, Instead its type was char.')
+ end
+
+
+
+
+ case {'TOLERANCE'}
+
+ if length(varargin) <=sindex(j) then
+ error(strcat(['parameter Tolerance required a value"]));
+
+ elseif type(varargin(sindex(j)+1))==1 then
+ tolerance= varargin(sindex(j)+1);
+
+ elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')== 'STATELEVELS' | convstr(varargin(sindex(j)+1), 'u')== 'MIDPERCENTREFERENCELEVEL' | convstr(varargin(sindex(j)+1), 'u')=='FIG' | convstr(varargin(sindex(j)+1), 'u')=='POLARITY' then
+
+ error('parameter Tolerance required a value.');
+
+ elseif type(varargin(sindex(j)+1))==10 then
+
+ error('Expected Tolerance to be one of these types: double, Instead its type was char.');
+ end
+
+
+
+ case {'FIG'}
+
+ if length(varargin) <=sindex(j) then
+ error(strcat(['parameter fig required a value.']));
+ end
+
+ if type(varargin(sindex(j)+1))==1 then
+ error ('Expected fig to match one of these strings: on or off');
+
+ elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='STATELEVELS' | convstr(varargin(sindex(j)+1), 'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='MIDPERCENTREFERENCELEVEL' | convstr(varargin(sindex(j)+1), 'u')=='POLARITY' then
+ error('parameter fig required a value.')
+ else
+ fig= convstr(varargin(sindex(j)+1), 'u');
+
+ end
+
+
+ if fig == 'OFF' | fig == 'ON' then
+ else
+ error('Expected fig to match one of these strings: on or off');
+ end
+
+
+
+ case{'ON'}
+ index_on=sindex(j)
+ if length(varargin) == 1 then
+ error ('Unexpected input.')
+
+
+ elseif type(varargin(sindex(j)-1))==1 then
+ error ('Unexpected input.');
+ elseif convstr(varargin(sindex(j)-1), 'u')~='FIG' then
+ error('Unexpected input');
+ end
+
+ case{'OFF'}
+
+ if length(varargin) == 1 then
+ error ('Unexpected input.')
+
+
+ elseif type(varargin(sindex(j)-1))==1 then
+ error ('Unexpected input.');
+ elseif convstr(varargin(sindex(j)-1), 'u')~='FIG' then
+ error('Unexpected input');
+ end
+
+
+
+
+ case{'POLARITY'}
+
+ if length(varargin)<=sindex(j) then
+ error ('Parameter polarity requires a value.')
+ end
+
+ if type( varargin(sindex(j)+1))==1 then
+ error ('POLARITY must be either ''Positive'' or ''Negative''.')
+
+ elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')== 'STATELEVELS' | convstr(varargin(sindex(j)+1), 'u')== 'MIDPERCENTREFERENCELEVEL' | convstr(varargin(sindex(j)+1), 'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='FIG' then
+
+ error ('Parameter polarity requires a value.')
+
+
+ elseif convstr(varargin(sindex(j)+1), 'u') ~= 'POSITIVE' & convstr(varargin(sindex(j)+1), 'u')~= 'NEGATIVE' then
+
+ error ('POLARITY must be either ''Positive'' or ''Negative''.');
+
+ else
+ polidx=sindex(j);
+ end
+
+
+ case {'POSITIVE'}
+
+ if j==1 then
+ error(strcat(['Unexpected option:', " ", varargin(sindex(j))]));
+ elseif convstr(varargin(sindex(j)-1), 'u') ~= 'POLARITY'
+ error(strcat(['Unexpected option:', " ", varargin(sindex(j))]));
+ else
+ polinputidx= sindex(j);
+
+ pol= convstr(varargin (sindex(j)), 'u') ;
+ end
+
+ case {'NEGATIVE'}
+
+ if j==1 then
+ error(strcat(['Unexpected option:', " ", varargin(sindex(j))]));
+ elseif convstr(varargin(sindex(j)-1), 'u') ~= 'POLARITY'
+ error(strcat(['Unexpected option:', " ", varargin(sindex(j))]));
+ else
+ polinputidx= sindex(j);
+
+ pol= convstr(varargin (sindex(j)), 'u') ;
+ end
+
+ else
+ error(strcat(['Invalid optional argument'," ", varargin(sindex(j))]));
+ end // switch
+ end // for
+ end // if
+//
+
+if length(index_on)>0 then
+ varargin(index_on)='OFF';
+end
+
+
+if length(polidx)>0 then
+ varargin(polidx)=null();
+ varargin(polinputidx-1)=null();
+end
+
+
+ [crossval midref levels t tolerance]= midcross(x, varargin(:));
+
+ upperbound= levels(2)- (tolerance/100)*(levels(2)-levels(1));
+ mostupperbound=levels(2)+ (tolerance/100)*(levels(2)-levels(1));
+ lowerbound= levels(1)+ (tolerance/100)*(levels(2)-levels(1));
+ mostlowerbound=levels(1)- (tolerance/100)*(levels(2)-levels(1));
+
+ int_pos=[];
+ final_pos=[];
+ int_neg=[];
+ final_neg=[];
+ nextcross_pos=[];
+nextcross_neg=[];
+
+if length(crossval)>=2 then
+
+if x(1)>midref then
+
+ int_pos=crossval(2:2:$);
+ final_pos=crossval(3:2:$);
+ int_neg=crossval(1:2:$);
+ final_neg=crossval(2:2:$);
+
+else
+
+ int_pos=crossval(1:2:$);
+ final_pos=crossval(2:2:$);
+ int_neg=crossval(2:2:$);
+ final_neg=crossval(3:2:$);
+
+end
+
+
+
+
+if length(int_pos)>=2 then
+ nextcross_pos=int_pos(2:$);
+end
+
+if length(int_neg)>=2 then
+ nextcross_neg=int_neg(2:$);
+ end
+
+
+
+
+if length(int_pos)>length(final_pos) then
+ int_pos=int_pos(1:($-1))
+elseif length(int_neg)>length(final_neg) then
+ int_neg=int_neg(1:($-1))
+ end
+
+
+
+
+
+
+ if length(int_pos)>length(nextcross_pos) then
+ int_pos=int_pos(1:($-1))
+
+ end
+ if length(final_pos)>length(nextcross_pos)
+ final_pos=final_pos(1:($-1))
+
+ end
+
+ if length(int_neg)>length(nextcross_neg) then
+ int_neg=int_neg(1:($-1));
+ end
+
+ if length(final_neg)>length(nextcross_neg) then
+ final_neg=final_neg(1:($-1));
+ end
+
+
+end
+
+
+
+d=[];
+
+
+ if pol=='POSITIVE' then
+
+ initialcross=int_pos;
+ finalcross=final_pos;
+ nextcross=nextcross_pos;
+
+ d=(finalcross-initialcross)./(nextcross-initialcross);
+
+ else
+
+ initialcross=int_neg;
+ finalcross=final_neg
+ nextcross=nextcross_neg;
+ d=(finalcross-initialcross)./(nextcross-initialcross);
+
+ end
+
+
+
+
+ midreference=midref;
+
+
+//midreference=midref;
+
+ if fig=='ON' then // if the defined output is only 1, the it will provide the graphical representation of //levels
+
+ if length(d)==0 then
+
+ plot(t,x, 'LineWidth',1, 'color', 'black')
+ // xtitle('', 'Time (second)','Level (Volts)' );
+ plot(t,midreference * ones(1, length(t)),'-r', 'LineWidth',0.5)
+
+ plot(t,mostupperbound * ones(1, length(t)),'--r', 'LineWidth',0.5)
+
+ plot(t,levels(2) * ones(1, length(t)),'--k', 'LineWidth',0.5)
+
+ plot(t,upperbound * ones(1, length(t)),'--r', 'LineWidth',0.5)
+
+ plot(t,lowerbound *ones(1, length(t)),'--g', 'LineWidth',0.5)
+
+ plot(t,levels(1) * ones(1, length(t)),'--k', 'LineWidth',0.5)
+
+ plot(t,mostlowerbound * ones(1, length(t)),'--g', 'LineWidth',0.5)
+
+ xlabel("Time (second)", "fontsize",3, "color", "black" )
+ ylabel("Level (Volts)", "fontsize",3, "color", "black" )
+
+
+ legends(["Signal"; "upper boundary"; "upper state"; "lower boundary"; "mid reference"; "upper boundary"; "lower state"; "lower boundary"], [[1;1], [5;2], [1;2], [5;2], [5;1], [3;2], [1;2], [3;2]], opt='?')
+
+
+ else
+
+ plot(t,x, 'LineWidth',1, 'color', 'black')
+
+ plot(t,midreference * ones(1, length(t)),'-g', 'LineWidth',0.5)
+
+
+ //n=length(finalcross);
+
+
+// rects=[initialcross(1:2:$); levels(2)*ones(d(1:2:$)); p(1:2:$); (levels(2)-levels(1))*ones(p(1:2:$))]
+//
+//
+// col=-10*ones(p(1:2:$));
+
+ midc=[nextcross, initialcross, finalcross];
+ midcross=gsort(midc, 'c','i' )
+
+ plot(midcross, midreference*ones(midcross), "r*", 'MarkerSize',15);
+ plot(t,mostupperbound * ones(1, length(t)),'--r', 'LineWidth',0.5)
+
+ plot(t,levels(2) * ones(1, length(t)),'--k', 'LineWidth',0.5)
+
+ plot(t,upperbound * ones(1, length(t)),'--r', 'LineWidth',0.5)
+
+ plot(t,midreference * ones(1, length(t)),'-r', 'LineWidth',0.5)
+
+ plot(t,lowerbound *ones(1, length(t)),'--g', 'LineWidth',0.5)
+
+ plot(t,levels(1) * ones(1, length(t)),'--k', 'LineWidth',0.5)
+
+ plot(t,mostlowerbound * ones(1, length(t)),'--g', 'LineWidth',0.5)
+
+ // xrects(rects, col);
+
+ xlabel("Time (second)", "fontsize",3, "color", "black" )
+ ylabel("Level (Volts)", "fontsize",3, "color", "black" )
+
+
+ legends([ "Signal"; "mid cross"; "upper boundary"; "upper state"; "lower boundary"; "mid reference"; "upper boundary"; "lower state"; "lower boundary"], [ [1;1], [-10;5], [5;2], [1;2], [5;2], [5;1], [3;2],[1;2], [3;2]], opt='?')
+
+ end
+end
+end
+//
+//
+endfunction
diff --git a/macros/ellip.bin b/macros/ellip.bin Binary files differnew file mode 100644 index 0000000..2fda3a0 --- /dev/null +++ b/macros/ellip.bin diff --git a/macros/ellip.sci b/macros/ellip.sci new file mode 100644 index 0000000..264d9fe --- /dev/null +++ b/macros/ellip.sci @@ -0,0 +1,60 @@ +function [a, b, c, d] = ellip (n, rp, rs, w, varargin) +//This function generates an elliptic or Cauer filter with rp dB of passband ripple and rs dB of stopband attenuation. +//Calling Sequence +//[a, b] = ellip (n, rp, rs, wp) +//[a, b] = ellip (n, rp, rs, wp, "high") +//[a, b] = ellip (n, rp, rs, [wl, wh]) +//[a, b] = ellip (n, rp, rs, [wl, wh], "stop") +//[a, b, c] = ellip (…) +//[a, b, c, d] = ellip (…) +//[…] = ellip (…, "s") +//Parameters +//n: positive integer value +//rp: non negative scalar value +//rs: non negative scalar value +//w: scalar or vector, all elements should be in the range [0,1] +//Description +//This is an Octave function. +//This function generates an elliptic or Cauer filter with rp dB of passband ripple and rs dB of stopband attenuation. +//[b, a] = ellip(n, Rp, Rs, Wp) indicates low pass filter with order n, Rp decibels of ripple in the passband and a stopband Rs decibels down and cutoff of pi*Wp radians. If the fifth argument is high, then the filter is a high pass filter. +//[b, a] = ellip(n, Rp, Rs, [Wl, Wh]) indictaes band pass filter with band pass edges pi*Wl and pi*Wh. If the fifth argument is stop, the filter is a band reject filter. +//[z, p, g] = ellip(...) returns filter as zero-pole-gain. +//[...] = ellip(...,’s’) returns a Laplace space filter, w can be larger than 1. +//[a, b, c, d] = ellip(...) returns state-space matrices. +//Examples +//[a,b]=ellip(2, 0.5, 0.7, [0.3,0.4]) +//a = +// 0.88532 -1.58410 2.40380 -1.58410 0.88532 +//b = +// 1.00000 -1.78065 2.68703 -1.75725 0.97454 + +rhs = argn(2) +lhs = argn(1) +if(rhs>3) +[rows,columns] = size(w) +end +if(rhs>6 | rhs<4) +error("Wrong number of input arguments.") +end +if(lhs>4 | lhs<2) +error("Wrong number of output arguments.") +end + +select (rhs) + case 4 then + if (lhs==2) [a,b] = callOctave("ellip",n, rp, rs, w) + elseif (lhs==3) [a,b,c] = callOctave("ellip",n, rp, rs, w) + elseif (lhs==4) [a,b,c,d] = callOctave("ellip",n, rp, rs, w) + end + case 5 then + if (lhs==2) [a,b] = callOctave("ellip",n, rp, rs, w, varargin(1)) + elseif (lhs==3) [a,b,c] = callOctave("ellip",n, rp, rs, w, varargin(1)) + elseif (lhs==4) [a,b,c,d] = callOctave("ellip",n, rp, rs, w, varargin(1)) + end + case 6 then + if (lhs==2) [a,b] = callOctave("ellip",n, rp, rs, w, varargin(1), varargin(2)) + elseif (lhs==3) [a,b,c] = callOctave("ellip",n, rp, rs, w,varargin(1), varargin(2)) + elseif (lhs==4) [a,b,c,d] = callOctave("ellip",n, rp, rs, w, varargin(1), varargin(2)) + end + end +endfunction diff --git a/macros/ellipord.bin b/macros/ellipord.bin Binary files differnew file mode 100644 index 0000000..60fca21 --- /dev/null +++ b/macros/ellipord.bin diff --git a/macros/ellipord.sci b/macros/ellipord.sci new file mode 100644 index 0000000..cc81ab7 --- /dev/null +++ b/macros/ellipord.sci @@ -0,0 +1,36 @@ +function [n, Wp] = ellipord(Wp, Ws, Rp, Rs) +//This function computes the minimum filter order of an elliptic filter with the desired response characteristics. +//Calling Sequence +//[n] = ellipord(Wp, Ws, Rp, Rs) +//[n, Wp] = ellipord(Wp, Ws, Rp, Rs) +//Parameters +//Wp: scalar or vector of length 2, all elements must be in the range [0,1] +//Ws: scalar or vector of length 2, all elements must be in the range [0,1] +//Rp: real or complex value +//Rs: real or complex value +//Description +//This is an Octave function. +//This function computes the minimum filter order of an elliptic filter with the desired response characteristics. +//Stopband frequency ws and passband frequency wp specify the the filter frequency band edges. +//Frequencies are normalized to the Nyquist frequency in the range [0,1]. +//Rp is measured in decibels and is the allowable passband ripple and Rs is also measured in decibels and is the minimum attenuation in the stop band. +//If ws>wp then the filter is a low pass filter. If wp>ws, then the filter is a high pass filter. +//If wp and ws are vectors of length 2, then the passband interval is defined by wp and the stopband interval is defined by ws. +//If wp is contained within the lower and upper limits of ws, the filter is a band-pass filter. If ws is contained within the lower and upper limits of wp, the filter is a band-stop or band-reject filter. +//Examples +//[a,b]=ellipord(0.2, 0.5, 0.7, 0.4) +//a = 1 +//b = 0.20000 + +rhs = argn(2) +lhs = argn(1) +if(rhs~=4) +error("Wrong number of input arguments.") +end +select(lhs) +case 1 then +n = callOctave("ellipord",Wp,Ws,Rp,Rs) +case 2 then +[n,Wp] = callOctave("ellipord",Wp,Ws,Rp,Rs) +end +endfunction diff --git a/macros/enbw.bin b/macros/enbw.bin Binary files differnew file mode 100644 index 0000000..6dabe0e --- /dev/null +++ b/macros/enbw.bin diff --git a/macros/enbw.sci b/macros/enbw.sci new file mode 100644 index 0000000..f7cc457 --- /dev/null +++ b/macros/enbw.sci @@ -0,0 +1,56 @@ +function bw= enbw (window, fs) + + + + // This function estimate Equivalent noise bandwidth. + // Calling Sequence + // bw=enbw(window) + // bw=enbw(window, fs) + // + // Parameters + // window: specify the sample window. + // fs: specify the sampling rate of window. + // bw: returns the two-sided equivalent noise bandwidth for a uniformly sampled window + + // Examples + // window=1:10 + //fs=2.5 + //bw=enbw(window, fs) + // See also + // Authors + // Jitendra Singh + + if isreal(window) then + else + error ('Input arguments window should be real.') +end + + if isvector(window) then + else + error ('Input arguments window should be a vector.') +end + + + if or(type(window)==10) then + error ('Input arguments must be double.') +end + + if type (window)~=1 then + error ('Expected input number 1, WINDOW, to be one of these types: double, single..Isntead its type was char.' ) + end + + rms_win= sqrt(mean(window.*window)); + + bw = (rms_win/mean(window))^2; + + +if argn(2) > 1 + + if fs<=0 then + error ('Expected input number 2, Fs, to be positive.') + end + + bw = bw * (fs) / length(window); +end + +endfunction diff --git a/macros/eqtflength.bin b/macros/eqtflength.bin Binary files differnew file mode 100644 index 0000000..4aa5c4b --- /dev/null +++ b/macros/eqtflength.bin diff --git a/macros/eqtflength.sci b/macros/eqtflength.sci new file mode 100644 index 0000000..505322f --- /dev/null +++ b/macros/eqtflength.sci @@ -0,0 +1,34 @@ +function [b,a,N,M] = eqtflength(b,a) +//Modifies the input vector to give output vectors of the same length +//Calling Sequence +//[b,a] = eqtflength(b,a) +//[b,a,N,M] = eqtflength(b,a) + +//Author +//Debdeep Dey + if(argn(2)~=2) + error('Incorrect number of input arguments'); + elseif(length(a)==0|max(abs(a))==0) + error('Division by zero not allowed'); + elseif(type(b)==10 | type(a)==10) + b=b; + a=a; + else + a=a(:).'; + b=b(:).'; + a=[a,zeros(1,max(0,length(b)-length(a)))]; + b=[b,zeros(1,max(0,length(a)-length(b)))]; + ai=find(a~=0); + bi=find(b~=0); + M=ai($)-1; + if isempty(bi) then + N=0; + else + N=bi($)-1; + end + n=max(M+1,N+1); + a=a(1:n); + b=b(1:n); + end +endfunction + diff --git a/macros/falltime.bin b/macros/falltime.bin Binary files differnew file mode 100644 index 0000000..318d449 --- /dev/null +++ b/macros/falltime.bin diff --git a/macros/falltime.sci b/macros/falltime.sci new file mode 100644 index 0000000..b2e436a --- /dev/null +++ b/macros/falltime.sci @@ -0,0 +1,380 @@ +function [f, lowercrossvalue, uppercrossvalue, lowerreference, upperreference]=falltime(x, varargin) + + // This function estimate falltime values of real vector X. + // Calling Sequence + // r=falltime(x) + // r=falltime(x, t) + // r=falltime(x, Fs) + // r=falltime(x, t, 'PercentReferenceLevels', N ) + // r=falltime(x, t, 'Tolerance', M) + // r=falltime(x, t,'StateLevels', O) + // [r lowercrossvalue uppercrossvalue lowerreference upperreference]=falltime(x) + // [r lowercrossvalue uppercrossvalue lowerreference upperreference]=falltime(x, Fs) + // [r lowercrossvalue uppercrossvalue lowerreference upperreference]=falltime(x, t) + // [r lowercrossvalue uppercrossvalue lowerreference upperreference]=falltime(x, t, 'PercentReferenceLevels', N ) + // [r lowercrossvalue uppercrossvalue lowerreference upperreference]= falltime(x, t, 'Tolerance', M) + // [r lowercrossvalue uppercrossvalue lowerreference upperreference]= falltime(x, t,'StateLevels', O) + // [r lowercrossvalue uppercrossvalue lowerreference upperreference]= falltime(x, t,'StateLevels', O, 'fig', on or off) + // + // Parameters + // x: real vector. + // Fs: specifies the sample rate, Fs, as a positive scalar, where the first sample instant corresponds to a time of zero. + // t: defiene instant sample time t as vector with same length of x, or specifies the sample rate, t, as a positive scalar. + // PercentReferenceLevels: specify the percentreferenceleves as a percentage, default value of N is [10 90]. + // Tolerance: define the tolerance value as real scaler value, where default value of M is 2.0. + // StateLevels: define the lower and upper state levels as two element real vector. + // fig: specify the logical input value to display figure as one of 'on' or 'off', where the default input in 'off'. + // f: return fall time of negative-going bilevel waveform transitions X. + // lowercrossvalue: return the lowerc cross value. + // uppercrossvalue: return the upper cross value. + // lowerreference: return lower reference value corrosponding to lower percent reference value. + // upperreference: return upper reference value corrosponding to upper percent reference value. + + // Examples + // x=[1.2, 5, 10, -20, 12] + //t=1:length(x) + //f=falltime(x, t) + // See also + // Authors + // Jitendra Singh + + + + // run statelevels and midcross function before running risetime function. + + if or(type(x)==10) then + error ('Input arguments must be double.') +end + + + if length(varargin)==0 then // if the no of input is 0, then specify the default values to input parameter. + [levels hist]=statelevels(x); + Lvarargin=list(1:length(x), 'StateLevels', levels(1), 'MidPercentReferenceLevel', 10, 'Tolerance', 2, 'fig', 'off') + Uvarargin=list(1:length(x), 'StateLevels', levels(2), 'MidPercentReferenceLevel', 90, 'Tolerance', 2, 'fig', 'off') + end + +if length(varargin)>=1 & type(varargin(1))==1 then + if length(varargin(1))==1 then + t=(0:(length(x)-1)); + + elseif length(varargin(1))==length(x) then + t=varargin(1); + + else + error('T must be a same length as X.') + end +else + t=1:length(x); +end + + +if length(varargin)>=2 & type(varargin(1))==1 & type(varargin(2))==1 then + error ("Too many leading numeric arguments (at most 2 expected)."); +end + + + + +sindex=[]; +if length(varargin)>=1 then +a=1; + +for i=1:length(varargin) + if type(varargin(i))==10 then + sindex(a)=i; + a=a+1; + end +end +end + + +if length(sindex)>5 then + error('Unexpected argument.') +end + +if length(varargin)==1 & (isempty(sindex)) then + + [levels hist]=statelevels(x); + Lvarargin=list(t, 'StateLevels', levels(1), 'MidPercentReferenceLevel', 10, 'Tolerance', 2, 'fig', 'off') + Uvarargin=list(t, 'StateLevels', levels(2), 'MidPercentReferenceLevel', 90, 'Tolerance', 2, 'fig', 'off') + +end + +fig='OFF'; +////////////////////////////////// + +if (~isempty(sindex)) then + for j=1:length(sindex) + + select convstr(varargin(sindex(j)),'u') + + case {'STATELEVELS'} + ////// + if length(varargin) <=sindex(j) then + error(strcat(['parameter StateLevels required a value'])); + end + + if type(varargin(sindex(j)+1))==1 then + levels=varargin(sindex(j)+1); + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='PERCENTREFERENCELEVELS' | convstr(varargin(sindex(j)+1),'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='FIG' then + + error('parameter StateLevels required a value.') + + + elseif type(varargin(sindex(j)+1))==10 then + + error('Expected STATELEVELS to be one of these types: double, Instead its type was char.') + end + + + case {'PERCENTREFERENCELEVELS'} + if length(varargin) <=sindex(j) then + error(strcat(['parameter MidPercentRefernceLevel required a value.'])); + end + + if type(varargin(sindex(j)+1))==1 then + midpercentval= varargin(sindex(j)+1); + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='STATELEVELS' | convstr(varargin(sindex(j)+1),'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='FIG' then + error('parameter MidPercentRefernceLevel required a value.') + + elseif type(varargin(sindex(j)+1))==10 then + error('Expected MidPercentRefernceLevel to be one of these types: double, Instead its type was char.') + end + + if length( midpercentval)~=2 then + error ('Expected MidPercentRefernceLevel to be of size 1x2') + end + ///////////////////////////////// + + perval=varargin(sindex(j)+1); + disp(perval) + if perval(2)<= perval(1) then + error('The PercentReferenceLevels must be in increasing order.') + end + + varargin(sindex(j))='MidPercentReferenceLevel'; + varargin(sindex(j)+1)=perval(1); + Lvarargin= varargin; + + varargin(sindex(j)+1)=perval(2); + Uvarargin=varargin; + + case {'FIG'} + + if length(varargin) <=sindex(j) then + error(strcat(['parameter fig required a value.'])); + end + + if type(varargin(sindex(j)+1))==1 then + error ('Expected fig to match one of these strings: on or off'); + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='STATELEVELS' | convstr(varargin(sindex(j)+1), 'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='PERCENTREFERENCELEVELS' then + error('parameter fig required a value.') + else + fig= convstr(varargin(sindex(j)+1), 'u'); + + end + + + if fig == 'OFF' | fig == 'ON' then + else + error('Expected fig to match one of these strings: on or off'); + end + + + + case{'ON'} + + + case{'OFF'} + + + case {'TOLERANCE'} + + if length(varargin) <=sindex(j) then + error(strcat(['parameter Tolerance required a value"])); + + elseif type(varargin(sindex(j)+1))==1 then + tolerance= varargin(sindex(j)+1); + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')== 'STATELEVELS' | convstr(varargin(sindex(j)+1), 'u')== 'PERCENTREFERENCELEVELS' | convstr(varargin(sindex(j)+1), 'u')=='FIG' then + + error('parameter Tolerance required a value.'); + + elseif type(varargin(sindex(j)+1))==10 then + + error('Expected Tolerance to be one of these types: double, Instead its type was char.'); + end + + else + error(strcat(['Invalid optional argument'," ", varargin(sindex(j))])); + end // switch + end // for + end // if + +///////////////////////////////////////////// + + + + indexx=[]; +if length(sindex)>=1 then +a=1; +for i=1:length(sindex) + + indexx(a)=find(convstr(varargin(sindex(i)), 'u')=='MIDPERCENTREFERENCELEVEL') + a=a+1; +end +end + + +if sum(indexx)==0 then + + varargin(length(varargin)+1)='MIDPERCENTREFERENCELEVEL'; + varargin(length(varargin)+1)=10; + Lvarargin= varargin; + + varargin(length(varargin))=90; + Uvarargin=varargin; +end + +index_on=[]; + +if length(sindex)>=1 then +a=1; + +for i=1:length(sindex) + + index_on(a)=find(convstr(varargin(sindex(i)), 'u')=='ON') + + a=a+1; + +end +end + +if sum(index_on)>0 then + Lvarargin(sindex(find(index_on>0)))='OFF'; + Uvarargin(sindex(find(index_on>0)))='OFF'; +end + + + + + + [lcrossval lref levels t tolerance]= midcross(x, Lvarargin(:)); // calling midcross function to get lower cross values + + [ucrossval uref]=midcross(x, Uvarargin(:)); // calling midcross function to get upper cross values + + + if length(lcrossval)==length(ucrossval) then + dff=lcrossval-ucrossval + f=dff(dff>0) + elseif length(lcrossval)>length(ucrossval) + n=length(ucrossval); + dff=lcrossval-ucrossval(1:n); + f=dff(dff>0) + else + n=length(lcrossval); + dff=lcrossval(1:n)-ucrossval; + f=dff(dff>0) + + end + + difference=ucrossval-lcrossval; + Nindex=find(difference<0); + + + + uppercrossvalue=ucrossval(Nindex); + lowercrossvalue=lcrossval(Nindex); + + lowerreference=lref; + upperreference=uref; + + + upperbound= levels(2)- (tolerance/100)*(levels(2)-levels(1)); + mostupperbound=levels(2)+ (tolerance/100)*(levels(2)-levels(1)); + lowerbound= levels(1)+ (tolerance/100)*(levels(2)-levels(1)); + mostlowerbound=levels(1)- (tolerance/100)*(levels(2)-levels(1)); + + + + + + if fig=='ON' then // if the defined output is only 1, the it will provide the graphical representation of //levels + if length(f)==0 then + + plot(t,x, 'LineWidth',1, 'color', 'black') + + plot(t,upperreference * ones(1, length(t)),'-r', 'LineWidth',0.5) + + plot(t,lowerreference * ones(1, length(t)),'-g', 'LineWidth',0.5) + + + plot(t,mostupperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + plot(t,levels(2) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,upperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + + + plot(t,lowerbound *ones(1, length(t)),'--g', 'LineWidth',0.5) + + plot(t,levels(1) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,mostlowerbound * ones(1, length(t)),'--g', 'LineWidth',0.5) + + xlabel("Time (second)", "fontsize",3, "color", "black" ) + ylabel("Level (Volts)", "fontsize",3, "color", "black" ) + + + legends(["Signal"; "upper boundary"; "upper state"; "lower boundary"; "upper reference"; "lower reference"; "upper boundary"; "lower state"; "lower boundary"], [[1;1], [5;2], [1;2], [5;2], [5;1], [3;1], [3;2], [1;2], [3;2]], opt='?') + + + else + + + + + plot(t,x, 'LineWidth',1, 'color', 'black') + + plot(t,upperreference * ones(1, length(t)),'-r', 'LineWidth',0.5) + + plot(t,lowerreference * ones(1, length(t)),'-g', 'LineWidth',0.5) + + rects=[uppercrossvalue; upperreference*ones(uppercrossvalue); f; (upperreference-lowerreference)*ones(f)] + + col=-10*ones(f); + + xrects(rects, col); + + plot(uppercrossvalue, upperreference*ones(uppercrossvalue), "r*", 'MarkerSize',15); + + plot(lowercrossvalue, lowerreference*ones(lowercrossvalue), "g*", 'MarkerSize',15); + + plot(t,mostupperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + plot(t,levels(2) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,upperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + + + plot(t,lowerbound *ones(1, length(t)),'--g', 'LineWidth',0.5) + + plot(t,levels(1) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,mostlowerbound * ones(1, length(t)),'--g', 'LineWidth',0.5) + + xlabel("Time (second)", "fontsize",3, "color", "black" ) + ylabel("Level (Volts)", "fontsize",3, "color", "black" ) + + + legends(["risetime"; "Signal"; "upper cross"; "lower cross"; "upper boundary"; "upper state"; "lower boundary"; "upper reference"; "lower reference"; "upper boundary"; "lower state"; "lower boundary"], [[-11; 2] , [1;1], [-10;5], [-10;3], [5;2], [1;2], [5;2], [5;1], [3;1], [3;2],[1;2], [3;2]], opt='?') + + end + end + + +endfunction diff --git a/macros/fftfilt.bin b/macros/fftfilt.bin Binary files differnew file mode 100644 index 0000000..4ddcc74 --- /dev/null +++ b/macros/fftfilt.bin diff --git a/macros/fftfilt.sci b/macros/fftfilt.sci new file mode 100644 index 0000000..1fcd211 --- /dev/null +++ b/macros/fftfilt.sci @@ -0,0 +1,207 @@ +function y = fftfilt(b, x, varargin) + // Performs FFT-based FIR filtering using overlap-add method + // + // Calling sequence + // y = fftfilt(b,x) + // y = fftfilt(b,x,n) + // + // Parameters + // x: real|complex numbers - vector|matrix + // Input data to be filtered + // If x is a matrix, each column is treated as an independent observation. + // b: real|complex numbers - vector|matrix + // Filter coefficients + // If b is a matrix and x is a vector, each column is treated as an + // independent filter. If both x and b are matrices, each column of x + // if filtered using corresponding column of b. + // n: positive integer + // Parameter used to determine the length of the fft + // + // Description + // y = fftfilt(b,x) filters the data in vector x with the filter described + // by coefficient vector b. + // y = fftfilt(b,x,n) uses n to determine the length of the FFT. + // + // Examples + // 1) Filtering a sine wave + // x = sin(1:2000); + // b = [1 1/2]; + // y = fftfilt(b,x); + // 2) Multiple filters (1,1/3) and (1/4,1/5); + // x = sin(1:2000); + // b = [1 1/4;1/3 1/5]; + // y = fftfilt(b,x); + // + // Authors + // Ayush Baid + + + + + [numOutArgs,numInArgs] = argn(0); + +// ** Checking number of arguments + + if numInArgs<1 | numInArgs>3 then + msg = "fftfilt: Wrong number of input argument; 1-3 expected"; + error(77,msg); + end + + if numOutArgs~=1 then + msg = "fftfilt: Wrong number of output argument; 1 expected"; + error(78,msg); + end + + // variables to keep track if the input vectors are column vectors + transform_x = %f; + +// ** checking the type of input arguments ** + if isempty(b) then + y = zeros(size(x,1),size(x,2)); + return; + end + + // b should contain numeric entries + if ~(type(b)==1 | type(b)==8 | type(b)==17) then + msg = "fftfilt: Wrong type for argument #1 (b); Real or complex entries expected "; + error(53,msg); + end + + // x should contain numeric entries + if ~(type(x)==1 | type(x)==8 | type(x)==17) then + msg = "fftfilt: Wrong type for argument #2 (x); Real or complex entries expected "; + error(53,msg); + end + temp = size(x,1); + + // b and x must have compatible dimensions + inpType = 0; + if size(b,1)==1 | size(b,2)==1 then + // b is a vector; hence x can be a matrix + inpType = 1; + // if x is a vector; it should be a column vector + if size(x,1)==1 then + x = x(:); + transform_x = %t; + end + + // covert b to column vector + b = b(:); + else + // b is a matrix, hence x should either be a vector or a matrix with + // same number of columns + + if size(x,1)==1 | size(x,2)==1 then + inpType = 2; + if size(x,1)==1 then + x = x(:); + transform_x = %t; + end + else + // check compatibility + if size(b,2)~=size(x,2) then + msg = "fftfilt: Wrong size for arguments #1 (b) and #2 (x); Must have same number of columns"; + error(60,msg); + end + inpType = 3; + end + end + + + // getting the length of data vector x + nx = size(x,1); + nb = size(b,1); + + if numInArgs==2 then // the param n was not passed + // figure out the nfft (length of the fft) and L (length of fft inp block)to be used + if (nb>=nx | nb>2^20) then + // take a single fft + nfft = 2^nextpow2(nb+nx-1); + L = nx; + else + // estimated flops for the fft operation (2.5nlog n for n in powers of 2 till 20) + fftflops = [5, 20, 60, 160, 400, 960, 2240, 5120, 11520, 25600, 56320, 122880, 266240, 573440, 1228800, 2621440, 5570560, 11796480, 24903680, 52428800]; + n = 2.^(1:20); + candidateSet = find(n>(nb-1)); // all candidates for nfft must be > (nb-1) + n = n(candidateSet); + fftflops = fftflops(candidateSet); + + // minimize (number of blocks)*(number of flops per fft) + L = n - (nb - 1); + numOfBlocks = ceil(nx./L); + [dum,ind] = min( numOfBlocks .* fftflops ); // + nfft = n(ind); + L = L(ind); + + end + else // nfft is given + if nfft < nb then + nfft = nb; + end + nfft = 2.^(ceil(log(nfft)/log(2))); // forcing nfft to a power of 2 for speed + L = nfft - nb + 1; + end + + // performing fft on b + + if nb<nfft then + // perform padding + temp = zeros(nfft-nb,size(b,2)); + b = [b; temp]; + end + B = fft(b,-1,1); + + // replication x or b to match the number of columns + if inpType==1 & size(x,2)~=1 then + B = B(:,ones(1,size(x,2))); + elseif inpType==2 then + x = x(:,ones(1,size(b,2))); + end + + + + y=zeros(size(x,1),size(x,2)); + + blockStartIndex = 1; + while blockStartIndex <= nx, + blockEndIndex = min(blockStartIndex+L-1, nx); + + if blockEndIndex==blockStartIndex then + // just a scalar in the block + X = x(blockStartIndex(ones(nfft,1)),:); + else + block = x(blockStartIndex:blockEndIndex,:); + // performing padding + temp = nfft-(blockEndIndex-blockStartIndex)-1; + if temp>0 then + pad = zeros(temp,size(block,2)); + block = [block; pad]; + end + + X = fft(block,-1,1); + end + Y = fft(X.*B,1,1); + + yEndIndex = min(nx, blockStartIndex+nfft-1); + + y(blockStartIndex:yEndIndex,:) = y(blockStartIndex:yEndIndex,:) + Y(1:(yEndIndex-blockStartIndex+1),:); + + blockStartIndex = blockStartIndex+L; + end + + + // if both data and filter coeffs were real, the output should be real + if ~(or(imag(b(:))) | or(imag(x(:)))) then + y = real(y); + end + + + if inpType==1 & transform_x then + y = y'; + end + + +endfunction + + + diff --git a/macros/filternorm.bin b/macros/filternorm.bin Binary files differnew file mode 100644 index 0000000..8e15a18 --- /dev/null +++ b/macros/filternorm.bin diff --git a/macros/filternorm.sci b/macros/filternorm.sci new file mode 100644 index 0000000..fec6755 --- /dev/null +++ b/macros/filternorm.sci @@ -0,0 +1,147 @@ +function L = filternorm(b,a,varargin) +// Calculates the L-2 norm or L-infinity norm of a digital filter +// +// Calling Sequence +// L = filternorm(b,a) +// L = filternorm(b,a,pnorm) +// L = filternorm(b,a,2,tol) +// +// +// Parameters +// b: The filter numerator coefficients. +// a: The filter denominator coefficients. +// pnorm: The L-norm to be calculated. The values accepted are 2 (L2 norm) or %inf (L-infinity norm). Default value is 2. +// tol: The tolerance of the L-2 norm to be calculated. If tol not specified, it defaults to 10^(-8). tol must be a positive scalar +// +// +// Examples +// // 1) L-2 norm of an IIR filter with tol = 10^(-10) +// b = [-3 2]; +// a = [1 -0.5]; +// L = filternorm(b, a, 2, 10d-10); +// +// +// See also +// norm +// zp2sos +// +// Authors +// Ayush Baid + +exec('impz.sci', -1); + +// ** Check on number of input, output arguments +[numOutArgs, numInArgs] = argn(0); + +if numInArgs<2 | numInArgs>4 then + msg = "filternorm: Wrong number of input argument; 2-4 expected"; + error(77,msg); +end + +if numOutArgs~=1 then + msg = "filternorm: Wrong number of output argument; 1 expected"; + error(78,msg); +end + +// ** Check on b and a ** +if isempty(a) then + a = 1; +end +if isempty(b) then + b = 1; +end + +b = b(:); +a = a(:); + +// check on datatype +if type(b)~=1 & type(b)~=8 then + msg = "filternorm: Wrong type for argument #1 (b): Real or complex matrix expected"; + error(53,msg); +end +if type(a)~=1 & type(a)~=8 then + msg = "filternorm: Wrong type for argument #2 (a): Real or complex matrix expected"; + error(53,msg); +end + +// check on dimensions +if size(b,1)==1 then + b = b(:); +end +if size(a,1)==1 then + a = a(:); +end + +if size(b,2)~=size(a,2) then + msg = "filternorm: Wrong size for arguments #1 (b) and #2(a): Same number of columns expected"; + error(60,msg); +end + +// ** Parsing the remaining arguments ** +if length(varargin)==1 & ~isempty(varargin) then + pnorm = varargin(1); + tol = 1e-8; +elseif length(varargin)==2 then + pnorm = varargin(1); + tol = varargin(2); + if tol<=0 | length(tol)~=1 then + msg = "filternorm: Wrong value for argument #4 (tol): Must be a positive real scalar"; + error(116,msg); + end +else + pnorm = 2; + tol = 1e-8; +end + +if pnorm~=2 & length(varargin)==2 then + msg = "filternorm: Warning - Wrong value for argument #3 (pnorm): Must be 2 when tolerance is used"; +end + +// ** Calculations ** + +if isinf(pnorm) then + // We need to compute the frequency response and then get the one + // with the highest magnitude + h = frmag(b, a, 1024); + L = max(h); +else + if size(a,1) == 1 then + // the filter is FIR; impluse response is the filter coeffs + L = norm(b,pnorm)/a; + else + // the filter is IIR + // Checking for stability, as we wont be able to calc impulse response + // within a given tolerance. + + pole_mag = abs(roots(a)); + + // stability check + max_dist = max(pole_mag); + if max_dist>=1 then + // poles lie on the unit circle or outside it. We do not have a + // decaying impulse response and hence truncation is not advisable + msg = "filternorm: Non convergent impulse response. All poles should lie inside the unit circle"; + error(msg); + end + + // **** + // Theory: (assuming stable filter) + // Each pole will contribute a decaying exponential. The pole with + // the highest magnitude will decay the slowest (i.e. will be the most + // dominant). Therefore, we will work with pole(s) having the largest + // magnitude to obtain a bound on the L2 norm of the tail. + // **** + + // get the multiplicity of the largest pole + mult = sum(pole_mag>(max_dist-1e-5) & pole_mag<(max_dist+1e-5)); + + // Using integration of a^(-x) to get a bound + N = mult*log(tol)/log(max_dist); + + // TODO: get filter coeffs using impzlength from octave + [h, temp1] = impz(b,a); + L = norm(h,2); + end +end + +endfunction diff --git a/macros/filtfilt.bin b/macros/filtfilt.bin Binary files differnew file mode 100644 index 0000000..ada5742 --- /dev/null +++ b/macros/filtfilt.bin diff --git a/macros/filtfilt.sci b/macros/filtfilt.sci new file mode 100644 index 0000000..f263da6 --- /dev/null +++ b/macros/filtfilt.sci @@ -0,0 +1,23 @@ +function [y]=filtfilt(b,a,x) + +// Zero phase digital filtering +// Calling Sequence +// [y]=filtfilt(b,a,x) +// Parameters +// b: Real or complex valued vector or matrix +// a: Real or complex valued vector or matrix +// x: Real or complex valued vector or matrix +// Description +// This is an Octave function +// In theory, it forwards and reverse filters the signal and corrects phase distortion upto an extent by a one-pass filter but squares the magnitude response in the process. Practically though, the correction isn't perfect and magnitude response, particularly the stop band is distorted. +// Examples +// 1. [a,b]=filtfilt (1,2i,[i -4 0]) +// a = [0.00000 - 0.25000i 1.00000 + 0.00000i 0.00000 + 0.00000i] + +funcprot(0); +rhs=argn(2); +if (rhs~=3) then + error ("Wrong number of input arguments.") +else y=callOctave("filtfilt",b,a,x) +end +endfunction diff --git a/macros/filtic.bin b/macros/filtic.bin Binary files differnew file mode 100644 index 0000000..cd79ea4 --- /dev/null +++ b/macros/filtic.bin diff --git a/macros/filtic.sci b/macros/filtic.sci new file mode 100644 index 0000000..3fd919a --- /dev/null +++ b/macros/filtic.sci @@ -0,0 +1,37 @@ +function zf = filtic (b, a, y, x) + +//This function finds the initial conditions for the delays in the transposed direct-form II filter implementation +//Calling Sequence +//zf = filtic (b, a, y) +//zf = filtic (b, a, y, x) +//Parameters +//b: vector of real or complex numbers +//a: vector of real or complex numbers +//y: vector of real or complex numbers +//x: vector of real or complex numbers +//Description +//This function finds the initial conditions for the delays in the transposed direct-form II filter implementation. +//The vectors b and a represent the numerator and denominator coefficients of the filter's transfer function. +//Examples +//filtic([i,1,-i,5], [1,2,3i], [0.8i,7,9]) +//ans = +// 0.00000 - 22.60000i +// 2.40000 + 0.00000i +// 0.00000 + 0.00000i +//This function is being called from Octave + +funcprot(0); +rhs = argn(2) + +if(rhs>4 | rhs<3) + error("Wrong number of input agruments.") +end + +select(rhs) +case 3 then +zf = callOctave("filtic",b,a,y) +case 4 then +zf = callOctave("filtic",b,a,y,x) +end +endfunction + diff --git a/macros/filtord.bin b/macros/filtord.bin Binary files differnew file mode 100644 index 0000000..dd4f7ed --- /dev/null +++ b/macros/filtord.bin diff --git a/macros/filtord.sci b/macros/filtord.sci new file mode 100644 index 0000000..56f30bf --- /dev/null +++ b/macros/filtord.sci @@ -0,0 +1,104 @@ +//filtord Filter order +//Calling Syntax +//n = filtord(b,a) +//n = filtord(sos) +//n = filtord(d) +//n = filtord(b,a) returns +//the filter order, n, for the causal rational +//system function specified by the numerator coefficients, b, +//and denominator coefficients, a. +//n = filtord(sos) returns +//the filter order for the filter specified by the second-order sections +//matrix, sos. sos is a K-by-6 +//matrix. The number of sections, K, must be greater +//than or equal to 2. Each row of sos corresponds +//to the coefficients of a second-order filter. The ith +//row of the second-order section matrix corresponds to [bi(1) +//bi(2) bi(3) ai(1) ai(2) ai(3)]. +//n = filtord(d) returns +//the filter order, n, for the digital filter, d. +//Use the function designfilt to +//generate d. +//Author: Parthasarathi Panda +//parthasarathipanda314@gmail.com +function m=filtord(varargin) + [nargout,nargin]=argn(); + narginchk(1,2,argn(2)); + if (nargin==2) then + a=varargin(1); + b=varargin(2); + if(length(b)==0) then + b=[0]; + end + if length(a)==0 then + a=[0]; + end + + if type(a)~=1 | type(b)~=1 then + error('check input type'); + end + v=size(a); + if length(v)>2 then + error('check input dimension'); + end + v=size(b); + if length(v)>2 then + error('check input dimension'); + end + [n,k]=size(a); + if k==1 then + a=a'; + elseif n~=1 then + error('check input dimension'); + end + [n,k]=size(b); + if k==1 then + b=b'; + k=n; + elseif n~=1 then + error('check input dimension'); + end + elseif (nargin==1) then + sos=varargin(1); + if type(sos)~=1 then + error('check input dimension'); + end + v=size(sos); + if length(v)>2 then + error('check input dimension'); + end + if v(2)~=6 then + error('no. of columns must be 6'); + end + a=1;b=1; + for i=[1:v(1)] + a=convol(a,sos(1:3)); + b=convol(b,sos(4:6)); + end + end + k=length(a); + order_a=0; + for i=k:-1:1 + if (a(1,i)~=0) then + order_a=i; + break; + end + end + k=length(b); + order_b=0; + for i=[k:-1:1] + if (b(1,i)~=0) then + order_b=i; + break; + end + end + m=max(order_a,order_b)-1; +endfunction +function narginchk(l,h,eip) + if (eip<l) then + error("Too few input arguments"); + end + if(eip>h) then + error("too many input arguments"); + end +endfunction diff --git a/macros/firpmord.bin b/macros/firpmord.bin Binary files differnew file mode 100644 index 0000000..8f8dddd --- /dev/null +++ b/macros/firpmord.bin diff --git a/macros/firpmord.sci b/macros/firpmord.sci new file mode 100755 index 0000000..c72f76e --- /dev/null +++ b/macros/firpmord.sci @@ -0,0 +1,246 @@ +function [n, fo, ao, w] = firpmord(f, a, dev, varargin)
+// Parks-McClennan optimal FIR filter order estimation
+//
+//
+// Calling sequence
+// [n,fo,ao,w] = firpmord(f,a,dev)
+// [n,fo,ao,w] = firpmord(f,a,dev,fs)
+//
+//
+// Parameters
+// f: double - positive - vector
+// Frequency band edges (between 0 and Fs/2).
+// Length of f is two less than the length of a.
+// a: double - positive - vector
+// Desired amplitudes at the frequency bands specified by f.
+// dev: double - positive - vector
+// Maximum allowable deviations.
+// Maximum acceptable deviations or ripples between the frequency response
+// and the desired amplitudes in the frequency bands specified by f. Must have
+// the same length as a.
+// n: int - scalar
+// Filter order
+// fo: double - positive - vector
+// Frequency vector
+// ao: double - positive - vector
+// Amplitude vector
+// w: double - vector
+// Weights
+//
+//
+// Examples
+// [1] A low-pass filter
+// f = [1500 2000]; // frequency edges for bands
+// a = [1 0]; // desired amplitude for each band
+// dev = [0.01 0.1]; // Acceptable deviation for each band
+// fs = 8000; // Sampling frequency
+// [n,fo,ao,w] = firpmord(f,a,dev,fs);
+//
+// [2] A bandstop filter
+// f = [1000 1800 2400 3000];
+// a = [1 0 0.5];
+// dev = [0.01 0.1 0.03];
+// fs = 8000;
+// [n,fo,ao,w] = firpmord(f,a,dev,fs);
+//
+//
+// References
+// [1] Rabiner, Lawrence R., and Bernard Gold. "Theory and application of
+// digital signal processing." Englewood Cliffs, NJ, Prentice-Hall, Inc.,
+// 1975. 777 p. 156-7 (1975).
+// [2] Rabiner, Lawrence R., and Otto Herrmann. "The predictability of certain
+// optimum finite-impulse-response digital filters." Circuit Theory,
+// IEEE Transactions on 20.4 (1973): 401-408.
+//
+// Authors
+// Ayush Baid
+//
+//
+// See Also
+// buttord | cheb1ord | cheb2ord | ellipord | firpm | kaiserord
+
+ [numOutArgs,numInArgs] = argn(0);
+
+
+ // ********************
+ // Checking number of arguments
+ // ********************
+
+ if numInArgs~=3 & numInArgs~=4 then
+ msg = "firpmord: Wrong number of input argument; 3-4 expected";
+ error(77,msg);
+ end
+
+ if numOutArgs~=4 then
+ msg = "firpmord: Wrong number of output argument; 4 expected";
+ error(78,msg);
+ end
+
+ // ********************
+ // Parsing input args
+ // ********************
+
+ // Parsing fs
+ fs = 2; // default
+ if length(varargin)==1 then
+ fs = varargin(1);
+ if length(fs)~=1 then
+ msg = "firpmord: Wrong type for argument #4 (fs): Positive real scalar expected";
+ error(53,msg);
+ end
+ if fs<=0 then
+ msg = "firpmord: Wrong type for argument #4 (fs): Positive real scalar expected";
+ error(53,msg);
+ end
+ if type(fs)~=1 & type(fs)~=8 then
+ msg = "firpmord: Wrong type for argument #4 (fs): Positive real scalar expected";
+ error(53,msg);
+ end
+ end
+
+ // Checks on f
+ if ~isvector(f) | (type(f)~=1 & type(f)~=8) then
+ msg = "firpmord: Wrong type for argument #1 (f): Vector of positive reals expected";
+ error(53,msg);
+ end
+
+ if ~(and(f>=0) & and(f<=fs/2)) then
+ msg = "firpmord: Wrong value for argument #1 (f): Values must be between 0 and fs/2";
+ error(116,msg);
+ end
+
+
+ // Check on a
+ if ~isvector(a) | (type(a)~=1 & type(a)~=8) then
+ msg = "firpmord: Wrong type for argument #2 (a): Vector of positive reals expected";
+ error(53,msg);
+ end
+ if ~and(a>=0) then
+ msg = "firpmord: Wrong value for argument #2 (a): Values must be positive";
+ error(116,msg);
+ end
+
+ if length(f)~=2*length(a)-2 then
+ msg = "firpmord: Wrong type for arguments #1(f) and #2 (a): Length of f must be two less than twice the length of a ";
+ error(53,msg);
+ end
+
+
+ // Check on dev
+ if ~isvector(dev) | (type(dev)~=1 & type(dev)~=8) then
+ msg = "firpmord: Wrong type for argument #3 (dev): Vector of positive reals expected";
+ error(53,msg);
+ end
+ if ~and(dev>0) then
+ msg = "firpmord: Wrong value for argument #3 (dev): Values must be positive";
+ error(116,msg);
+ end
+ if length(dev)~=length(a) then
+ msg = "firpmord: Wrong type for arguments #2(a) and #3 (dev): Length of a and dev must be equal";
+ error(53,msg);
+ end
+
+ // ********************
+ // Some preprocessing
+ // ********************
+
+ // Turn every vector into a column vector
+ f = f(:);
+ a = a(:);
+ dev = dev(:);
+
+ // Normalizing frequencies
+ f = f./fs;
+
+ // Get deviation relative to the amplutudes
+ is_zero = a==0;
+ dev = dev./(is_zero+a); // no scaling req. when desired amplitude is 0
+
+
+ num_bands = size(a,1);
+
+ // Dividing frequency band edges into 2 vectors, f1 and f2, denoting
+ // passband and stopband edges respectively.
+ f1 = f(1:2:$-1);
+ f2 = f(2:2:$);
+
+
+ // ********************'
+ // Calculations for filter order
+ // ********************
+
+ // Note: Amplitudes don't matter for order as they can be adjusted by
+ // scaling and linear shifting
+
+ if num_bands==2 then
+ // Simple low-pass or high-pass filter, use single_transition_order_estimation
+
+ L = single_trans_order_est(f1(1), f2(1), dev(1), dev(2));
+ else
+ // We have a bandpass filter, which will be considered to be composed
+ // of a cascade of simple high-pass/low-pass filters
+
+ // The first filter is considered high-pass (if it is low pass in reality,
+ // the filter just has to be negated; filter order does not change)
+
+ // Loop over different simple filters and select the highest required length
+ L = 0
+ for i=2:num_bands-1
+ L1 = single_trans_order_est(f1(i-1), f2(i-1), dev(i), dev(i-1));
+ L2 = single_trans_order_est(f1(i), f2(i), dev(i), dev(i+1));
+ L = max([L; L1; L2]);
+ end
+ end
+
+ // filt. order = L-1
+ n = ceil(L) - 1;
+
+ // frequency and respective amplitudes
+ fo = [0;2*f;1];
+ ao = zeros(size(fo,1),1);
+ ao(1:2:$) = a;
+ ao(2:2:$) = a;
+
+ // weights
+ w = ones(size(dev,1),1)*max(dev)./dev;
+
+endfunction
+
+function L = single_trans_order_est(freq1, freq2, delta1, delta2)
+// Calculates the filter order for a single transition band filter ( simple
+// low-pass or simple high-pass filter)
+//
+//
+// Parameters (assuming a low-pass filter; notations change for high pass filter)
+// freq1: passband cutoff frequency (normalized)
+// freq2: stopband cutoff frequency (normalized)
+// delta1: passband ripple (max. allowed)
+// delta2: stopband attenuation (not in dB)
+// L: filter length; filter order = L-1
+//
+// Note: will not work well when transition near f = 0 or 0.5
+//
+// References
+// [1] Rabiner, Lawrence R., and Bernard Gold. "Theory and application of
+// digital signal processing." Englewood Cliffs, NJ, Prentice-Hall, Inc.,
+// 1975. 777 p. 156-7 (1975).
+
+ // Creating a matrix for consice representation of coeffs a_i used in Eq. 3.142
+ // and b_i in Eq. 3.143 in [1]
+ A = [-4.278e-1, -4.761e-1; -5.941e-1, 7.114e-2; -2.66e-3, 5.309e-3];
+ B = [11.01217, 0.51244];
+
+ log_delta1 = log10(delta1);
+ log_delta2 = log10(delta2);
+
+ // Evaluating Eq. 3.142 (Ref. [1])
+ D = [1, log_delta1, log_delta1.^2] * A * [1; log_delta2];
+
+ // Evaluating Eq. 3.143 (Ref. [1])
+ f = B * [1; log_delta1 - log_delta2];
+
+ // Evaluating Eq. 3.145 (Ref. [1])
+ del_freq = abs(freq1 - freq2);
+ L = D./del_freq - f.*del_freq + 1;
+
+endfunction
diff --git a/macros/firtype.bin b/macros/firtype.bin Binary files differnew file mode 100644 index 0000000..411b2de --- /dev/null +++ b/macros/firtype.bin diff --git a/macros/firtype.sci b/macros/firtype.sci new file mode 100644 index 0000000..4fa1122 --- /dev/null +++ b/macros/firtype.sci @@ -0,0 +1,34 @@ +//Author: Parthasarathi Panda +//parthasarathipanda314@gmail.com +function typ=firtype(b) + if (type(b)~=1) then + error('check input type'); + end + v=size(b); + if length(v)>2 then + error('check input dimension'); + end + if v(1)~=1 & v(2)~=1 then + error('check input dimension'); + elseif v(2)==1 + b=b'; + end + m=length(b); + sym=(b-b($:-1:1))*(b-b($:-1:1))';//zero if symmetrical + antisym=(b+b($:-1:1))*(b+b($:-1:1))';//zero if antisymmetrical + if (sym==0) then + if (pmodulo(m,2)==1) then + typ=1; + else + typ=2; + end + elseif (antisym==0) + if (pmodulo(m,2)==1) then + typ=3; + else + typ=4; + end + else + typ=-1;//not linear phas + end +endfunction diff --git a/macros/flattopwin.bin b/macros/flattopwin.bin Binary files differnew file mode 100644 index 0000000..f9795b4 --- /dev/null +++ b/macros/flattopwin.bin diff --git a/macros/flattopwin.sci b/macros/flattopwin.sci new file mode 100644 index 0000000..41250c1 --- /dev/null +++ b/macros/flattopwin.sci @@ -0,0 +1,47 @@ +function w = flattopwin (m, opt) +//This function returns the filter coefficients of a Flat Top window. +//Calling Sequence +//w = flattopwin (m) +//w = flattopwin (m, opt) +//Parameters +//m: positive integer value +//opt: string value, takes in "periodic" or "symmetric" +//w: output variable, vector of real numbers +//Description +//This is an Octave function. +//This function returns the filter coefficients of a Flat Top window of length m supplied as input, to the output vector w. +//The second parameter can take the values "periodic" or "symmetric", depending on which the corresponding form of window is returned. The default is symmetric. +//This window has low pass-band ripple but a high bandwidth. +//Examples +//flattopwin(8,"periodic") +//ans = +// 0.0009051 +// - 0.0264124 +// - 0.0555580 +// 0.4435496 +// 1. +// 0.4435496 +// - 0.0555580 +// - 0.0264124 +funcprot(0); +rhs = argn(2) +if(rhs<1 | rhs>2) +error("Wrong number of input arguments.") +end + +if(rhs==2) + if(opt~="periodic" & opt~="symmetric") + error("Window type should be periodic or symmetric.") + end +end + + select(rhs) + case 1 then + w = callOctave("flattopwin",m) + case 2 then + w = callOctave("flattopwin",m,opt) + end +endfunction + + + diff --git a/macros/fracshift.bin b/macros/fracshift.bin Binary files differnew file mode 100644 index 0000000..989ab10 --- /dev/null +++ b/macros/fracshift.bin diff --git a/macros/fracshift.sci b/macros/fracshift.sci new file mode 100644 index 0000000..fc02579 --- /dev/null +++ b/macros/fracshift.sci @@ -0,0 +1,42 @@ +function [y, h] = fracshift( x, d, h ) +//This function shifts the series x supplied as input argument by a number of samples d. +//Calling Sequence +//y = fracshift(x, d) +//y = fracshift(x, d, h) +//[y, h] = fracshift(...) +//Parameters +//x: +//d: +//h: +//Description +//This is an Octave function. +//This function shifts the series x supplied as input argument by a number of samples d. +//The third parameter is the interpolator, which is designed with a Kaiser-windowed sinecard by default, if not supplied. +//Examples +//fracshift([1,2,3],5) +//ans = +// 1. 2. 3. + +funcprot(0); +lhs = argn(1) +rhs = argn(2) +if(rhs<2 | rhs>3) +error("Wrong number of input arguments.") +end + + select(rhs) + case 2 then + if(lhs==1) + y = callOctave("fracshift",x,d) + elseif(lhs==2) + [y,h] = callOctave("fracshift",x,d) + end + case 3 then + if(lhs==1) + [y] = callOctave("fracshift",x,d,h) + elseif(lhs==2) + [y,h] = callOctave("fracshift",x,d,h) + end + end +endfunction + diff --git a/macros/fwhm.bin b/macros/fwhm.bin Binary files differnew file mode 100644 index 0000000..38e0180 --- /dev/null +++ b/macros/fwhm.bin diff --git a/macros/fwhm.sci b/macros/fwhm.sci new file mode 100644 index 0000000..732f623 --- /dev/null +++ b/macros/fwhm.sci @@ -0,0 +1,43 @@ +function [f] = fwhm(y, varargin) +//This function computes peak full width at half minimum or at another level of peak minimum for vector or matrix data y supplied as input. +//Calling Sequence +//f = fwhm (y) +//f = fwhm (x, y) +//f = fwhm (…, "zero") +//f = fwhm (…, "min") +//f = fwhm (…, "alevel", level) +//f = fwhm (…, "rlevel", level) +//Parameters +//y: vector or matrix + +//Description +//This is an Octave function. +//This function computes peak full width at half minimum or at another level of peak minimum for vector or matrix data y supplied as input. +//If y is a matrix, fwhm is calculated for each column as a row vector. +//The second argument is by default "zero" which computes the fwhm at half maximum. If it is "min", fwhm is computed at middle curve. +//The option "rlevel" computes full-width at the given relative level of peak profile. +//The option "alevel" computes full-width at the given absolute level of y. +//This function returns 0 if FWHM does not exist. +//Examples +//fwhm([1,2,3;9,-7,0.6],[4,5,6]) +//ans = 0. +funcprot(0); + +rhs = argn(2) +if(rhs<1 | rhs>5) +error("Wrong number of input arguments.") +end + +select(rhs) + case 1 then + f = callOctave("fwhm",y) + case 2 then + f = callOctave("fwhm",y,varargin(1)) + case 3 then + f = callOctave("fwhm",y,varargin(1),varargin(2)) + case 4 then + f = callOctave("fwhm",y,varargin(1),varargin(2),varargin(3)) + case 5 then + f = callOctave("fwhm",y,varargin(1),varargin(2),varargin(3),varargin(4)) + end +endfunction diff --git a/macros/fwhmjlt.bin b/macros/fwhmjlt.bin Binary files differnew file mode 100644 index 0000000..98edf6c --- /dev/null +++ b/macros/fwhmjlt.bin diff --git a/macros/fwhmjlt.sci b/macros/fwhmjlt.sci new file mode 100644 index 0000000..4e9eb9c --- /dev/null +++ b/macros/fwhmjlt.sci @@ -0,0 +1,18 @@ +function [f]=bitrevorder(y,varargin) +rhs = argn(2) +if(rhs<1 | rhs>5) +error("Wrong number of input arguments.") +end + select(rhs) + case 1 then + f = callOctave("fwhm",y) + case 2 then + f = callOctave("fwhm",y,varargin(1)) + case 3 then + f = callOctave("fwhm",y,varargin(1),varargin(2)) + case 4 then + f = callOctave("fwhm",y,varargin(1),varargin(2),varargin(3)) + case 5 then + f = callOctave("fwhm",y,varargin(1),varargin(2),varargin(3),varargin(4)) + end +endfunction diff --git a/macros/fwhmjlt.sci~ b/macros/fwhmjlt.sci~ new file mode 100644 index 0000000..93fc505 --- /dev/null +++ b/macros/fwhmjlt.sci~ @@ -0,0 +1,18 @@ + +rhs = argn(2) +if(rhs<1 | rhs>5) +error("Wrong number of input arguments.") +end + select(rhs) + case 1 then + f = callOctave("fwhm",y) + case 2 then + f = callOctave("fwhm",y,varargin(1)) + case 3 then + f = callOctave("fwhm",y,varargin(1),varargin(2)) + case 4 then + f = callOctave("fwhm",y,varargin(1),varargin(2),varargin(3)) + case 5 then + f = callOctave("fwhm",y,varargin(1),varargin(2),varargin(3),varargin(4)) + end +endfunction diff --git a/macros/gauspuls.bin b/macros/gauspuls.bin Binary files differnew file mode 100644 index 0000000..7ed8b82 --- /dev/null +++ b/macros/gauspuls.bin diff --git a/macros/gauspuls.sci b/macros/gauspuls.sci new file mode 100644 index 0000000..ad853ee --- /dev/null +++ b/macros/gauspuls.sci @@ -0,0 +1,31 @@ +function [y]=gauspuls(t,fc,bw) + +// Generates Gaussian-modulated sinusoidal pulses +// Calling Sequence +// [y]=gauspuls(t,fc,bw) +// [y]=gauspuls(t,fc) +// [y]=gauspuls(t) +// Parameters +// t: Real or complex valued vector or matrix +// fc: Real non negative number or complex number +// bw: Real positive number or complex number +// Description +// This is an Octave function +// This function returns a Gaussian RF pulse of unity amplitude at the times indicated in array t. +// Examples +// 1. gauspuls(1,2,3) +// ans= 1.427D-56 +// 2. gauspuls([1 2 3],1,1) +// ans= 0.0281016 0.0000006 1.093D-14 + +funcprot(0); +rhs=argn(2); +if ( rhs<1 ) then + error ("Wrong number of input arguments.") +elseif (rhs==1) + y= callOctave("gauspuls",t) +elseif (rhs==2) + y= callOctave("gauspuls",t,fc) +else y= callOctave("gauspuls",t,fc,bw) +end +endfunction diff --git a/macros/gaussdesign.bin b/macros/gaussdesign.bin Binary files differnew file mode 100644 index 0000000..8b05521 --- /dev/null +++ b/macros/gaussdesign.bin diff --git a/macros/gaussdesign.sci b/macros/gaussdesign.sci new file mode 100644 index 0000000..fa4a82c --- /dev/null +++ b/macros/gaussdesign.sci @@ -0,0 +1,132 @@ +function filter_coeffs = gaussdesign(BwSt_prod, num_of_symb, samp_per_symb) +// GAUSSDESIGN designs a Gaussian pulse-shaping filter which is a low pass FIR +// filter +// Inputs: +// BwSt_prod: it stands for 3 dB bandwidth symbol-time product. +// Bandwidth is the one-sided and in hertz. Symbol-time is +// in seconds. +// num_of_symb: filter truncated to these many number of symbols +// samp_per_symb: each symbol represented by these many samples +// Output: +// filter_coeffs: returned filter coefficients + + + + // Check validity of number of inout arguments + checkNArgin(1, 3, argn(2)); + + // Check validity of number of output arguments + checkNArgout(0, 1, argn(1)); + + // Check validity of input arguments + valid_class_BwSt = ['single', 'double']; + properties_BwSt = ['scalar', 'nonempty', 'nonNan', 'real', 'positive']; + checkIpValidity(BwSt_prod, valid_class_BwSt, properties_BwSt); + + if (argn(2) >= 2) then + valid_class_nos = ['single', 'double']; + properties_nos = ['scalar', 'nonempty', 'nonNan', 'real', 'positive', 'integer']; + checkIpValidity(num_of_symb, valid_class_nos, properties_nos); + else + num_of_symb = 3; + end + + if argn(2) == 3 then + valid_class_sps = ['single', 'double']; + properties_sps = ['scalar', 'nonempty', 'nonNan', 'real', 'positive', 'integer']; + checkIpValidity(samp_per_symb, valid_class_sps, properties_sps); + else + samp_per_symb = 2; + end + + // check if inputs fit the symmetry condition + if pmodulo(num_of_symb*samp_per_symb, 2) ~= 0 then + error('product of number_of_symbols and samples_per_symbol should be even'); + end + + // Finding the filter coefficients + length_of_filt = (num_of_symb*samp_per_symb) + 1; + ax = linspace((-num_of_symb/2), (num_of_symb/2), length_of_filt); + den = sqrt(log(2)/2)/(BwSt_prod); + filter_coeffs_tmp = (sqrt(%pi)/den)*exp(-(ax*%pi/den).^2); + + // Normalizing + filter_coeffs = filter_coeffs_tmp./sum(filter_coeffs_tmp); + +endfunction + +function checkNArgin(min_argin, max_argin, num_of_argin) + if num_of_argin < min_argin then + error('Not enough input arguments') + end + + if num_of_argin > max_argin then + error('Too many input arguments') + end +endfunction + + +function checkNArgout(min_argout, max_argout, num_of_argout) + if num_of_argout < min_argout then + error('Not enough output arguments') + end + + if num_of_argout > max_argout then + error('Too many output arguments') + end +endfunction + +function checkIpValidity(variable, valid_class, properties) +// Function to check the validity of the input variable +// Inputs: +// valid_class: vector of valid classes for the input variable +// properties: vector of necessary properties of the input variable + + for idx = 1:length(length(valid_class)) + if ~strcmpi(valid_class(idx), 'double') | ~strcmpi(valid_class(idx), 'single') then + if type(variable) ~= 1 then + error('input variable should be of type double '); + end + end + + end + + for jdx = 1:length(length(properties)) + if ~strcmpi(properties(jdx), 'scalar') then + if length(variable) > 1 then + error('Input variable should be of type scalar'); + end + end + + if ~strcmpi(properties(jdx), 'nonempty') then + if isempty(variable) then + error('Input variable is empty. It is invalid'); + end + end + + if ~strcmpi(properties(jdx), 'nonNan') then + if isnan(variable) then + error('Input variable is not a number (Nan). It is invalid'); + end + end + + if ~strcmpi(properties(jdx), 'real') then + if ~isreal(variable) then + error('Input should be real'); + end + end + + if ~strcmpi(properties(jdx), 'positive') then + if variable <= 0 then + error('Input should be positive'); + end + end + + if ~strcmpi(properties(jdx), 'integer') then + if (int(variable)-variable) ~= 0 then + error('Input should be an integer'); + end + end + end + +endfunction diff --git a/macros/gaussian.bin b/macros/gaussian.bin Binary files differnew file mode 100644 index 0000000..472d182 --- /dev/null +++ b/macros/gaussian.bin diff --git a/macros/gaussian.sci b/macros/gaussian.sci new file mode 100644 index 0000000..59ddb3c --- /dev/null +++ b/macros/gaussian.sci @@ -0,0 +1,34 @@ +function w = gaussian (m, a) +//This function returns a Gaussian convolution window. +//Calling Sequence +//w = gaussian (m) +//w = gaussian (m, a) +//Parameters +//m: positive integer value +//a: +//w: output variable, vector of real numbers +//Description +//This is an Octave function. +//This function returns a Gaussian convolution window of length m supplied as input, to the output vector w. +//The second parameter is the width measured in sample rate/number of samples and should be f for time domain and 1/f for frequency domain. The width is inversely proportional to a. +//Examples +//gaussian(5,6) +//ans = +// 5.380D-32 +// 1.523D-08 +// 1. +// 1.523D-08 +// 5.380D-32 + +funcprot(0); +rhs = argn(2) +if(rhs<1 | rhs>2) +error("Wrong number of input arguments.") +end +if(rhs==1) +w = callOctave("gaussian",m) +elseif(rhs==2) +w = callOctave("gaussian",m, a) +end +endfunction + diff --git a/macros/gausswin.bin b/macros/gausswin.bin Binary files differnew file mode 100644 index 0000000..8133cd0 --- /dev/null +++ b/macros/gausswin.bin diff --git a/macros/gausswin.sci b/macros/gausswin.sci new file mode 100644 index 0000000..eb3b3d8 --- /dev/null +++ b/macros/gausswin.sci @@ -0,0 +1,32 @@ +function w = gausswin (m, a) +//This function returns the filter coefficients of a Gaussian window. +//Calling Sequence +//w = gausswin (m) +//w = gausswin (m, a) +//Parameters +//m: positive integer value +//a: +//w: output variable, vector of real numbers +//Description +//This is an Octave function. +//This function returns the filter coefficients of a Gaussian window of length m supplied as input, to the output vector w. +//The second parameter is the width measured in sample rate/number of samples and should be f for time domain and 1/f for frequency domain. The width is inversely proportional to a. +//Examples +//gausswin(3) +//ans = +// 0.2493522 +// 1. +// 0.2493522 + +funcprot(0); +rhs = argn(2) +if(rhs<1 | rhs>2) +error("Wrong number of input arguments.") +end +if(rhs==1) +w = callOctave("gausswin",m) +elseif(rhs==2) +w = callOctave("gausswin",m,a) +end +endfunction + diff --git a/macros/gmonopuls.bin b/macros/gmonopuls.bin Binary files differnew file mode 100644 index 0000000..bc0bcfb --- /dev/null +++ b/macros/gmonopuls.bin diff --git a/macros/gmonopuls.sci b/macros/gmonopuls.sci new file mode 100644 index 0000000..6fa9db0 --- /dev/null +++ b/macros/gmonopuls.sci @@ -0,0 +1,27 @@ +function [y]=gmonopuls(t,fc) + +// Gaussian monopulse +// Caling Sequence +// [y]=gmonopuls(t) +// [y]=gmonopuls(t,fc) +// Parameters +// t: Real or complex valued vector or matrix +// fc: Real non-negative value or complex value or a vector or matrix with not all real values negative. +// Description +// This is an Octave function +// This function returns samples of the Gaussian monopulse of amplitude unity. +// Examples +// 1. gmonopuls([1 2 3],0.1) +// ans= 0.85036 0.94070 0.52591 +// 2. gmonopuls([1 2 3]) +// ans= 0 0 0 + +funcprot(0); +rhs=argn(2); +if ( rhs<1 ) then + error ("Wrong number of input arguments.") +elseif (rhs==1) + y=callOctave("gmonopuls",t) +else y=callOctave("gmonopuls",t,fc) +end +endfunction diff --git a/macros/goertzel.bin b/macros/goertzel.bin Binary files differnew file mode 100644 index 0000000..b1af7e2 --- /dev/null +++ b/macros/goertzel.bin diff --git a/macros/goertzel.sci b/macros/goertzel.sci new file mode 100644 index 0000000..bc0061c --- /dev/null +++ b/macros/goertzel.sci @@ -0,0 +1,79 @@ +function Y = goertzel(X,INDVEC,DIM) +//Computes DFT using the second order Goertzel Algorithm +//Calling Sequence +//Y = goertzel(X,INDVEC,DIM) +//Parameters +//X +//A vector matrix or n-dimensional array +//INDVEC +//The indices at which the DFT is to be computed +//DIM +//The dimension along which the algorithm is to be implemented +//Description +//goertzel(X,INDVEC) +//Computes the DFT of X at indices INDVEC using the second order algorithm along +//the first non-singleton dimension. Elements of INDVEC must be positive integers +//less than the length of the first non-singleton dimension. If INDVEC is empty +//the DFT is computed at all indices along the first non-singleton dimension +//goertzel(X,INDVEC,DIM) +//Implements the algorithm along dimension DIM +//In general goertzel is slower than fft when computing the DFT for all indices +//along a particular dimension. However it is computationally more efficient when +//the DFT at only a subset of indices is desired +//Example +//x=rand(1,5) +//x = +// +// 0.6283918 0.8497452 0.6857310 0.8782165 0.0683740 +//y=goertzel(x,2); +//y = +// +// - 0.3531539 - 0.6299881i +//Author +//Ankur Mallick +//References +//Goertzel, G. (January 1958), "An Algorithm for the Evaluation of Finite Trigonometric Series", American Mathematical Monthly 65 (1): 34–35, doi:10.2307/2310304 + funcprot(0); + if(argn(2)<3|isempty(DIM)) + DIM=find(size(X)>1,1); //First non-singleton dimension + end + if(DIM>ndims(X)) + error('Invalid Dimensions'); + end + perm=[DIM, 1:DIM-1, DIM+1:ndims(X)]; + X=permute(X,perm); //Makes DIM the leading dimension + S=size(X); + if(argn(2)<2|isempty(INDVEC)) + INDVEC=1:S(1); + end + if(max(INDVEC)>S(1)|min(INDVEC)<1) + error('Index out of bounds'); + elseif(or(INDVEC~=round(INDVEC))) + error('Indices must be integers'); + end + X1=matrix(X,1,prod(S)); + T=[type(X1), type(INDVEC), type(DIM)]; //all inputs should be of type double + if(~and(T==1)) + error('Invalid data type'); + end + //Implementing Goertzel algorithm + len=[length(INDVEC), S(2:length(S))]; + Y=matrix(zeros(1,prod(len)),len); + v=ones(length(INDVEC),1); + w=(2*%pi*(INDVEC-1)/S(1))'; + re=2*cos(w); + im=sin(w); + for i=1:prod(S(2:length(S))) + x=X(:,i) + sp1=0; + sp2=0; + for j=1:S(1) + s=x(j)*v+re.*sp1-sp2; + sp2=sp1; + sp1=s; + end + Y(:,i)=((re/2)+im*%i).*sp1-sp2; + end + iperm(perm)=1:length(perm); + Y=permute(Y,iperm); //Converting Y to the original shape of X +endfunction diff --git a/macros/grpdelay.bin b/macros/grpdelay.bin Binary files differnew file mode 100644 index 0000000..be071e0 --- /dev/null +++ b/macros/grpdelay.bin diff --git a/macros/grpdelay.sci b/macros/grpdelay.sci new file mode 100644 index 0000000..a7ffdad --- /dev/null +++ b/macros/grpdelay.sci @@ -0,0 +1,51 @@ +function [gd,w] = grpdelay(b,a,nfft,whole,Fs) +//This function computes the group delay of a filter. +//Calling Sequence +//gd = grpdelay(b) +//gd = grpdelay(b, a) +//gd = grpdelay(b, a, nfft) +//gd = grpdelay(b, a, nfft, whole) +//gd = grpdelay(b, a, nfft, whole, Fs) +//[gd, w] = grpdelay(...) + +//Parameters +//b: +//a: +//nfft: + +//Description +//This is an Octave function. +//This function computes the group delay of a filter. +//[g, w] = grpdelay(b) returns the group delay g of the FIR filter with coefficients b. The response is evaluated at 512 angular frequencies between 0 and pi. w is a vector containing the 512 frequencies. +//[g, w] = grpdelay(b, a) returns the group delay of the rational IIR filter whose numerator has coefficients b and denominator coefficients a. +//[g, w] = grpdelay(b, a, n) returns the group delay evaluated at n angular frequencies. +//[g, w] = grpdelay(b, a, n, ’whole’) evaluates the group delay at n frequencies between 0 and 2*pi. +//[g, f] = grpdelay(b, a, n, Fs) evaluates the group delay at n frequencies between 0 and Fs/2. +//[g, f] = grpdelay(b, a, n, ’whole’, Fs) evaluates the group delay at n frequencies between 0 and Fs. +//[g, w] = grpdelay(b, a, w) evaluates the group delay at frequencies w (radians per sample). +//[g, f] = grpdelay(b, a, f, Fs) evaluates the group delay at frequencies f (in Hz). +//Examples +//grpdelay(1,2,3) +//ans = +// 0. +// 0. +// 0. + +funcprot(0); +rhs = argn(2) +if(rhs<1 | rhs>5) +error("Wrong number of input arguments.") +end + select(rhs) + case 1 then + [gd,w] = callOctave("grpdelay",b) + case 2 then + [gd,w] = callOctave("grpdelay",b,a) + case 3 then + [gd,w] = callOctave("grpdelay",b,a,nfft) + case 4 then + [gd,w] = callOctave("grpdelay",b,a,nfft,whole) + case 5 then + [gd,w] = callOctave("grpdelay",b,a,nfft,whole,Fs) + end +endfunction diff --git a/macros/hann.bin b/macros/hann.bin Binary files differnew file mode 100644 index 0000000..6d9679a --- /dev/null +++ b/macros/hann.bin diff --git a/macros/hann.sci b/macros/hann.sci new file mode 100644 index 0000000..b95ed4f --- /dev/null +++ b/macros/hann.sci @@ -0,0 +1,37 @@ +function w = hann (varargin) +//This function returns the filter coefficients of a Hanning window. +//Calling Sequence +//w = hann(m) +//w = hann(m, "symmteric") +//w = hann(m, "periodic") +//Parameters +//m: positive integer value +//opt: string value, takes in "periodic" or "symmetric" +//w: output variable, vector of real numbers +//Description +//This is an Octave function. +//This function returns the filter coefficients of a Hanning window of length m supplied as input, to the output vector w. +//The second parameter can take the values "periodic" or "symmetric", depending on which the corresponding form of window is returned. The default is symmetric. +//Examples +//hann(6,"symmetric") +//ans = +// 0. +// 0.3454915 +// 0.9045085 +// 0.9045085 +// 0.3454915 +// 0. +funcprot(0); +rhs = argn(2) +m = varargin(1) +if(rhs<1 | rhs>2) +error("Wrong number of input arguments.") +end + + select(rhs) + case 1 then + w = callOctave("hann",varargin(1)) + case 2 then + w = callOctave("hann",varargin(1),varargin(2)) + end +endfunction diff --git a/macros/helperHarmonicDistortionAmplifier.bin b/macros/helperHarmonicDistortionAmplifier.bin Binary files differnew file mode 100644 index 0000000..e577060 --- /dev/null +++ b/macros/helperHarmonicDistortionAmplifier.bin diff --git a/macros/helperHarmonicDistortionAmplifier.sci b/macros/helperHarmonicDistortionAmplifier.sci new file mode 100755 index 0000000..511b3a9 --- /dev/null +++ b/macros/helperHarmonicDistortionAmplifier.sci @@ -0,0 +1,31 @@ +function outputVoltage = helperHarmonicDistortionAmplifier(inputVoltage) +//helperHarmonicDistortionADC Helper function for HarmonicDistortionExample.m + +// model parameters +noiseVrms = 0.4e-6; // RMS voltage of input noisefloor + +// polynomial coefficients +a0 = 25e-3; // dc bias (25mV) +a1 = 1; // voltage gain +a2 = 6e-5; // second order term +a3 = -1e-3; // third order term +a4 = 5e-6; // fourth order term +a5 = 1e-5; // fifth order term + +// polyval function has constant term at the end. +polyCoeff = [a5 a4 a3 a2 a1 a0]; + +// get number of input samples +n = size(inputVoltage,2); + +// add noise at input +inputNoise = noiseVrms*rand(1,n,"normal"); +distortedInput = inputVoltage + inputNoise; + +// adjust input by DC bias, voltage gain and higher order terms +outputVoltage = polyval(polyCoeff, distortedInput); +endfunction + + + + diff --git a/macros/icceps.bin b/macros/icceps.bin Binary files differnew file mode 100644 index 0000000..937de63 --- /dev/null +++ b/macros/icceps.bin diff --git a/macros/icceps.sci b/macros/icceps.sci new file mode 100644 index 0000000..07debde --- /dev/null +++ b/macros/icceps.sci @@ -0,0 +1,50 @@ +function inv_ceps = icceps(input, remv_samp) +// ICCEPS computes the inverse cepstrum of a real-valued input. This spectrum +// will be complex in nature +// Inputs: +// input: Real-valued input +// remv_samps: Number of samples of delay to be removed +// Outputs: +// inv_ceps: Inverse cepstrum output + +// Check validity of number of inout arguments +checkNArgin(1,3, argn(2)); + +// Check validity of input signal +checkInputSig(input); + +// Seeting default input +if argn(2) < 2 then + remv_samp = 0; +end + +input_in_freq = fft(input); +tmp = exp(real(input_in_freq)+ %i*phaseFactor(imag(input_in_freq), remv_samp)); +inv_ceps = real(ifft(tmp)); + +endfunction + +function checkNArgin(min_argin, max_argin, num_of_argin) + if num_of_argin < min_argin then + error('Not enough input arguments') + end + + if num_of_argin > max_argin then + error('Too many input arguments') + end +endfunction + +function checkInputSig(incoming_sig) + if isempty(incoming_sig)| issparse(incoming_sig)| (~isreal(incoming_sig)) then + error('Input is not valid') + end +endfunction + +function y = phaseFactor(incoming_sig, delay_elmnts) + len = length(incoming_sig); + input_rnd = floor((len+1)/2); + y = (incoming_sig(:).') + (%pi*delay_elmnts*(0:(len-1))/input_rnd); + if size(incoming_sig, 2)==1 then + y = y'; + end +endfunction diff --git a/macros/iirlp2mb.bin b/macros/iirlp2mb.bin Binary files differnew file mode 100644 index 0000000..4459654 --- /dev/null +++ b/macros/iirlp2mb.bin diff --git a/macros/iirlp2mb.sci b/macros/iirlp2mb.sci new file mode 100644 index 0000000..54f1a6b --- /dev/null +++ b/macros/iirlp2mb.sci @@ -0,0 +1,41 @@ +function [Num,Den,AllpassNum,AllpassDen] = iirlp2mb(varargin) +//This function does IIR Low Pass Filter to Multiband Filter Transformation. +//Calling Sequence +//[Num, Den, AllpassNum, AllpassDen] = iirlp2mb(B, A, Wo, Wt) +//[Num, Den, AllpassNum, AllpassDen] = iirlp2mb(B, A, Wo, Wt, Pass) +//Parameters +//B: real or complex value +//A: real or complex value +//Wo: scalar or vector +//Wt: scalar or vector, elements must be monotonically increasing and >= 0 and <= 1. +//Description +//This is an Octave function. +//This function does IIR Low Pass Filter to Multiband Filter Transformation. +//The first two parameters give the numerator and denominator of the prototype low pass filter. +//The third parameter is the normalized angular frequency/pi to be transformed. +//The fourth parameter is the normalized angular frequency/pi target vector. +//The first two output variables are the numerator and denominator of the transformed filter. +//The third and fourth output variables are the numerator and denominator of the allpass transform. +//The fifth parameter can have values pass or stop, default value is pass. +//Examples +//iirlp2mb(5,9,0.3,0.4) +//ans = 0.55556 + +B = varargin(1) +A = varargin(2) +Wo = varargin(3) +Wt = varargin(4) +rhs = argn(2) +lhs = argn(1) +if(rhs < 4 | rhs > 5) +error("Wrong number of input arguments.") +end +select(rhs) +case 4 then +[Num,Den,AllpassNum,AllpassDen] = callOctave("iirlp2mb",varargin(1),varargin(2),varargin(3),varargin(4)) +case 5 then +[Num,Den,AllpassNum,AllpassDen] = callOctave("iirlp2mb",varargin(1),varargin(2),varargin(3),varargin(4),varargin(5)) +end +endfunction + + diff --git a/macros/impinvar.bin b/macros/impinvar.bin Binary files differnew file mode 100644 index 0000000..bc5bea1 --- /dev/null +++ b/macros/impinvar.bin diff --git a/macros/impinvar.sci b/macros/impinvar.sci new file mode 100644 index 0000000..ff90f6a --- /dev/null +++ b/macros/impinvar.sci @@ -0,0 +1,40 @@ +function [b_out, a_out] = impinvar (b, a, fs, tol) +//This function converts analog filter with coefficients b and a to digital, conserving impulse response. +//Calling Sequence +//[b, a] = impinvar (b, a) +//[b, a] = impinvar (b, a, fs) +//[b, a] = impinvar (b, a, fs, tol) +//Parameters +//b: real or complex valued scalar or vector +//a: real or complex valued scalar or vector, order should be greater than b +//fs: real or complex value, default value 1Hz +//tol: real or complex value, default value 0.0001 +//Description +//This is an Octave function. +//This function converts analog filter with coefficients b and a to digital, conserving impulse response. +//This function does the inverse of impinvar. +//Examples +//b = 0.0081000 +//a = [2.0000000, 0.56435378, 0.4572792, 0.00705544, 0.091000] +//[ay,by] = impinvar(b,a,10) +//ay = +// 0.0000e+00 7.5293e-08 2.9902e-07 7.4238e-08 +//by = +// 1.00000 -3.96992 5.91203 -3.91428 0.97218 + +funcprot(0); +rhs = argn(2) +if(rhs<2) +error("Wrong number of input arguments.") +end + + + select(rhs) + case 2 then + [b, a] = callOctave("impinvar",b,a) + case 3 then + [b, a] = callOctave("impinvar",b,a,fs) + case 4 then + [b, a] = callOctave("impinvar",b,a,fs,tol) + end +endfunction diff --git a/macros/impz.bin b/macros/impz.bin Binary files differnew file mode 100644 index 0000000..eb1ef54 --- /dev/null +++ b/macros/impz.bin diff --git a/macros/impz.sci b/macros/impz.sci new file mode 100644 index 0000000..cfa9b32 --- /dev/null +++ b/macros/impz.sci @@ -0,0 +1,55 @@ +function [x_r, t_r] = impz(b, a, n, fs) + +// +//Calling Sequence +//x_r = impz(b) +//x_r = impz(b, a) +//x_r = impz(b, a, n) +//x_r = impz(b, a, n, fs) +//[x_r, t_r] = impz(b, a, n, fs) + +//Parameters +// + +//Description + +//Examples + + +//This function is being called from Octave + + +funcprot(0); +rhs = argn(2) +lhs = argn(1) +if(rhs<1 | rhs>4) +error("Wrong number of input arguments.") +end + + select(rhs) + case 1 then + if(lhs==1) + [x_r] = callOctave("impz",b) + elseif(lhs==2) + [x_r,t_r] = callOctave("impz",b) + end + case 2 then + if(lhs==1) + [x_r] = callOctave("impz",b,a) + elseif(lhs==2) + [x_r,t_r] = callOctave("impz",b,a) + end + case 3 then + if(lhs==1) + [x_r] = callOctave("impz",b,a,n) + elseif(lhs==2) + [x_r,t_r] = callOctave("impz",b,a,n) + end + case 4 then + if(lhs==1) + [x_r] = callOctave("impz",b,a,n,fs) + elseif(lhs==2) + [x_r,t_r] = callOctave("impz",b,a,n,fs) + end + end +endfunction diff --git a/macros/impzlength.bin b/macros/impzlength.bin Binary files differnew file mode 100644 index 0000000..147b140 --- /dev/null +++ b/macros/impzlength.bin diff --git a/macros/impzlength.sci b/macros/impzlength.sci new file mode 100644 index 0000000..6e75968 --- /dev/null +++ b/macros/impzlength.sci @@ -0,0 +1,252 @@ + +function len = impzlength (b, varargin) +// Impulse response length +// +// Calling Sequence +// len = impzlength(b, a, tol) +// returns the impulse response length for the causal discrete-time filter +// with the transfer function coefficients for numerator and denominator in +// a and b respectively. For stable IIR filters, len is the effective length +// impulse response length, i.e. the length after which the response is +// essentially zero +// len = impzlength(sos) +// returns the impulse response length of the filter specified by second +// order sections matrix. sos is a Kx6 matrix, where K is the number of +// sections. Each row of the sos matrix corresponds to a second order +// biquad filter +// len = impzlength(__, tol) +// specifies a tolerance for estimating the effective impulse response +// length in case of an IIR filter. By default, tol is 5e-5. Increasing tol +// leads to shorter len and vice-versa +// +// Parameters +// b - real|complex - vector|scalar +// Numerator coefficients +// a - real|complex - vector|scalar +// Denominator coefficients +// sos - real|complex - matrix (K-by-6) +// Second order estimates +// tol - positive real - scalar +// Tolerance for estimating the effective length of an IIR filter impulse +// response +// +// Examples +// 1) Low pass IIR filter with pole at 0.9 +// b = 1; +// a = [1 -0.9]; +// len = impzlength(b,a); +// +// See also +// designfilt | digitalFilter | impz | zp2sos +// +// Authors +// Ayush Baid + +[numOutArgs, numInArgs] = argn(0); + +// ***** +// Checking the number of arguments +// ***** +if numInArgs<1 | numInArgs>3 then + msg = "impzlength: Wrong number of input argument; 1-3 expected"; + error(77,msg); +end + +if numOutArgs~=1 then + msg = "cummin: Wrong number of output argument; 1 expected"; + error(78,msg); +end + +// ***** +// Parsing input arguments +// ***** +isSos = %f; +tol = 5e-5; +a = 1; + +if size(b,2)==6 & size(b,1)>=2 then + // input is sos + isSos = %t; + if length(varargin)==1 then + tol = varargin(1); + elseif length(varargin)>1 then + msg = "impzlength: Wrong number of input arguments; only one extra argument if 1st argument is sos"; + error(77,msg); + end +else + if length(varargin)==0 then + msg = "impzlength: Wrong number of input arguments; atleast 2 required when input is transfer function coefficients"; + error(77,msg); + elseif length(varargin)==1 then + a = varargin(1); + else + a = varargin(1); + tol = varargin(2); + end +end + +// ***** +// Check on argument types +// ***** + +// checking arguments + +// ** b or sos +if ~isSos then + if isempty(b) then + b = 1; + end + if size(b,1)==1 & size(b,2)~=1 then + b = b(:); + elseif size(b,2)~=1 then + // only scalar/vector accepted + msg = "impzlength: Wrong size of input argument #1 (b); must be a vector" + error(60,msg); + end +end + +if type(b)~=8 & type(b)~=1 then + msg = "impzlength: Wrong type for argument #1 (b); Real or complex entries expected "; + error(53,msg); +end + +// ** a + +if isempty(a) then + a = 1; +end +if size(a,1)==1 & size(a,2)~=1 then + a = a(:); +elseif size(a,2)~=1 then + // only scalar/vector accepted + msg = "impzlength: Wrong size of input argument #2 (a); must be a vector" + error(60,msg); +end + +if type(a)~=8 & type(a)~=1 then + msg = "impzlength: Wrong type for argument #2 (a); Real or complex entries expected "; + error(53,msg); +end + +// ** tol +if (type(tol)~=8 & type(tol)~=1) | length(tol)~=1 | tol<=0 then + if isSos then + msg = "impzlength: Wrong type for argument #2 (tol); Positive scalar expected" + else + msg = "impzlength: Wrong type for argument #3 (tol); Positive scalar expected" + end + error(53,msg); +end + + +// ***** +// Calculation +// ***** + +if isSos + // calculating the length of all fir components and the max length of all + // iir components + fir_len = 1; + iir_len = 1; + for i=1:size(b,1) + num = b(i,1:3); + den = b(i,4:6); + + if den(2)==0 & den(3)==0 then + // fir section + fir_len = fir_len + length(num) - 1; + else + iir_len = max(iir_len, impzlength_singlefilter(num,den,tol)); + end + end + len = max(fir_len, iir_len); +else + len = impzlength_singlefilter(b,a,tol); +end + +endfunction + +function len = impzlength_singlefilter (b, a, tol) + // Adapted to scilab from octave's signal package (GNU GPL) + + if length(a) > 1 & sum(a(2:$))~=0 then + // IIR filter + precision = 1e-6; + + r = roots(a); + pole_mag = abs(r); + maxpole = max(pole_mag); + + // get the multiplicity of maxpole + mult = get_multiplicity(r,maxpole); + + if (maxpole > 1+precision) then // unstable -- cutoff at 120 dB + n = floor(6/log10(maxpole)); + elseif (maxpole < 1-precision) then //stable + n = floor(mult*log10(tol)/log10(maxpole)); + else // periodic -- cutoff after 5 cycles + n = 30; + + unit_poles_idx = find(pole_mag>=1-precision); + + r(unit_poles_idx) = -r(unit_poles_idx); + + pole_phase = atan(imag(r),real(r)); + + + // find longest period less than infinity + // cutoff after 5 cycles (w=10*pi) + periodic_idx = find(unit_poles_idx & abs(pole_phase)>0); + if ~isempty(periodic_idx) then + disp('periodic'); + n = ceil(10*%pi./min(abs(pole_phase(periodic_idx)))); + //if (n_periodic > n) then + // n = n_periodic; + //end + end + + // find most damped pole + // cutoff at -60 dB + damped_idx = find(pole_mag<1-precision); + if ~isempty(damped_idx) then + n_damped = floor(log10(tol)/log10(max(pole_mag(damped_idx)))); + if (n_damped > n) then + n = n_damped; + end + end + end + + // n = n + length(b) - 1; + len = max(length(a)+length(b)-1,floor(n)); + + else + len = length(b); + end + + + +endfunction + +function mult = get_multiplicity(poles,query_mag) + // returns the number of the poles with the given magnitude + // Complex conjugate pairs are counted as 1 + + mags = abs(poles); + conj_poles = conj(poles); + + // get indices of poles with matching magnitude + idx = mags>query_mag-1e-3 & mags<query_mag+1e-3; + + mult = 0; + // select only one pole from each complex conjugate pairs + for i=1:length(idx) + if idx(i) then + mult = mult+1; + for j=i+1:length(idx) + if poles(i)==conj_poles(j) then + idx(j) = %f; + end + end + end + end +endfunction diff --git a/macros/interp.bin b/macros/interp.bin Binary files differnew file mode 100644 index 0000000..36fbbe1 --- /dev/null +++ b/macros/interp.bin diff --git a/macros/interp.sci b/macros/interp.sci new file mode 100644 index 0000000..dd7e9e0 --- /dev/null +++ b/macros/interp.sci @@ -0,0 +1,38 @@ +//function already exists in scilab -- doesnt work like this one (I guess) +function y = interp(x, q, n, Wc) +//This function upsamples the signal x by a factor of q, using an order 2*q*n+1 FIR filter. +//Calling Sequence +//y = interp(x, q) +//y = interp(x, q, n) +//y = interp(x, q, n, Wc) +//Parameters +//x: scalar or vector of complex or real numbers +//q: positive integer value, or logical +//n: positive integer, default value 4 +//Wc: non decreasing vector or scalar, starting from 0 uptill 1, default value 0.5 +//Description +//This is an Octave function. +//This function upsamples the signal x by a factor of q, using an order 2*q*n+1 FIR filter. +//The second argument q must be an integer. The default values of the third and fourth arguments (n, Wc) are 4 and 0.5 respectively. +//Examples +//interp(1,2) +//ans = +// 0.4792743 0.3626016 +funcprot(0); +rhs = argn(2) +if(rhs<2 | rhs>4) //source code says rhs<1 -- but crashes for just one arg +error("Wrong number of input arguments.") +end + + + + + select(rhs) + case 2 then + y = callOctave("interp",x,q) + case 3 then + y = callOctave("interp",x,q,n) + case 4 then + y = callOctave("interp",x,q,n,Wc) + end +endfunction diff --git a/macros/intfilt.bin b/macros/intfilt.bin Binary files differnew file mode 100644 index 0000000..3a02288 --- /dev/null +++ b/macros/intfilt.bin diff --git a/macros/intfilt.sci b/macros/intfilt.sci new file mode 100644 index 0000000..15da95c --- /dev/null +++ b/macros/intfilt.sci @@ -0,0 +1,291 @@ +function [h, a]= intfilt(R, L, freqmult) + + + // This function estimate Interpolated FIR Filter Design. + // Calling Sequence + // h=intfilt(R,L,freqmult) + // [h a]=intfilt(R,L,freqmult) + + // Parameters + // R: Samples. It should be numeric + // L: bandlimited interpolation samples. It must be nonzero. + // freqmult: bandlimitedness of ALPHA times the Nyquist frequency, IT can be numeric or character ('B' or 'L', B is length + // (N+1)*L-1 for N odd and (N+1)*L for N even) + + // h: linear phase FIR filter. + + // Examples + // h=intfilt(20,10,'l') + // h=intfilt(20,10,1) + // + // See also + // Authors + // Jitendra Singh + + + if or(type(R)==10) | or(type(L)==10) then + error ('Argument R and L must be numeric.') + + else + + + + + if argn(2)==3 then + if type(freqmult)==10 then + typ=freqmult; + n=L; + else + freqmult=double(freqmult); + typ='b'; + end + + end + + if freqmult==0 then + h=repmat(%nan,[1,(2*R*L-1)]) + a=1; + else + + + //typ(1)=='b' | typ(1)=='B' + + if convstr(typ(1), 'u') =='B' then + n=2*R*L-1; + + + if freqmult==1 then + M=[R R 0 0]; + F= [0 1/(2*R) 1/(2*R) 0.5]; + else + M=R*[1 1]; + + if type(freqmult)==10 then + F=[0 98/2/R]; + else + F=[0 freqmult/2/R] + end + + for f=(1/R):(1/R):.5, + + if type(freqmult)==10 then + F=[F f-(98/2/R) f+(98/2/R)]; + else + F=[F f-(freqmult/2/R) f+(freqmult/2/R)]; + end + + M=[M 0 0]; + end; + + if (F(length(F))>.5), + F(length(F))=.5; + end; + end + N=n-1; F=F*2; M=M + + +if (max(F)>1) | (min(F)<0) + error('Frequencies in F must be in range [0,1]') +end + + + + +if ((length(F)-fix(length(F)./2).*2)~=0) + error('Argument F should of even length'); +end + +if (length(F) ~= length(M)) + error('The input arguments F & A must have same length'); +end + + + W = ones(length(F)/2,1); + ftype = ''; + + + ftype = 0; differ = 0; + + +N = N+1; + +F=F(:)/2; M=M(:); W=sqrt(W(:)); +dF = diff(F); + +if (length(F) ~= length(W)*2) + error('There should be one weight per band.'); +end + + +if or(dF<0), + + error('F frequency must be increasing') + +end + + + +if and(dF(2:2:length(dF)-1)==0) & length(dF) > 1, + band = 1; +else + band = 0; +end +if and((W-W(1))==0) + weights = 1; +else + weights = 0; +end + +L=(N-1)/2; + +Nodd = N-fix(N./2).*2; + + + if ~Nodd + m=(0:L)+.5; + else + m=(0:L); + end + + + k=m'; + need_matrix = (~band) | (~weights); + + + + + if need_matrix + + I1=k(:,ones(size(m,1),size(m,2)))+m(ones(size(k,1),size(k,2)),:); + I2=k(:,ones(size(m,1),size(m,2)))-m(ones(size(k,1),size(k,2)),:); + G=zeros(size(I1,1),size(I1,2)); + end + + if Nodd + k=k(2:length(k)); + b0=0; + end; + b=zeros(size(k,1),size(k,2)); + + dd=diff(F); + + if or(dd==0) & R==1 then + + h=repmat(%nan,[1,n]) + a=1 + + else + for s=1:2:length(F), + + + m=(M(s+1)-M(s))/(F(s+1)-F(s)); + b1=M(s)-m*F(s); + if Nodd + b0 = b0 + (b1*(F(s+1)-F(s)) + m/2*(F(s+1)*F(s+1)-F(s)*F(s)))* abs(W((s+1)/2)^2) ; + end + + b=b(:) + b = b+(m/(4*%pi*%pi)*(cos(2*%pi*k*F(s+1))-cos(2*%pi*k*F(s)))./(k.*k))* abs(W((s+1)/2)^2); + + + + b = b' + (F(s+1)*(m*F(s+1)+b1)*sinf(2*k*F(s+1))- F(s)*(m*F(s)+b1)*sinf(2*k*F(s)))* abs(W((s+1)/2)^2); + if need_matrix + + + + mat=matrix((.5*F(s+1)*(sinf(2*I1*F(s+1))+sinf(2*I2*F(s+1)))- .5*F(s)*(sinf(2*I1*F(s))+sinf(2*I2*F(s))) ) * abs(W((s+1)/2)^2),size(G,1),size(G,2)) ; + mat=mat'; + G=G+mat; + + + end + end; + + + if Nodd + b=[b0; b']; + end; + + if need_matrix + a=G\b; + else + a=(W(1)^2)*4*b; + if Nodd + a(1) = a(1)/2; + end + end + if Nodd + h=[a(L+1:-1:2)/2; a(1); a(2:L+1)/2].'; + else + h=.5*[flipud(a); a].'; + end; + end; + + //typ(1)=='l' | typ(1)=='L' + + + + elseif convstr(typ(1), 'u') =='L' then + + if n==0 then + h=ones(1,R) + return + end + + t=0:n*R+1; + l=ones(n+1,length(t)); + + for i=1:n+1 + for j=1:n+1 + if (j~=i) then + l(i,:)=l(i,:).*(t/R-j+1)/(i-j); + end + end + end + + h=zeros(1,(n+1)*R); + + for i=0:R-1 + for j=0:n + h(j*R+i+1)=l((n-j)+1,round((n-1)/2*R+i+1)); + end +end + + + +if h(1) == 0, + h(1) = []; + end + +else + error ('This type of filter is not recognized.') + + + end + a=1; + + + end + end + +endfunction + + + +////// Supplementary function + +function y=sinf(x) + + for i=1:length(x) + if x(i)==0 then + y(i)=1; + else + + y(i)=sin(%pi*x(i))/(%pi*x(i)); + end + + end + + y=y'; +endfunction diff --git a/macros/invimpinvar.bin b/macros/invimpinvar.bin Binary files differnew file mode 100644 index 0000000..a5f115f --- /dev/null +++ b/macros/invimpinvar.bin diff --git a/macros/invimpinvar.sci b/macros/invimpinvar.sci new file mode 100644 index 0000000..4e8bd7b --- /dev/null +++ b/macros/invimpinvar.sci @@ -0,0 +1,42 @@ +function [b_out, a_out] = invimpinvar (b, a, fs, tol) +//This function converts digital filter with coefficients b and a to analog, conserving impulse response. +//Calling Sequence +//[b, a] = impinvar (b, a) +//[b, a] = impinvar (b, a, fs) +//[b, a] = impinvar (b, a, fs, tol) +//Parameters +//b: real or complex valued scalar or vector +//a: real or complex valued scalar or vector, order should be greater than b +//fs: real or complex value, default value 1Hz +//tol: real or complex value, default value 0.0001 +//Description +//This is an Octave function. +//This function converts digital filter with coefficients b and a to analog, conserving impulse response. +//This function does the inverse of impinvar. +//Examples +//b = 0.0081000 +//a = [2.0000000, 0.56435378, 0.4572792, 0.00705544, 0.091000] +//[ay, by] = invimpinvar(b,a,10) +//ay = +// -1.6940e-16 4.6223e+00 -4.5210e+00 7.2880e+02 +//by = +// Columns 1 through 4: +// 1.0000e+00 3.0900e+01 9.6532e+02 1.2232e+04 +// Column 5: +// 1.1038e+05 +funcprot(0); +rhs = argn(2) +if(rhs<2) +error("Wrong number of input arguments.") +end + + + select(rhs) + case 2 then + [b_out,a_out] = callOctave("invimpinvar",b,a) + case 3 then + [b_out,a_out] = callOctave("invimpinvar",b,a,fs) + case 4 then + [b_out,a_out] = callOctave("invimpinvar",b,a,fs,tol) + end +endfunction diff --git a/macros/is2rc.bin b/macros/is2rc.bin Binary files differnew file mode 100644 index 0000000..325d4b5 --- /dev/null +++ b/macros/is2rc.bin diff --git a/macros/is2rc.sci b/macros/is2rc.sci new file mode 100644 index 0000000..ad68f5f --- /dev/null +++ b/macros/is2rc.sci @@ -0,0 +1,38 @@ +function [k] = is2rc(isin)
+// Convert inverse sine parameters to reflection coefficients
+//
+// Calling Sequence
+// K = is2rc(isin)
+//
+// Parameters
+// isin: input inverse sine parameters. Needs to be an array real numbers
+// k: output reflection coefficients corresponding to the reflection coefficients in input
+//
+// Description
+// This function returns a vector of reflection coefficients from a vector of inverse sine parameters
+// output array has k(i) = sin(pi/2*isin(i))
+//
+// Example
+// k = [0.3090 0.9801 0.0031 0.0082 -0.0082];
+// isin = rc2is(k) //Gives inverse sine parameters
+// k_dash = is2rc(isin)
+//
+// See also
+// rc2is
+// rc2poly
+// rc2ac
+// rc2lar
+//
+// Author
+// Parthe Pandit
+//
+// Bibliography
+// J.R. Deller, J.G. Proakis, J.H.L. Hansen, "Discrete-Time Processing of Speech Signals", Prentice Hall, Section 7.4.5
+
+//errcheck1
+if (~isreal(isin)),
+ error('Input inverse sine coefficients are not real');
+end
+
+k = sin(isin*%pi/2);
+endfunction
diff --git a/macros/isallpass.bin b/macros/isallpass.bin Binary files differnew file mode 100644 index 0000000..6f27769 --- /dev/null +++ b/macros/isallpass.bin diff --git a/macros/isallpass.sci b/macros/isallpass.sci new file mode 100644 index 0000000..d76c295 --- /dev/null +++ b/macros/isallpass.sci @@ -0,0 +1,149 @@ +//isallpass Determine whether filter is allpass + +//Calling Syntax +//flag = isallpass(b,a) +//flag = isallpass(sos) +//flag = isallpass(...,tol) +// b and a are the vectors containing zero and pole coefficients respectively +//tol, tolerance is used to determine when two numbers are close enough to be considered equal. +//Author: Parthasarathi Panda +//parthasarathipanda314@gmail.com +function isall=isallpass(varargin) + [nargout,nargin]=argn(); + if (nargin==2) then + v=size(varargin(1)); + if (v(2)~=6) | (v(2)==6 & v(1)==1) then + a=varargin(1); + b=varargin(2); + if type(a)~=1 | type(b)~=1 then + error('check input type'); + end + v=size(a); + if length(v)>2 then + error('check input dimension'); + end + v=size(b); + if length(v)>2 then + error('check input dimension'); + end + [n,k]=size(a); + if k==1 then + a=a'; + elseif n~=1 then + error('check input dimension'); + end + [n,k]=size(b); + if k==1 then + b=b'; + k=n; + elseif n~=1 then + error('check input dimension'); + end + tol=0; + else + sos=varargin(1); + if type(sos)~=1 then + error('check input dimension'); + end + v=size(sos); + if length(v)>2 then + error('check input dimension'); + end + if v(2)~=6 then + error('no. of columns must be 6'); + end + a=1;b=1; + for i=[1:v(1)] + a=convol(a,sos(1:3)); + b=convol(b,sos(4:6)); + end + tol=varargin(3); + if (type(tol)~=1) then + error('check input type'); + end + if (size(tol)~=[1,1]) then + error('check input dimension'); + end + end + elseif (nargin==1) then + tol=0; + sos=varargin(1); + if type(sos)~=1 then + error('check input dimension'); + end + v=size(sos); + if length(v)>2 then + error('check input dimension'); + end + if v(2)~=6 then + error('no. of columns must be 6'); + end + a=1;b=1; + for i=[1:v(1)] + a=convol(a,sos(1:3)); + b=convol(b,sos(4:6)); + end + elseif (nargin==3) then + a=varargin(1); + b=varargin(2); + if type(a)~=1 | type(b)~=1 then + error('check input type'); + end + v=size(a); + if length(v)>2 then + error('check input dimension'); + end + v=size(b); + if length(v)>2 then + error('check input dimension'); + end + [n,k]=size(a); + if k==1 then + a=a'; + elseif n~=1 then + error('check input dimension'); + end + [n,k]=size(b); + if k==1 then + b=b'; + k=n; + elseif n~=1 then + error('check input dimension'); + end + tol=varargin(3); + if (type(tol)~=1) then + error('check input type'); + end + if (size(tol)~=[1,1]) then + error('check input dimension'); + end + else + error('no. of inputs not matching'); + end + + poly_a=inv_coeff(a($:-1:1)); + poly_b=inv_coeff(b); + gc=gcd([poly_a,poly_b]); + [r,den]=pdiv(poly_b,gc); + [r,num]=pdiv(poly_a,gc); + poles=roots(den); + zerosinv=roots(num); + //sorting the zeros and poles to facilitate comparision + [l,k]=gsort(imag(poles)); + poles=poles(k); + [l,k]=gsort(real(poles)); + poles=poles(k); + [l,k]=gsort(imag(poles)); + zerosinv=zerosinv(k); + [l,k]=gsort(real(poles)); + zerosinv=zerosinv(k); + maxerr=max((poles-conj(zerosinv)).*conj(poles-conj(zerosinv))); + if zerosinv==[] & poles==[] then + isall=1; + elseif maxerr<=tol then + isall=1; + else + isall=0; + end + +endfunction diff --git a/macros/isfir.bin b/macros/isfir.bin Binary files differnew file mode 100644 index 0000000..c9670a9 --- /dev/null +++ b/macros/isfir.bin diff --git a/macros/isfir.sci b/macros/isfir.sci new file mode 100644 index 0000000..d9e4a05 --- /dev/null +++ b/macros/isfir.sci @@ -0,0 +1,57 @@ +//Author: Parthasarathi Panda +//parthasarathipanda314@gmail.com +function fir=isfir(varargin) + [nargout,nargin]=argn(); + if (nargin==2) then + a=varargin(1); + b=varargin(2); + if type(a)~=1 | type(b)~=1 then + error('check input type'); + end + v=size(a); + if length(v)>2 then + error('check input dimension'); + end + v=size(b); + if length(v)>2 then + error('check input dimension'); + end + [n,k]=size(a); + if k==1 then + a=a'; + elseif n~=1 then + error('check input dimension'); + end + [n,k]=size(b); + if k==1 then + b=b'; + k=n; + elseif n~=1 then + error('check input dimension'); + end + elseif (nargin==1) then + sos=varargin(1); + if type(sos)~=1 then + error('check input dimension'); + end + v=size(sos); + if length(v)>2 then + error('check input dimension'); + end + if v(2)~=6 then + error('no. of columns must be 6'); + end + a=1;b=1; + for i=[1:v(1)] + a=convol(a,sos(1:3)); + b=convol(b,sos(4:6)); + end + else + error('no. of inputs not matching'); + end + if length(b)==1 then + fir=1; + else + fir=0; + end +endfunction diff --git a/macros/islinphase.bin b/macros/islinphase.bin Binary files differnew file mode 100644 index 0000000..2f00f5e --- /dev/null +++ b/macros/islinphase.bin diff --git a/macros/islinphase.sci b/macros/islinphase.sci new file mode 100644 index 0000000..f004419 --- /dev/null +++ b/macros/islinphase.sci @@ -0,0 +1,134 @@ +//islinphase Determine whether filter has linear phase + +// Calling Syntax +//flag = islinphase(b,a) +//flag = islinphase(sos) +//flag = islinphase(...,tol) + +//Author: Parthasarathi Panda +//parthasarathipanda314@gmail.com +function islin=islinphase(varargin) + [nargout,nargin]=argn(); + if (nargin==2) then + v=size(varargin(1)); + if (v(2)~=6) | (v(2)==6 & v(1)==1) then + a=varargin(1); + b=varargin(2); + if type(a)~=1 | type(b)~=1 then + error('check input type'); + end + v=size(a); + if length(v)>2 then + error('check input dimension'); + end + v=size(b); + if length(v)>2 then + error('check input dimension'); + end + [n,k]=size(a); + if k==1 then + a=a'; + elseif n~=1 then + error('check input dimension'); + end + [n,k]=size(b); + if k==1 then + b=b'; + k=n; + elseif n~=1 then + error('check input dimension'); + end + tol=0; + else + sos=varargin(1); + if type(sos)~=1 then + error('check input dimension'); + end + v=size(sos); + if length(v)>2 then + error('check input dimension'); + end + if v(2)~=6 then + error('no. of columns must be 6'); + end + a=1;b=1; + for i=[1:v(1)] + a=convol(a,sos(1:3)); + b=convol(b,sos(4:6)); + end + tol=varargin(3); + if (type(tol)~=1) then + error('check input type'); + end + if (size(tol)~=[1,1]) then + error('check input dimension'); + end + end + elseif (nargin==1) then + tol=0; + sos=varargin(1); + if type(sos)~=1 then + error('check input dimension'); + end + v=size(sos); + if length(v)>2 then + error('check input dimension'); + end + if v(2)~=6 then + error('no. of columns must be 6'); + end + a=1;b=1; + for i=[1:v(1)] + a=convol(a,sos(1:3)); + b=convol(b,sos(4:6)); + end + elseif (nargin==3) then + a=varargin(1); + b=varargin(2); + if type(a)~=1 | type(b)~=1 then + error('check input type'); + end + v=size(a); + if length(v)>2 then + error('check input dimension'); + end + v=size(b); + if length(v)>2 then + error('check input dimension'); + end + [n,k]=size(a); + if k==1 then + a=a'; + elseif n~=1 then + error('check input dimension'); + end + [n,k]=size(b); + if k==1 then + b=b'; + k=n; + elseif n~=1 then + error('check input dimension'); + end + tol=varargin(3); + if (type(tol)~=1) then + error('check input type'); + end + if (size(tol)~=[1,1]) then + error('check input dimension'); + end + else + error('no. of inputs not matching'); + end + if length(b)==1 then + err=a-a($:-1:1); + maxerr=max(err.*conj(err)); + if err<=tol then + islin=1; + else + islin=0; + end + else + islin=0; + end + +endfunction diff --git a/macros/ismaxphase.bin b/macros/ismaxphase.bin Binary files differnew file mode 100644 index 0000000..3684e9a --- /dev/null +++ b/macros/ismaxphase.bin diff --git a/macros/ismaxphase.sci b/macros/ismaxphase.sci new file mode 100644 index 0000000..e40adbe --- /dev/null +++ b/macros/ismaxphase.sci @@ -0,0 +1,86 @@ +//ismaxphase Determine whether filter is maximum phase +//Syntax +//flag = ismaxphase(b,a) +//flag = ismaxphase(sos) +//flag = ismaxphase(...,tol) +// b and a are the vectors containing zero and pole coefficients respectively +//tol, tolerance is used to determine when two numbers are close enough to be considered equal. +//Author: Parthasarathi Panda +//parthasarathipanda314@gmail.com +function ismax=ismaxphase(varargin) + [nargout,nargin]=argn(); + if (nargin==2) then + a=varargin(1); + b=varargin(2); + if type(a)~=1 | type(b)~=1 then + error('check input type'); + end + v=size(a); + if length(v)>2 then + error('check input dimension'); + end + v=size(b); + if length(v)>2 then + error('check input dimension'); + end + [n,k]=size(a); + if k==1 then + a=a'; + elseif n~=1 then + error('check input dimension'); + end + [n,k]=size(b); + if k==1 then + b=b'; + k=n; + elseif n~=1 then + error('check input dimension'); + end + elseif (nargin==1) then + sos=varargin(1); + if type(sos)~=1 then + error('check input dimension'); + end + v=size(sos); + if length(v)>2 then + error('check input dimension'); + end + if v(2)~=6 then + error('no. of columns must be 6'); + end + a=1;b=1; + for i=[1:v(1)] + a=convol(a,sos(1:3)); + b=convol(b,sos(4:6)); + end + else + error('no. of inputs not matching'); + end + poly_a=inv_coeff(a); + poly_b=inv_coeff(b); + z=inv_coeff([1,0]); + gc=gcd([poly_a,poly_b]); + [r,den]=pdiv(poly_b,gc); + [r,num]=pdiv(poly_a,gc); + maxpole=min(abs(roots(den))); + minzero=max(abs(roots(num))); + if length(a)==1 then + if length(b)==1 then + ismax=0; + elseif minzero>1 then + ismax=0; + else + ismax=1; + end + elseif maxpole>1 then + if length(b)==1 then + ismax=0; + elseif minzero>1 then + ismax=0; + else + ismax=1; + end + else + ismax=0; + end +endfunction diff --git a/macros/isminphase.bin b/macros/isminphase.bin Binary files differnew file mode 100644 index 0000000..fc1991d --- /dev/null +++ b/macros/isminphase.bin diff --git a/macros/isminphase.sci b/macros/isminphase.sci new file mode 100644 index 0000000..ccd2754 --- /dev/null +++ b/macros/isminphase.sci @@ -0,0 +1,79 @@ +//Author: Parthasarathi Panda +//parthasarathipanda314@gmail.com +function ismin=isminphase(varargin) + [nargout,nargin]=argn(); + if (nargin==2) then + a=varargin(1); + b=varargin(2); + if type(a)~=1 | type(b)~=1 then + error('check input type'); + end + v=size(a); + if length(v)>2 then + error('check input dimension'); + end + v=size(b); + if length(v)>2 then + error('check input dimension'); + end + [n,k]=size(a); + if k==1 then + a=a'; + elseif n~=1 then + error('check input dimension'); + end + [n,k]=size(b); + if k==1 then + b=b'; + k=n; + elseif n~=1 then + error('check input dimension'); + end + elseif (nargin==1) then + sos=varargin(1); + if type(sos)~=1 then + error('check input dimension'); + end + v=size(sos); + if length(v)>2 then + error('check input dimension'); + end + if v(2)~=6 then + error('no. of columns must be 6'); + end + a=1;b=1; + for i=[1:v(1)] + a=convol(a,sos(i,1:3)); + b=convol(b,sos(i,4:6)); + end + else + error('no. of inputs not matching'); + end + poly_a=inv_coeff(a); + poly_b=inv_coeff(b); + z=inv_coeff([1,0]); + gc=gcd([poly_a,poly_b]); + [r,den]=pdiv(poly_b,gc); + [r,num]=pdiv(poly_a,gc); + maxpole=min(abs(roots(den))); + maxzero=min(abs(roots(num))); + if length(a)==1 then + if length(b)==1 then + ismin=1; + elseif maxzero>1 then + ismin=1; + else + ismin=0; + end + elseif maxpole>1 then + if length(b)==1 then + ismin=1; + elseif maxzero>1 then + ismin=1; + else + ismin=0; + end + else + ismin=0; + end +endfunction diff --git a/macros/isstable.bin b/macros/isstable.bin Binary files differnew file mode 100644 index 0000000..304c4be --- /dev/null +++ b/macros/isstable.bin diff --git a/macros/isstable.sci b/macros/isstable.sci new file mode 100644 index 0000000..db7d5b5 --- /dev/null +++ b/macros/isstable.sci @@ -0,0 +1,96 @@ +//isstable True for stable filter +// FLAG = ISSTABLE(B,A) returns a logical output, FLAG, equal to TRUE if +// the filter specified by numerator coefficients B, and denominator +// coefficients A, is stable. Input vectors B, and A define a filter with +// transfer function: +// +// jw -jw -jmw +// jw B(e) b(1) + b(2)e + .... + b(m+1)e +// H(e) = ---- = ------------------------------------ +// jw -jw -jnw +// A(e) a(1) + a(2)e + .... + a(n+1)e +// +// FLAG = ISSTABLE(SOS) returns TRUE if the filter specified using the +// second order sections matrix, SOS, is stable. SOS is a Kx6 matrix, +// where the number of sections, K, must be greater than or equal to 2. +// Each row of SOS corresponds to the coefficients of a second order +// filter. From the transfer function displayed above, the ith row of the +// SOS matrix corresponds to [bi(1) bi(2) bi(3) ai(1) ai(2) ai(3)]. +// Calling Syntax +// flag=isstable(b,a); +// flag=isstable(sos); +//Author: Parthasarathi Panda +//parthasarathipanda314@gmail.com +function isstab=isstable(varargin) +[nargout,nargin]=argn(); +if (nargin==2) then//(a,b) is the input + a=varargin(1); + b=varargin(2); + //verifying type and length of input + if type(a)~=1 | type(b)~=1 then + error('check input type'); + end + v=size(a); + if length(v)>2 then + error('check input dimension'); + end + v=size(b); + if length(v)>2 then + error('check input dimension'); + end + [n,k]=size(a); + if k==1 then + a=a'; + elseif n~=1 then + error('check input dimension'); + end + [n,k]=size(b); + if k==1 then + b=b'; + k=n; + elseif n~=1 then + error('check input dimension'); + end +elseif (nargin==1) then//sos form is given as input + sos=varargin(1); + v=size(sos); + if(v(1)>1) then + //verifying type and length of input + if type(sos)~=1 then + error('check input type'); + end + + if length(v)>2 then + error('check input dimension'); + end + if v(2)~=6 then + error('When first input is a matrix, it must have exactly 6 columns to be a valid SOS matrix.'); + end + a=1;b=1; + //converting it to rational form + for i=[1:v(1)] + a=convol(a,sos(i,1:3)); + b=convol(b,sos(i,4:6)); + end + else + b=1; + end +else + error('no. of inputs not matching'); +end +if length(b)==1 then + isstab=1; +else + poly_a=inv_coeff(a);//constructing numerator polynomial + poly_b=inv_coeff(b);//constructing denominator polynomial + gc=gcd([poly_a,poly_b]);//computing gcd to remove common roots + [r,den]=pdiv(poly_b,gc);//dividing off gcd + time_constant=min(abs(roots(den)));//finding the minumum magnitude pole + if time_constant<=1 then//pole magnitude should be greater than 1 + disp('unstable system'); + isstab=0; + else + isstab=1; + end +end +endfunction diff --git a/macros/kaiser.bin b/macros/kaiser.bin Binary files differnew file mode 100644 index 0000000..4e00979 --- /dev/null +++ b/macros/kaiser.bin diff --git a/macros/kaiser.sci b/macros/kaiser.sci new file mode 100644 index 0000000..2c33b3f --- /dev/null +++ b/macros/kaiser.sci @@ -0,0 +1,33 @@ +function w = kaiser (m, beta) +//This function returns the filter coefficients of a Kaiser window. +//Calling Sequence +//w = kaiser (m) +//w = kaiser (m, beta) +//Parameters +//m: positive integer value +//beta: real scalar value +//w: output variable, vector of real numbers +//Description +//This is an Octave function. +//This function returns the filter coefficients of a Kaiser window of length m supplied as input, to the output vector w. +//The second parameter gives the stop band attenuation of the Fourier transform of the window on derivation. +//Examples +//kaiser(6,0.2) +//ans = +// 0.9900745 +// 0.9964211 +// 0.9996020 +// 0.9996020 +// 0.9964211 +// 0.9900745 +funcprot(0); +rhs = argn(2) +if(rhs<1 | rhs>2) +error("Wrong number of input arguments.") +end +if(rhs==1) +w = callOctave("kaiser", m) +elseif(rhs==2) +w = callOctave("kaiser", m, beta) +end +endfunction diff --git a/macros/lar2rc.bin b/macros/lar2rc.bin Binary files differnew file mode 100644 index 0000000..16ad37f --- /dev/null +++ b/macros/lar2rc.bin diff --git a/macros/lar2rc.sci b/macros/lar2rc.sci new file mode 100644 index 0000000..15fa4ee --- /dev/null +++ b/macros/lar2rc.sci @@ -0,0 +1,35 @@ +function k=lar2rc(g) + +//lar2rc convert log area ratios to reflection coefficients. +// Calling Sequence +// k = lar2rc(g) +// Parameters +// g: define log area ratios. +// k: returns the reflection coefficients. +// Examples +//X = [7 6 5 8 3 6 8 7 5 2 4 7 4 3 2 5 4 9 5 3 5 7 3 9 4 1 2 0 5 4 8 6 4 6 5 3]; +// k = lar2rc(X) +// or t=[2 5 6; 8 6 5; 8 9 4] +// k = lar2rc(t) +// +// See also +// +// Author +// Jitendra Singh +// +//Modified to match MATLAB o/p when i/p is of type char and is a string by Debdeep Dey + if or(type(g)==10) then + [r,c]=size(g); + if r==1 & c==1 then + k=ones(1,length(g)); + else + k=ones(size(g,1), size(g,2)) + end + +else + if ~isreal(g) then + error('Log area ratios must be real.') + end + k=-(tanh(-g/2)); + end +endfunction diff --git a/macros/latc2tf.bin b/macros/latc2tf.bin Binary files differnew file mode 100644 index 0000000..96fbc64 --- /dev/null +++ b/macros/latc2tf.bin diff --git a/macros/latc2tf.sci b/macros/latc2tf.sci new file mode 100644 index 0000000..fb19e6d --- /dev/null +++ b/macros/latc2tf.sci @@ -0,0 +1,225 @@ +function [num,den] = latc2tf(k,varargin) + // Convert lattice filter parameters to transfer function coefficients + // + // + // Calling sequence + // [num,den] = latc2tf(k,v) + // [num,den] = latc2tf(k,'iiroption') + // num = latc2tf(k,'firoption') + // + // + // Description + // [num,den] = latc2tf(k,v) + // Finds the transfer function of the IIR filter from the lattice + // coefficients k and ladder coefficients v. + // [num,den] = latc2tf(k,'iiroption') + // Finds the transfer function of the allpass or allpole (specified by + // the iiroption flag) IIR filter. + // num = latc2tf(k,'firoption') + // Finds the transfer function of the FIR filter from the lattice + // coefficients k. The firoption flag specifies the type of the FIR + // filter (can be 'min, 'max', or 'FIR') + // + // Parameters: + // k - double - vector + // Lattice coefficients + // Lattice coefficients for FIR/IIR filter. Can be real or complex. + // v - double - vector + // Ladder coefficients + // Ladder coefficients for IIR filters. Can be real or complex. + // iiroption - string flag - 'allpole', or 'allpass' + // Specification of the type if IIR filter + // firoption - string flag - 'min', 'max', or 'FIR' (default) + // Speficication of the type of FIR filter + // + // Examples + // 1) FIR filter + // k1 = [1/2 1/2 1/4]; + // [num1,den1] = latc2tf(k1); + // + // See also + // latcfilt | tf2latc + // + // References + // [1] J.G. Proakis, D.G. Manolakis, Digital Signal Processing, + // 3rd ed., Prentice Hall, N.J., 1996, Chapter 7. + // [2] S. K. Mitra, Digital Signal Processing, A Computer + // Based Approach, McGraw-Hill, N.Y., 1998, Chapter 6. + // + // Authors + // Ayush Baid + + + [numOutArgs,numInArgs] = argn(0); + +// ** Check on number of input arguments ** + if numOutArgs<1 | numOutArgs>2 then + msg = "cummin: Wrong number of output argument; 1-2 expected"; + error(78,msg); + end + + if numInArgs<1 | numInArgs>2 then + msg = "cummin: Wrong number of input argument; 1-2 expected"; + error(77,msg); + end + + +// ** Parsing the input arguments ** + +// 1) k: +// must be a vector +// can be real or complex valued, (negative values allowed) + + // checking data type + if ~(type(k)==1 | type(k)==8) then + msg = "latc2tf: Wrong type for argument #1 (k); Real or complex vector expected"; + error(53,msg); + end + + // checking the dimensions (must be a vector) + if ~(size(k,1)==1 | size(k,2)==1) then + msg = "latc2tf: Wrong type for argument #1 (k); Real or complex vector expected"; + error(53,msg); + end + // convert to column vector + if size(k,1)==1 then + k = k(:); + end + + L = length(varargin); +// Parsing the 2nd argument + if L>=1 then + arg2 = varargin(1); + // string check + if type(arg2)==10 then + if strcmpi(arg2,'FIR')==0 then + [num,den] = latc2tf_fir(k,2); + elseif strcmpi(arg2,'min')==0 then + [num,den] = latc2tf_fir(k,0); + elseif strcmpi(arg2,'max')==0 then + [num,den] = latc2tf_fir(k,1); + elseif strcmpi(arg2,'allpole')==0 then + [num,den] = latc2tf_iir2(k,1); + elseif strcmpi(arg2,'allpass')==0 then + [num,den] = latc2tf_iir1(k); + else + msg = "latc2tf: Wrong value for argument #2 (string flag) "; + error(53,msg); + end + elseif (type(arg2)==1 | type(arg2)==8) then + // arg2 is ladder coefficients + + // check for vector input + if ~(size(arg2,1)==1 | size(arg2,2)==1) then + msg = "latc2tf: Wrong type for argument #2 (v); Real or complex vector expected"; + error(53,msg); + end + + // convert to column vector + if size(arg2,1)==1 then + arg2 = arg2(:); + end + + [num,den] = latc2tf_iir2(k,arg2); + + else + msg = "latc2tf: Wrong type for argument #2; Real or complex vector" + ... + "(ladder coeffs k) or string flag expected"; + error(53,msg); + end + else + [num,den] = latc2tf_fir(k,2); + end + + num = num'; + den = den'; + +endfunction + +function [num,den] = latc2tf_fir(k,option) + // latc2tf for FIR filters + // Input Arguments + // k: lattice coefficients + // option: 0 for min-phase (default), 1 for max-phase; 2 for fir + + if isempty(k) then + num = 1; + den = 1; + return + end + + den = 1; + + p = length(k); + num = 1; + + for j=2:p+1 + num = [num; 0] + k(j-1)*[0; conj(num($:-1:1,:))]; + end + + if option==1 then + num = conj(num($:-1:1)); + end + + +endfunction + +function [num,den] = latc2tf_iir1(k) + // for all pass IIR filters + + if isempty(k) then + num = 1; + den = 1; + return + end + + p = length(k); + den = 1; + + for j=2:p+1 + den = [den; 0] + k(j-1)*[0; conj(den($:-1:1,:))]; + end + + num = conj(den($:-1:1)); + + +endfunction + + +function [num,den] = latc2tf_iir2(k,v) + // for allpole and general IIR fitlers + if isempty(k) & isempty(v) then + num = []; + den = []; + elseif isempty(k) & length(v)==1 then + num = v; + den = 1; + else + // k is a column vector + M = size(k,1)+1; + + // pad v with appropriate number of zeros + l_v = size(v,1); + diff = M - l_v; + if diff>0 then + v = [v; zeros(diff,1)]; + elseif diff<0 then + k = [k; zeros(-diff,1)]; + end + + + p = length(k); + den = 1; + + for j=2:p+1 + den = [den; 0] + k(j-1)*[0; conj(den($:-1:1,:))]; + end + + exec('rlevinson.sci',-1); + + [r,temp] = rlevinson(den,1); + + num = (temp*v); + end + +endfunction diff --git a/macros/latcfilt.bin b/macros/latcfilt.bin Binary files differnew file mode 100644 index 0000000..3887ce0 --- /dev/null +++ b/macros/latcfilt.bin diff --git a/macros/latcfilt.sci b/macros/latcfilt.sci new file mode 100644 index 0000000..941aa7e --- /dev/null +++ b/macros/latcfilt.sci @@ -0,0 +1,106 @@ +//Author: Parthasarathi Panda +//parthasarathipanda314@gmail.com +//the function is for application on vectors only +function [f,g,zo]=latcfilt(k,x,v,zi,dim) + [nargout,nargin]=argn(); + //(k,x) + if nargin==2 then + v=[zeros(length(k)-1,1);1]; + zi=zeros(length(k),1); + //(k,x,v) + elseif nargin==3 then + zi=zeros(length(k),1); + //making sure k is not a matrix + [m,n]=size(k); + if m~=1 & n~=1 then + error('k cannot be a matrix'); + end + //(k,x,v,zi) + elseif nargin==4 + [m,n]=size(k); + if m~=1 & n~=1 then + error('k cannot be a matrix'); + end + //(k,x,v,zi,dim) + elseif nargin==5 + if dim==2 then + x=x'; + end + [m,n]=size(k); + if m~=1 & n~=1 then + error('k cannot be a matrix'); + end + else + error('check input format'); + end + + //making sure they are all real or complex matrices + if type(k)~=1 | type(x)~=1 | type(v)~=1 | type(zi)~=1 then + error('wrong input data type'); + end + //sanitising v + [m,n]=size(v); + if m==1 then + v=v'; + elseif m~=1 & n~=1 + error('v cannot be a matrix'); + end + if length(v)~=(length(k)+1) then + error('dimension mis-match between k and v'); + end + //sanitising zi + [m,n]=size(zi); + if m==1 then + zi=zi'; + elseif m~=1 & n~=1 + error('zi cannot be a matrix'); + end + if length(zi)~=(length(k)) then + error('dimension mis-match between zi and k'); + end + //if k is row vector make it a column vector + [m,n]=size(k); + if m==1 then + k=k'; + end + //if x is row vector make it a column vector + [m,n]=size(x); + if m==1 then + x=x'; + end + [m,n]=size(x); + [mk,nk]=size(k); + //when x and k are both matrices + if nk>1 & n>1 then + if nk==n then + f=[];g=[];zo=[]; + for i=[1:n] + [f1,g1,zo1]=latcfilt1(k(:,i),x(:,i),v,zi); + f=[f,f1]; + g=[g,g1]; + zo=[zo,zo1]; + end + else + error('the number of columns of k and x must match'); + end + //k is a vector + elseif nk==1 + f=[];g=[];zo=[]; + for i=[1:n] + [f1,g1,zo1]=latcfilt1(k,x(:,i),v,zi); + f=[f,f1]; + g=[g,g1]; + zo=[zo,zo1]; + end + //k is a column + elseif n==1 + f=[];g=[];zo=[]; + for i=[1:nk] + [f1,g1,zo1]=latcfilt1(k(:,i),x,v,zi); + f=[f,f1]; + g=[g,g1]; + zo=[zo,zo1]; + end + end + +endfunction diff --git a/macros/latcfilt1.bin b/macros/latcfilt1.bin Binary files differnew file mode 100644 index 0000000..72f06d8 --- /dev/null +++ b/macros/latcfilt1.bin diff --git a/macros/latcfilt1.sci b/macros/latcfilt1.sci new file mode 100644 index 0000000..194ec76 --- /dev/null +++ b/macros/latcfilt1.sci @@ -0,0 +1,28 @@ +//Author: Parthasarathi Panda +//parthasarathipanda314@gmail.com +//the function is for application on vectors only +function [f,g,zo]=latcfilt1(k,v,x,zi) + N=length(k); + gv=zi; + //gv[n+1]=Agv[n]+Bfv[n] + //fv[n]=-Cgv[n]+Dx[n] + //computing A,B,C and D as required by the system + C=[]; + for i=[1:N] + C=[C;[zeros(1,N-i),(k(i:N))']] + end + A=[zeros(1,N);[eye(N-1,N-1),zeros(N-1,1)]]; + B=[1,zeros(1,N-1);diag(k(1:(N-1))),zeros(N-1,1)]; + D=ones(N,1); + l=length(x); + g=[]; + f=[]; + //iterating through the input entry + for i=[1:l] + fv=D*x(i)-C*gv; + gv=A*gv+B*fv; + g=[g;gv(N)+k(N)*fv(N)]; + f=[f;v(N+1)*g(i)+(v(1:N))'*gv]; + end + zo=gv; +endfunction diff --git a/macros/levdown.bin b/macros/levdown.bin Binary files differnew file mode 100644 index 0000000..06045ae --- /dev/null +++ b/macros/levdown.bin diff --git a/macros/levdown.sci b/macros/levdown.sci new file mode 100644 index 0000000..f09612b --- /dev/null +++ b/macros/levdown.sci @@ -0,0 +1,15 @@ +function [a,e]=levdown(a, efinal) + + + ee=a($); + + a = (a-a($)*flipdim(a,2,1))/(1-a($)^2); + + a=a(1:$-1) + + + econj=conj(ee); + econj=econj'; + e = efinal/(1.-(econj.*ee)); + +endfunction diff --git a/macros/levin.bin b/macros/levin.bin Binary files differnew file mode 100644 index 0000000..87a4029 --- /dev/null +++ b/macros/levin.bin diff --git a/macros/levin.sci b/macros/levin.sci new file mode 100644 index 0000000..9f4d002 --- /dev/null +++ b/macros/levin.sci @@ -0,0 +1,58 @@ +function [ar, sigma2,rc] = levin(r);
+// //[ar,sigma2,rc]=lev(r)
+// //Resolve the Yule-Walker equations:
+// //
+// // |r(0) r(1) ... r(N-1)|| a(1) | |sigma2|
+// // |r(1) r(0) ... r(n-1)|| a(2) | | 0 |
+// // | : : ... : || : |=| 0 |
+// // | : : ... : || : | | 0 |
+// // |r(N-1) r(N-2) ... r(0) ||a(N-1)| | 0 |
+// //
+// //using Levinson's algorithm.
+// // r :Correlation coefficients
+// // ar :Auto-Regressive model parameters
+// // sigma2 :Scale constant
+// // rc :Reflection coefficients
+if length(r)==1 then
+ ar=1;
+ sigma2=r;
+ rc=[];
+ else
+
+
+
+ ar = 0;
+ aj(1) = 1;
+ ej = r(1);
+ rc = [];
+ p=length(r)-1
+
+
+ for j=1:p,
+ aj1 = zeros(j+1, 1);
+ aj1(1) = 1;
+ gammaj = r(j+1);
+ for i=2:j,
+ gammaj = gammaj + aj(i)*r(j-i+2);
+ end
+ if ej==0 then
+ lambdaj1=%nan
+ else
+ lambdaj1 = -gammaj/ej;
+ end
+
+ rc=[rc; lambdaj1];
+
+ for i=2:j,
+ aj1(i) = aj(i)+lambdaj1*(aj(j-i+2)');
+ end
+ aj1(j+1) = lambdaj1;
+ ej1 = ej*(1-abs(lambdaj1)^2);
+
+ aj = aj1;
+ ar = aj1;
+ ej = ej1;
+ end
+ sigma2 = sqrt(ej1);
+ end
+ endfunction
diff --git a/macros/levinson.bin b/macros/levinson.bin Binary files differnew file mode 100644 index 0000000..55ad79d --- /dev/null +++ b/macros/levinson.bin diff --git a/macros/levinson.sci b/macros/levinson.sci new file mode 100644 index 0000000..ccb0ab9 --- /dev/null +++ b/macros/levinson.sci @@ -0,0 +1,83 @@ +//levinson levinson- durbin algorithm +//calling syntax +//a = levinson(r) +//a = levinson(r,n) +//[a,e] = levinson(r,n) +//[a,e,k] = levinson(r,n) + +// where +// a is the coefficients of a length(r)-1 order autoregressive +//linear process +//e is the prediction error when order is n +// k is a column vector containing the reflection coefficients of length n + +// Author Debdeep Dey +function [a, v_f, ref_f] = levinson (acf, p) + +if ( argn(2)<1 ) + error("Too few input arguments"); + // elseif( length(acf)<2 ) + // error( "levinson: arg 1 (acf) must be vector of length >1\n"); +elseif ( argn(2)>1 & ( ~isscalar(p) | fix(p)~=p ) ) + error( "levinson: arg 2 (p) must be integer >0\n"); +elseif (isempty(acf)) + error("R cannot be empty"); +else + if ((argn(2) == 1)|(p>=length(acf))) + p = length(acf) - 1; + end + if( size(acf,1)==1 & size(acf,2)>1 ) then + acf=acf(:); + + end // force a column vector + if size(acf,1)>=1 then // handles matrix i/p + + acf=acf'; + a=acf; + rows=size(acf,1); + for i=1:rows + acf_temp=acf(i,:); + acf_temp=acf_temp(:); + p=length(acf_temp)-1; + //disp(acf_temp); + if argn(1) < 3 & p < 100 + + //// Kay & Marple Eqn (2.39) + + R = toeplitz(acf_temp(1:p), conj(acf_temp(1:p))); + an = R \ -acf_temp(2:p+1); + an= [ 1, an.' ]; + v_f(i,:)= real( an*conj(acf_temp(1:p+1)) ); + a(i,:)=an; + an=[]; + + else + + //// Kay & Marple Eqns (2.42-2.46) + + ref = zeros(p,1); + g = -acf_temp(2)/acf_temp(1); + + an = [ g ]; + v= real( ( 1 - g*conj(g)) * acf_temp(1) ); + ref(1) = g; + for t = 2 : p + g = -(acf_temp(t+1) + an * acf_temp(t:-1:2)) / v; + an = [ an+g*conj(an(t-1:-1:1)), g ]; + v = v * ( 1 - real(g*conj(g)) ) ; + ref(t) = g; + end + v_f(i,:)=v; + v=[]; + ref_f(:,i)=ref; + an = [1, an]; + a(i,:)=an; + an=[]; + end //end if + end //end for + end +end + + + +endfunction diff --git a/macros/lib b/macros/lib Binary files differnew file mode 100644 index 0000000..196ee56 --- /dev/null +++ b/macros/lib diff --git a/macros/lpc.bin b/macros/lpc.bin Binary files differnew file mode 100644 index 0000000..ccaf9d9 --- /dev/null +++ b/macros/lpc.bin diff --git a/macros/lpc.sci b/macros/lpc.sci new file mode 100644 index 0000000..02ab1a5 --- /dev/null +++ b/macros/lpc.sci @@ -0,0 +1,173 @@ +function [a,g] = lpc(x,varargin) + // Linear prediction filter coefficients + // + // + // Calling Sequence + // [a,g] = lpc(x) + // [a,g] = lpc(x,p) + // + // + // Description + // [a,g] = lpc(x,p) + // Determines the coefficients of a pth order forward linear predictor + // filter by minimizing the squared error. If p is unspecified, a + // default value of length(x)-1 is used. + // + // Parameters + // x: double + // The input signal. If x is a matrix, each column in treated as an + // independent computation + // p: int, natural number, scalar + // The order of the linear prediction filter to be inferred. Value must + // be a scalar and a positive natural number. p must be less than or + // equal to the length of the signal vector + // a: double + // The coefficients of the forward linear predictor. Coefficient for + // each signal input is returned as a row vector. + // g: double + // Column vector of averaged square prediction error + // + // + // Examples + // 1) + // noise = randn(20000,1); + // x = filter(1,[1 1/5 1/3 1/4],noise); + // x = x(15904:20000); + // [a,g] = lpc(x,3); + // + // + // References + // [1] Hayes, Monson H. Statistical digital signal processing and modeling. + // John Wiley & Sons, 2009, pg. 220 + // + // See also + // aryule | levinson | prony | pyulear | stmcb + // + // Authors + // Ayush Baid + // + + // ** Check on number of arguments ** + [numOutArgs,numInArgs] = argn(0); + + if numInArgs<1 | numInArgs>2 then + msg = "lpc: Wrong number of input argument; 1-2 expected"; + error(77,msg); + end + if numOutArgs~=2 then + msg = "lpc: Wrong number of output argument; 2 expected"; + error(78,msg); + end + + // ** Parsing input arguments ** + // 1) check on x + + // check on dimensions + if size(x,1)==1 | size(x,2)==1 then + // x is a single signal + x = x(:); // converting to column vector + end + if ndims(x)>2 then + msg = "lpc: Wrong size for argument #1 (x): a vector or 2D matrix expected" + error(60,msg); + end + + // check on data type + if type(x)==8 then + // convert int to double + x = double(x); + elseif type(x)~=1 then + msg = "lpc: Wrong type for argument #1 (x): Real or complex matrix expected"; + error(53,msg); + end + + if length(varargin)==0 then + p = size(x,1)-1; + else + p = varargin(1); + // 2) check on p + if length(p)~=1 then + msg = "lpc: Wrong size for argument #2 (p): Scalar expected"; + error(60,msg); + end + + if type(p)~=1 & type(p)~=8 then + msg = "lpc: Wrong type for argument #2 (p): Natural number expected"; + error(53,msg); + end + + if p~=round(p) | p<=0 then + msg = "lpc: Wrong type for argument #2 (p): Natural number expected"; + error(53,msg); + end + + if p>size(x,1) then + msg = "lpc: Wrong value for argument #2 (p): Must be less than or equal to the length of the signal vector"; + error(53,msg); + end + + if ~isreal(p) then + msg = "lpc: Wrong type for argument #2 (p): Real scalar expected"; + error(53,msg); + end + end + + num_signals = size(x,2); + + // ** Processing ** + N = size(x,1); + + // zero pad x + x = [x; zeros(2^nextpow2(2*N-1)-N,size(x,2))]; + X = fft(x,-1,1); + R = fft(abs(X).^2,1,1); + R = R./N; // Biased autocorrelation estimate + + // change ieee mode to handle division by zero + ieee_prev = ieee(); + ieee(2); + [a,g] = ld_recursion(R,p); + ieee(int(ieee_prev)); + + + // filter coeffs should be real if input is real + for signal_idx=1:num_signals + if isreal(x(:,signal_idx)) then + a(signal_idx,:) = real(a(signal_idx,:)); + end + end + +endfunction + +function [a,e] = ld_recursion(R,p) + // Solve for LP coefficients using Levinson-Derbin recursion + // + // Paramaters + // R: double + // Autocorrelation matrix where column corresponds to autocorrelation + // to be treated independently + // a: double + // Matrix where rows denote filter cofficients of the corresponding + // autocorrelation values + // e: double + // Column vector denoting error variance for each filter computation + + + num_filters = size(R,2); + + + // Initial filter (order 0) + a = zeros(num_filters,p+1); + a(:,1) = 1; + e = R(1,:).'; + + + // Solving in a bottom-up fashion (low to high filter coeffs) + for m=1:p + k_m = -sum(a(:,m:-1:1).*R(2:m+1,:).',2)./e; + a(:,2:m+1) = a(:,2:m+1) + k_m(:,ones(1,m)).*conj(a(:,m:-1:1)); + + e = (1-abs(k_m).^2).*e; + end + +endfunction diff --git a/macros/lsf2poly.bin b/macros/lsf2poly.bin Binary files differnew file mode 100644 index 0000000..4c20636 --- /dev/null +++ b/macros/lsf2poly.bin diff --git a/macros/lsf2poly.sci b/macros/lsf2poly.sci new file mode 100644 index 0000000..b3da450 --- /dev/null +++ b/macros/lsf2poly.sci @@ -0,0 +1,85 @@ +function a=lsf2poly(lsf) +//lsf2poly function convert line spectral frequencies to prediction polynomial. +// Calling Sequence +// a = lsf2poly(lsf) + +// Parameters +// lsf: define line spectral frequencies. +// a: Return the prediction polynomial. + +// Examples +//X = [0.5 0.752 1.6 1.8 2.45 0.8] +// a = lsf2poly(X) +// +// See also +// +// Author +// Jitendra Singh +// + +if isempty(lsf) then + a=[]; + else + + if or(type(lsf)==10) then + error ('Input arguments must be double.') +end + + + if ~isreal(lsf) then + error ('Line spectral frequencies must be real.') + end + + if max(lsf)>%pi | min(lsf)<0 then + error ('Line spectral frequencies must be between 0 and pi.') + end + + + if size(lsf,1)==1 & size(lsf,2) then + + error('Input should be vector of length more than one or matrix.') + end + + + if isvector(lsf) then + lsf=lsf(:); + end + lsf1=lsf; + n=size(lsf1); + c=n(2); + for i=1:c + lsf2=lsf1(:,i); + lsf2=lsf2(:); + nn=length(lsf2); + ImgReal=exp(%i*lsf2); + + odd=ImgReal(1:2:$); + even=ImgReal(2:2:$); + + odd1=[odd; conj(odd)]; + even1=[even; conj(even)]; + + odd2= poly(odd1, 'x'); + odd2=real(odd2); + odd2=flipdim(coeff(odd2), 2,1); + even2= poly(even1,'x'); + even2=real(even2); + even2=flipdim(coeff(even2),2, 1); + + + if (nn-fix(nn./2).*2)~=0 then + even3=conv(even2, [1 0 -1]); + odd3=odd2; + + else + odd3=conv(odd2, [1 1]); + even3=conv(even2, [1 -1]); + end + aa=0.5*(odd3+even3); + aa($)=[]; + aaa(i,:)=aa; + end + a=aaa; + end + +endfunction diff --git a/macros/mag2db.bin b/macros/mag2db.bin Binary files differnew file mode 100644 index 0000000..58186d6 --- /dev/null +++ b/macros/mag2db.bin diff --git a/macros/mag2db.sci b/macros/mag2db.sci new file mode 100644 index 0000000..dc1af27 --- /dev/null +++ b/macros/mag2db.sci @@ -0,0 +1,17 @@ +//ydb = mag2db(y) expresses in decibels (dB) the magnitude measurements specified in y. +//The relationship between magnitude and decibels is ydb = 20 log10(y). +//Author +//Debdeep Dey + + +function [ydb] = mag2db(y) +funcprot(0); + + ydb(find(abs(y)>0))= 20 * log10(y(find(abs(y)>0))); + ydb(find(real(y)<0))=%nan; + ydb(find(y==0))=-%inf; + ydb=matrix(ydb,size(y)); + + +endfunction + diff --git a/macros/marcumq.bin b/macros/marcumq.bin Binary files differnew file mode 100644 index 0000000..187ddfa --- /dev/null +++ b/macros/marcumq.bin diff --git a/macros/marcumq.sci b/macros/marcumq.sci new file mode 100644 index 0000000..630ec97 --- /dev/null +++ b/macros/marcumq.sci @@ -0,0 +1,38 @@ +function q = marcumq (a, b, m, tol) +//This function computes the generalized Marcum Q function of order m with noncentrality parameter a and argument b. +//Calling Sequence +//q = marcumq (a, b) +//q = marcumq (a, b, m) +//q = marcumq (a, b, m, tol) +//Parameters +//a: +//b: +//m: default value 1 +//tol: default value eps +//Description +//This is an Octave function. +//This function computes the generalized Marcum Q function of order m with noncentrality parameter a and argument b. +//The third argument m is the order, which by default is 1. +//The fourth argument tol is the tolerance, which by default is eps. +//If input arguments are vectors which correspond in size and degree, the output is a table of values. +//This function calculates Marcum’s Q function using the infinite Bessel series, which is truncated when the relative error is less than the specified tolerance. +//Examples +//marcumq([1,2,3],4) +//ans = +// 0.0028895 0.0341348 0.1965122 + +funcprot(0); +rhs = argn(2) +if(rhs<2 | rhs>4) +error("Wrong number of input arguments.") +end + select(rhs) + case 2 then + q = callOctave("marcumq",a,b) + case 3 then + q = callOctave("marcumq",a,b,m) + case 4 then + q = callOctave("marcumq",a,b,m,tol) + end +endfunction + diff --git a/macros/medfilt1.bin b/macros/medfilt1.bin Binary files differnew file mode 100644 index 0000000..d5cc06f --- /dev/null +++ b/macros/medfilt1.bin diff --git a/macros/medfilt1.sci b/macros/medfilt1.sci new file mode 100644 index 0000000..b81a03a --- /dev/null +++ b/macros/medfilt1.sci @@ -0,0 +1,345 @@ +function y = medfilt1(x, varargin) + // 1D median filtering + // + // Calling sequence + // y = medfilt1(x) + // y = medfilt1(x, n) + // y = medfilt1(x, n, dim) + // y = medfitl1(__, nanflag, padding) + // + // Description + // y = medfilt1(x) + // Applies a 3rd order 1-dimensional median filter to input x along the + // first non-zero dimension. The function appropriately pads the signal + // with zeros at the endings. For a segment, a median is calculated as + // the middle value (average of two middle values) for odd number + // number (even number) of data points. + // y = medfilt1(x,n) + // Applies a nth order 1-dimensional median filter. + // y = medfilt1(x,n,dim) + // Applies the median filter along the n-th dimension + // y = medfilt1(__, nanflag, padding) + // nanflag specifies how NaN values are treated. padding specifies the + // type of filtering to be performed at the signal edges. + // + // Parameters + // x: int | double + // Input signal. + // n: positive integer scalar + // Filter order. + // Defaults to 3.The order of the median filter. Must be less than + // (length of the signal) where signals are 1D vectors along the + // dimension of x to be filtered + // dim: positive integer scalar + // Dimension to filter along. + // Defaults to first non-singleton dimension of x + // nanflag: 'includenan' (default) | 'omitnan' + // NaN condition. + // * includenan: Filtering such that the median of any segment + // containing a NaN is also a NaN. + // * omitnan: Filtering with NaNs omitted in each segment. If a segment + // contains all NaNs, the result is NaN + // y: int | double + // The filtered signal. + // y has the same size as x + // + // Examples + // 1) Noise supression using median filtering + // fs = 1e3; + // t = 1:1/fs:1; + // s = sin(2*%pi*2*t)+ cos(2*%pi*5*t); + // // Adding noise + // x = s + 0.1*randn(size(s)); + // y = medfilt1(x); + // + // See also + // filter | hampel | median | sgolayfilt + // + // Authors + // Ayush Baid + + + + // ************************************************************************* + // Checking number of arguments + // ************************************************************************* + [numOutArgs, numInArgs] = argn(0); + + if numInArgs<1 | numInArgs>5 then + msg = "medfilt1: Wrong number of input argument; 1-5 expected"; + error(77, msg); + end + if numOutArgs~=1 then + msg = "medfilt1: Wrong number of output argument; 1 expected"; + error(78, msg); + end + + + + // ************************************************************************* + // Parsing input arguments + // ************************************************************************* + + // * Parsing x * + temp = x(:); + if type(temp)~=1 & type(temp)~=8 then + msg = "medfilt1: Wrong type for argument #1 (x): Int/double expected" + error(53, msg); + end + + + // * Parsing nanflag and padding * + // Getting all the string arguments + stringIndices = list(); + for i=1:length(varargin); + e = varargin(i); + if type(e)==10 then + stringIndices($+1)=i; + end + end + + nanflag = %f; // 0->includenan (default); 1->omitnan + padflag = %t; // 1->zeropad (default); 0->truncate + if ~isempty(stringIndices) then + // checking for 'omitnan' + if or(strcmpi(varargin(stringIndices), 'omitnan')) then + nanflag = %t; + end + + // checking for 'truncate' + if or(strcmpi(varargin(stringIndices), 'truncate')) then + padflag = %f; + end + varargin(stringIndices) = []; + end + + + // setting default value for n and dim + n = 3; + dim = 1; + L = length(size(x)); + for i=1:L + if size(x, i)>1 then + dim = i; + end + end + + // * Parsing n and dim * + if length(varargin)==1 then + if ~isempty(varargin(1)) then + n = varargin(1); + end + elseif length(varargin)==2 then + if ~isempty(varargin(1)) then + n = varargin(1); + end + if ~isempty(varargin(2)) then + dim = varargin(2); + end + else + msg = "medfilt1: Wrong type of input arguments; Atmost 3 numerical input expected"; + error(53, msg); + end + + // check on n + if length(n)~=1 then + msg = "medfilt1: Wrong size for argument #2 (n): Scalar expected"; + error(60,msg); + end + + if type(n)~=1 & type(n)~=8 then + msg = "medfilt1: Wrong type for argument #2 (n): Natural number expected"; + error(53,msg); + end + + if n~=round(n) | n<=0 then + msg = "medfilt1: Wrong type for argument #2 (n): Natural number expected"; + error(53,msg); + end + + if ~isreal(n) then + msg = "medfilt1: Wrong type for argument #2 (n): Real scalar expected"; + error(53,msg); + end + + // check on dim + if length(dim)~=1 then + msg = "medfilt1: Wrong size for argument #3 (dim): Scalar expected"; + error(60,msg); + end + + if type(dim)~=1 & type(dim)~=8 then + msg = "medfilt1: Wrong type for argument #3 (dim): Natural number expected"; + error(53,msg); + end + + if dim~=round(dim) | dim<=0 then + msg = "medfilt1: Wrong type for argument #3 (dim): Natural number expected"; + error(53,msg); + end + + if ~isreal(dim) then + msg = "medfilt1: Wrong type for argument #3 (dim): Real scalar expected"; + error(53,msg); + end + + + // ************************************************************************* + // Processing for median filtering column by column + // ************************************************************************* + + inp_size = size(x); + + + // Permuting x to bring the dimension to be acted upon as the first dimesnion + perm_vec = [2:dim, 1, dim+1:length(inp_size)]; + reverse_perm_vec = [dim, 1:dim-1, dim+1:length(inp_size)]; + x = permute(x, perm_vec); + + size_vec = size(x); + + y = x; // just initialization + + for i=1:prod(size_vec(2:$)) + temp = medfilt_colvector(x(:,i), n, padflag, nanflag); + y(:,i) = temp; + end + + + + y = permute(y, reverse_perm_vec); + + +endfunction + +function med = medfilt_colvector(x, n, zeropadflag, nanflag) + // Performs median filtering (of order n) on a column vector (x) + // zeropadflag -> zero pad instead of truncation + // nanflag -> discard all blocks containing nan, else do not consider nan values + + med = zeros(size(x,1),1); + disp('here1'); + + + // ** zero pad the signal ** + pad_length = floor(n/2); // padding on a size + x = [zeros(pad_length,1); x; zeros(pad_length,1)]; + + nx = length(x); + + // Arrange data in blocks + top_row = 1:(nx-n); + + idx = zeros(n,length(top_row)); + + for i=1:n + idx(i,:) = top_row + (i-1); + end + + blocks = matrix(x(idx), size(idx)); + + + if nanflag then + disp('here2'); + med = median(blocks, 1)'; + + // set result of all the blocks containing nan to nan + nanpresent = or(isnan(blocks), 1); + med(nanpresent) = %nan; + else + disp('here3'); + // we have to neglect nans + sorted_blocks = gsort(blocks, 'r', 'i'); + + // get the count of non-nan elements + num_elems = n - sum(isnan(sorted_blocks), 1); + + // find the median + offset = (0:size(blocks,2)-1)*size(blocks,1); + idx1 = offset+ceil(num_elems/2); + idx2 = offset+ceil((num_elems/2)+0.25); + + + // temporarily setting idx1 to 1 so as to not give errors in median calc. + // Will later replace values at such indices with Nan + idx1(idx1==0)=1; + med = (sorted_blocks(idx1) + sorted_blocks(idx2))./2; + + med(idx1==0) = %nan; + end + + if ~zeropadflag then + // ** recalculate boundary blocks with truncation truncate at the boundaries ** + + // divide the input signal into 3 parts; 1st and last part have truncation + for i=ceil(n/2):n + // ** first part ** + block = x(1:i); + + // * median calc for a block * + if nanflag then + med(i-ceil(n/2)+1) = median(block, 1); + + // set result of all the blocks containing nan to nan + nanpresent = or(isnan(block), 1); + if nanpresent then + med(i-ceil(n/2)+1) = %nan; + end + else + // we have to neglect nans + sorted_block = gsort(block, 'r', 'i'); + + // get the count of non-nan elements + num_elems = length(block) - sum(isnan(sorted_block), 1); + + // find the median + idx1 = ceil(num_elems/2); + idx2 = ceil(num_elems/2+0.25); + + + // temporarily setting idx1 to 1 so as to not give errors in median calc. + // Will later replace values at such indices with Nan + if idx1==0 then + med(i-ceil(n/2)+1) = %nan; + else + med(i-ceil(n/2)+1) = (sorted_block(idx1, :)+sorted_block(idx2, :))./2; + end + end + + + // ** last part ** + block = x($:-1:$-i); + + // * median calc for a block * + if nanflag then + med($+ceil(n/2)-i) = median(block, 1); + + // set result of all the blocks containing nan to nan + nanpresent = or(isnan(block), 1); + if nanpresent then + med($-ceil(n/2)+i) = %nan; + end + med($+ceil(n/2)-i) = %nan; + else + // we have to neglect nans + sorted_block = gsort(block, 'r', 'i'); + + // get the count of non-nan elements + num_elems = length(block) - sum(isnan(sorted_block), 1); + + // find the median + idx1 = ceil(num_elems/2); + idx2 = ceil(num_elems/2+0.25); + + // temporarily setting idx1 to 1 so as to not give errors in median calc. + // Will later replace values at such indices with Nan + if idx1==0 then + med($+ceil(n/2)-i) = %nan; + else + med($+ceil(n/2)-i) = (sorted_block(idx1) + sorted_block(idx2))./2; + end + end + end + end + +endfunction diff --git a/macros/medfilt1.sci~ b/macros/medfilt1.sci~ new file mode 100644 index 0000000..0a41f12 --- /dev/null +++ b/macros/medfilt1.sci~ @@ -0,0 +1,346 @@ +function y = medfilt1(x, varargin) + // 1D median filtering + // + // Calling sequence + // y = medfilt1(x) + // y = medfilt1(x, n) + // y = medfilt1(x, n, dim) + // y = medfitl1(__, nanflag, padding) + // + // Description + // y = medfilt1(x) + // Applies a 3rd order 1-dimensional median filter to input x along the + // first non-zero dimension. The function appropriately pads the signal + // with zeros at the endings. For a segment, a median is calculated as + // the middle value (average of two middle values) for odd number + // number (even number) of data points. + // y = medfilt1(x,n) + // Applies a nth order 1-dimensional median filter. + // y = medfilt1(x,n,dim) + // Applies the median filter along the n-th dimension + // y = medfilt1(__, nanflag, padding) + // nanflag specifies how NaN values are treated. padding specifies the + // type of filtering to be performed at the signal edges. + // + // Parameters + // x: int | double + // Input signal. + // n: positive integer scalar + // Filter order. + // Defaults to 3.The order of the median filter. Must be less than + // (length of the signal) where signals are 1D vectors along the + // dimension of x to be filtered + // dim: positive integer scalar + // Dimension to filter along. + // Defaults to first non-singleton dimension of x + // nanflag: 'includenan' (default) | 'omitnan' + // NaN condition. + // * includenan: Filtering such that the median of any segment + // containing a NaN is also a NaN. + // * omitnan: Filtering with NaNs omitted in each segment. If a segment + // contains all NaNs, the result is NaN + // y: int | double + // The filtered signal. + // y has the same size as x + // + // Examples + // 1) Noise supression using median filtering + // fs = 1e3; + // t = 1:1/fs:1; + // s = sin(2*%pi*2*t)+ cos(2*%pi*5*t); + // // Adding noise + // x = s + 0.1*randn(size(s)); + // y = medfilt1(x); + // + // See also + // filter | hampel | median | sgolayfilt + // + // Authors + // Ayush Baid + + + + // ************************************************************************* + // Checking number of arguments + // ************************************************************************* + [numOutArgs, numInArgs] = argn(0); + + if numInArgs<1 | numInArgs>5 then + msg = "medfilt1: Wrong number of input argument; 1-5 expected"; + error(77, msg); + end + if numOutArgs~=1 then + msg = "medfilt1: Wrong number of output argument; 1 expected"; + error(78, msg); + end + + + + // ************************************************************************* + // Parsing input arguments + // ************************************************************************* + + // * Parsing x * + temp = x(:); + if type(temp)~=1 & type(temp)~=8 then + msg = "medfilt1: Wrong type for argument #1 (x): Int/double expected" + error(53, msg); + end + + + // * Parsing nanflag and padding * + // Getting all the string arguments + stringIndices = list(); + for i=1:length(varargin); + e = varargin(i); + if type(e)==10 then + stringIndices($+1)=i; + end + end + + nanflag = %f; // 0->includenan (default); 1->omitnan + padflag = %t; // 1->zeropad (default); 0->truncate + if ~isempty(stringIndices) then + // checking for 'omitnan' + if or(strcmpi(varargin(stringIndices), 'omitnan')) then + nanflag = %t; + end + + // checking for 'truncate' + if or(strcmpi(varargin(stringIndices), 'truncate')) then + padflag = %f; + end + varargin(stringIndices) = []; + end + + + // setting default value for n and dim + n = 3; + dim = 1; + L = length(size(x)); + for i=1:L + if size(x, i)>1 then + dim = i; + end + end + + // * Parsing n and dim * + if length(varargin)==1 then + if ~isempty(varargin(1)) then + n = varargin(1); + end + elseif length(varargin)==2 then + if ~isempty(varargin(1)) then + n = varargin(1); + end + if ~isempty(varargin(2)) then + dim = varargin(2); + end + else + msg = "medfilt1: Wrong type of input arguments; Atmost 3 numerical input expected"; + error(53, msg); + end + + // check on n + if length(n)~=1 then + msg = "medfilt1: Wrong size for argument #2 (n): Scalar expected"; + error(60,msg); + end + + if type(n)~=1 & type(n)~=8 then + msg = "medfilt1: Wrong type for argument #2 (n): Natural number expected"; + error(53,msg); + end + + if n~=round(n) | n<=0 then + msg = "medfilt1: Wrong type for argument #2 (n): Natural number expected"; + error(53,msg); + end + + if ~isreal(n) then + msg = "medfilt1: Wrong type for argument #2 (n): Real scalar expected"; + error(53,msg); + end + + // check on dim + if length(dim)~=1 then + msg = "medfilt1: Wrong size for argument #3 (dim): Scalar expected"; + error(60,msg); + end + + if type(dim)~=1 & type(dim)~=8 then + msg = "medfilt1: Wrong type for argument #3 (dim): Natural number expected"; + error(53,msg); + end + + if dim~=round(dim) | dim<=0 then + msg = "medfilt1: Wrong type for argument #3 (dim): Natural number expected"; + error(53,msg); + end + + if ~isreal(dim) then + msg = "medfilt1: Wrong type for argument #3 (dim): Real scalar expected"; + error(53,msg); + end + + + // ************************************************************************* + // Processing for median filtering column by column + // ************************************************************************* + + inp_size = size(x); + + + // Permuting x to bring the dimension to be acted upon as the first dimesnion + perm_vec = [2:dim, 1, dim+1:length(inp_size)]; + reverse_perm_vec = [dim, 1:dim-1, dim+1:length(inp_size)]; + x = permute(x, perm_vec); + + size_vec = size(x); + + y = x; // just initialization + + for i=1:prod(size_vec(2:$)) + temp = medfilt_colvector(x(:,i), n, padflag, nanflag); + y(:,i) = temp; + end + + + + y = permute(y, reverse_perm_vec); + + +endfunction + +function med = medfilt_colvector(x, n, zeropadflag, nanflag) + // Performs median filtering (of order n) on a column vector (x) + // zeropadflag -> zero pad instead of truncation + // nanflag -> discard all blocks containing nan, else do not consider nan values + + med = zeros(size(x,1),1); + disp('here1'); + + + // ** zero pad the signal ** + pad_length = floor(n/2); // padding on a size + x = [zeros(pad_length,1); x; zeros(pad_length,1)]; + + nx = length(x); + + // Arrange data in blocks + top_row = 1:(nx-n); + + idx = zeros(n,length(top_row)); + + for i=1:n + idx(i,:) = top_row + (i-1); + end + + blocks = matrix(x(idx), size(idx)); + + + if nanflag then + disp('here2'); + med = median(blocks, 1)'; + + // set result of all the blocks containing nan to nan + nanpresent = or(isnan(blocks), 1); + med(nanpresent) = %nan; + else + disp('here3'); + // we have to neglect nans + sorted_blocks = gsort(blocks, 'r', 'i'); + + // get the count of non-nan elements + num_elems = n - sum(isnan(sorted_blocks), 1); + + // find the median + offset = (0:size(blocks,2)-1)*size(blocks,1); + idx1 = offset+ceil(num_elems/2); + idx2 = offset+ceil((num_elems/2)+0.25); + + + // temporarily setting idx1 to 1 so as to not give errors in median calc. + // Will later replace values at such indices with Nan + idx1(idx1==0)=1; + med = (sorted_blocks(idx1) + sorted_blocks(idx2))./2; + + med(idx1==0) = %nan; + end + + if ~zeropadflag then + // ** recalculate boundary blocks with truncation truncate at the boundaries ** + + // divide the input signal into 3 parts; 1st and last part have truncation + for i=ceil(n/2):n + // ** first part ** + block = x(1:i); + + // * median calc for a block * + if nanflag then + med(i-ceil(n/2)+1) = median(block, 1); + + // set result of all the blocks containing nan to nan + nanpresent = or(isnan(block), 1); + if nanpresent then + med(i-ceil(n/2)+1) = %nan; + end + else + // we have to neglect nans + sorted_block = gsort(block, 'r', 'i'); + + // get the count of non-nan elements + num_elems = length(block) - sum(isnan(sorted_block), 1); + + // find the median + idx1 = ceil(num_elems/2); + idx2 = ceil(num_elems/2+0.25); + + + // temporarily setting idx1 to 1 so as to not give errors in median calc. + // Will later replace values at such indices with Nan + if idx1==0 then + med(i-ceil(n/2)+1) = %nan; + else + med(i-ceil(n/2)+1) = (sorted_block(idx1, :)+sorted_block(idx2, :))./2; + end + end + + + // ** last part ** + block = x($:-1:$-i); + + // * median calc for a block * + if nanflag then + med($+ceil(n/2)-i) = median(block, 1); + + // set result of all the blocks containing nan to nan + nanpresent = or(isnan(block), 1); + if nanpresent then + med($-ceil(n/2)+i) = %nan; + end + med($+ceil(n/2)-i) = %nan; + end + else + // we have to neglect nans + sorted_block = gsort(block, 'r', 'i'); + + // get the count of non-nan elements + num_elems = length(block) - sum(isnan(sorted_block), 1); + + // find the median + idx1 = ceil(num_elems/2); + idx2 = ceil(num_elems/2+0.25); + + // temporarily setting idx1 to 1 so as to not give errors in median calc. + // Will later replace values at such indices with Nan + if idx1==0 then + med($+ceil(n/2)-i) = %nan; + else + med($+ceil(n/2)-i) = (sorted_block(idx1) + sorted_block(idx2))./2; + end + end + end + end + +endfunction diff --git a/macros/mexihat.bin b/macros/mexihat.bin Binary files differnew file mode 100644 index 0000000..9e4879d --- /dev/null +++ b/macros/mexihat.bin diff --git a/macros/mexihat.sci b/macros/mexihat.sci new file mode 100644 index 0000000..3f2ed48 --- /dev/null +++ b/macros/mexihat.sci @@ -0,0 +1,27 @@ +function [psi,x]=mexihat(lb,ub,n) + +// Generates Mexican Hat wavelet +// Calling Sequence +// [psi,x]=mexihat(lb,ub,n) +// Parameters +// lb: Real or complex valued vector or matrix +// ub: Real or complex valued vector or matrix +// n: Real strictly positive scalar number +// Description +// This is an Octave function +// This function returns values of the Mexican hat wavelet in the specified interval at all the sample points. +// Examples +// 1. [a,b]= mexihat(1,2,3) +// a = [0.00000 -0.35197 -0.35214] +// b = [1.0000 1.5000 2.0000] +// 2. [a,b]= mexihat([1 2 3],1,1) +// a = [0;0;0] +// b = [1;1;1] + +funcprot(0); +rhs=argn(2); +if (rhs<3) then + error ("Wrong number of input arguments.") +else [psi,x]=callOctave("mexihat",lb,ub,n) +end +endfunction diff --git a/macros/meyeraux.bin b/macros/meyeraux.bin Binary files differnew file mode 100644 index 0000000..5d3239f --- /dev/null +++ b/macros/meyeraux.bin diff --git a/macros/meyeraux.sci b/macros/meyeraux.sci new file mode 100644 index 0000000..657e829 --- /dev/null +++ b/macros/meyeraux.sci @@ -0,0 +1,23 @@ +function [y]=meyeraux(x) + +// Returns value of Meyer Wavelet Auxiliary function +// Calling Sequence +// [y]=meyeraux(x) +// Parameters +// x: Real or complex valued vector or matrix +// Description +// This is an Octave function. +// This function returns values of the auxiliary function used for Meyer wavelet generation. +// Examples +// 1. meyeraux([1 2 3]) +// ans= [1 -208 -10287] +// 2. meyeraux([1 2 3;4 5 6]) +// ans= [1 -208 -10287 ; -118016 -709375 -2940624 ] + +funcprot(0); +rhs=argn(2); +if (rhs~=1) then + error ("Wrong number of input arguments.") +else y=callOctave("meyeraux",x) +end +endfunction diff --git a/macros/midcross.bin b/macros/midcross.bin Binary files differnew file mode 100644 index 0000000..a5e182d --- /dev/null +++ b/macros/midcross.bin diff --git a/macros/midcross.sci b/macros/midcross.sci new file mode 100755 index 0000000..445e5f4 --- /dev/null +++ b/macros/midcross.sci @@ -0,0 +1,428 @@ +function [midcrossvalue, midreference, levels, t, tolerance, Tinput]= midcross(x, varargin)
+
+
+ // This function estimate midcross values of real vector X.
+ // Calling Sequence
+ // midcrossvalue=midcross(x)
+ // midcrossvalue=midcross(x, Fs)
+ // midcrossvalue=midcross(x, t)
+ // midcrossvalue=midcross(x, t, 'MidPercentReferenceLevels', N )
+ // midcrossvalue=midcross(x, t, 'Tolerance', M)
+ // midcrossvalue=midcross(x, t,'StateLevels', O)
+ // [midcrossvalue midreference]=midcross(x)
+ // [midcrossvalue midreference]=midcross(x, Fs)
+ // [midcrossvalue midreference]=midcross(x, t)
+ // [midcrossvalue midreference]= midcross(x, t, 'MidPercentReferenceLevel', N )
+ // [midcrossvalue midreference]= midcross(x, t, 'Tolerance', M)
+ // [midcrossvalue midreference]= midcross(x, t,'StateLevels', O)
+ // [midcrossvalue midreference]= midcross(x, t,'StateLevels', O, 'fig', on or off)
+ //
+ // Parameters
+ // x: real vector.
+ // Fs: specifies the sample rate, Fs, as a positive scalar, where the first sample instant corresponds to a time of zero.
+ // t: defiene instant sample time t as vector with same length of x, or specifies the sample rate, t, as a positive scalar
+ // MidPercentReferenceLevels: specify the midpercentreferenceleves as a percentage, default value of N is 50.
+ // Tolerance: define the tolerance value as real scaler value, where default value of M is 2.0.
+ // StateLevels: define the lower and upper state levels as two element real vector.
+ // fig: specify the logical input value to display figure as one of 'on' or 'off', where the default input in 'off'.
+ // midcrossvalues: return the midcross values
+ // midreference: return the midrefence values.
+ // levels: return statelevels values.
+ // t: return the instant sample time.
+ // tolerance: retunr the tolerance value
+ // Tinput: return t value, which given as input parameter.
+
+ // Examples
+ // x=[1.2, 5, 10, -20, 12]
+ //t=1:length(x)
+ // midcrossvalue=midcross(x, t)
+ // See also
+ // Authors
+ // Jitendra Singh
+ if or(type(x)==10) then
+ error ('Input arguments must be double.')
+end
+
+ if length(x) < 2 then // checking the length of input datasat
+ error('X must be a vector with more than one element.'); // if length of X is less 2, it will give error
+end
+
+ if length(varargin) >9 then // checking the length of input datasat
+ error('Unexpected input/To many input'); // if length of X is less 2, it will give error
+end
+
+if length(varargin)==0 then
+ t=1:length(x);
+ Tinput=1:length(x);
+ [levels hist]=statelevels(x); // run statelevels function before running this function
+ midpercentval=50;
+ tolerance=2;
+ fig='off'
+
+end
+
+if length(varargin)>=1 & type(varargin(1))==1 then
+ if length(varargin(1))==1 then
+ t=(0:(length(x)-1))/varargin(1);
+ Tinput=varargin(1);
+ elseif length(varargin(1))==length(x) then
+ t=varargin(1);
+ Tinput=varargin(1);
+ else
+ error('T must be a same length as X.')
+ end
+else
+ t=1:length(x);
+end
+
+
+
+
+if length(varargin)>=2 & type(varargin(1))==1 & type(varargin(2))==1 then
+ error ("Too many leading numeric arguments (at most 2 expected).");
+end
+
+
+index=[];
+if length(varargin)>=1 then
+a=1;
+
+for i=1:length(varargin)
+ if type(varargin(i))==10 then
+ index(a)=i;
+ a=a+1;
+ end
+end
+end
+
+
+if length(index)>5 then
+ error('Unexpected argument.')
+end
+
+
+Nindex=[];
+if length(varargin)>=1 then
+b=1;
+
+for i=1:length(varargin)
+ if type(varargin(i))==1 then
+ Nindex(b)=i;
+ b=b+1;
+ end
+end
+end
+
+
+ d=[];
+if length(Nindex)>=2 then
+ c=1;
+
+ for k=1:(length(Nindex)-1)
+ d(c)=Nindex(k+1)-Nindex(k);
+ c=c+1;
+ end
+end
+
+
+if length(d)>=1 then
+
+f_one=find(d==1);
+
+if length(f_one)>0 then
+ error('Unexpected input.')
+end
+end
+
+
+
+[levels hist]=statelevels(x);
+ midpercentval=50;
+ tolerance=2;
+ fig='OFF';
+
+
+if (~isempty(index)) then
+ for j=1:length(index)
+
+ select convstr(varargin(index(j)),'u')
+
+ case {'STATELEVELS'}
+ //////
+ if length(varargin) <=index(j) then
+ error(strcat(['parameter StateLevels required a value']));
+ end
+
+ if type(varargin(index(j)+1))==1 then
+ levels=varargin(index(j)+1);
+
+ elseif type(varargin(index(j)+1))==10 & convstr(varargin(index(j)+1), 'u')=='MIDPERCENTREFERENCELEVEL' | convstr(varargin(index(j)+1),'u')== 'TOLERANCE' | convstr(varargin(index(j)+1), 'u')=='FIG' then
+
+ error('parameter StateLevels required a value.')
+
+
+ elseif type(varargin(index(j)+1))==10 then
+
+ error('Expected STATELEVELS to be one of these types: double, Instead its type was char.')
+ end
+
+ if length(levels)~=2 then
+ error ('Expected STATELEVELS to be of size 1x2')
+ end
+
+ if levels(2)<=levels(1) then
+ error('The state levels must be in increasing order.')
+ end
+ ///////
+
+ case {'MIDPERCENTREFERENCELEVEL'}
+
+
+ if length(varargin) <=index(j) then
+ error(strcat(['parameter MidPercentRefernceLevel required a value.']));
+ end
+
+ if type(varargin(index(j)+1))==1 then
+ midpercentval= varargin(index(j)+1);
+ elseif type(varargin(index(j)+1))==10 & convstr(varargin(index(j)+1), 'u')=='STATELEVELS' | convstr(varargin(index(j)+1),'u')== 'TOLERANCE' | convstr(varargin(index(j)+1), 'u')=='FIG' then
+ error('parameter MidPercentRefernceLevel required a value.')
+
+ elseif type(varargin(index(j)+1))==10 then
+ error('Expected MidPercentRefernceLevel to be one of these types: double, Instead its type was char.')
+ end
+
+ if length( midpercentval)~=1 then
+ error ('Expected MidPercentRefernceLevel to be of size 1x1')
+ end
+
+
+ case {'FIG'}
+
+ if length(varargin) <=index(j) then
+ error(strcat(['parameter fig required a value.']));
+ end
+
+ if type(varargin(index(j)+1))==1 then
+ error ('Expected fig to match one of these strings: on or off');
+
+ elseif type(varargin(index(j)+1))==10 & convstr(varargin(index(j)+1), 'u')=='STATELEVELS' | convstr(varargin(index(j)+1), 'u')== 'TOLERANCE' | convstr(varargin(index(j)+1), 'u')=='MIDPERCENTREFERENCELEVEL' then
+ error('parameter fig required a value.')
+ else
+ fig= convstr(varargin(index(j)+1), 'u');
+
+ end
+
+
+ if fig == 'OFF' | fig == 'ON' then
+ else
+ error('Expected fig to match one of these strings: on or off');
+ end
+
+
+
+ case{'ON'}
+
+ if length(varargin) == 1 then
+ error ('Unexpected input.')
+
+
+ elseif type(varargin(index(j)-1))==1 then
+ error ('Unexpected input.');
+ elseif convstr(varargin(index(j)-1), 'u')~='FIG' then
+ error('Unexpected input');
+ end
+
+ case{'OFF'}
+
+ if length(varargin) == 1 then
+ error ('Unexpected input.')
+
+
+ elseif type(varargin(index(j)-1))==1 then
+ error ('Unexpected input.');
+ elseif convstr(varargin(index(j)-1), 'u')~='FIG' then
+ error('Unexpected input');
+ end
+
+
+ //////
+ case {'TOLERANCE'}
+
+ if length(varargin) <=index(j) then
+ error(strcat(['parameter Tolerance required a value"]));
+
+ elseif type(varargin(index(j)+1))==1 then
+ tolerance= varargin(index(j)+1);
+
+ elseif type(varargin(index(j)+1))==10 & convstr(varargin(index(j)+1), 'u')== 'STATELEVELS' | convstr(varargin(index(j)+1), 'u')== 'MIDPERCENTREFERENCELEVEL' | convstr(varargin(index(j)+1), 'u')=='FIG' then
+
+ error('parameter Tolerance required a value.');
+
+ elseif type(varargin(index(j)+1))==10 then
+
+ error('Expected Tolerance to be one of these types: double, Instead its type was char.');
+ end
+
+ if length(tolerance)~=1 then
+ error ('Expected Tolerance to be of size 1x1');
+
+ end
+
+ else
+ error(strcat(['Invalid optional argument'," ", varargin(index(j))]));
+ end // switch
+ end // for
+ end // if
+
+
+
+
+tolerance=tolerance;
+
+if tolerance>=50 then
+ error('Expected Toleracne to be an array with all of the values < 50.')
+end
+
+if tolerance>= midpercentval then
+ error ('The percent state level tolerance must be less than the mid/lower percent reference level.')
+end
+
+
+if tolerance+midpercentval>=100 then
+ error('The sum of the percent state level Tolerance and the mid/upper percent reference level must be less than 100.')
+end
+
+
+
+
+ midref=levels(1)+ (midpercentval/100)*(levels(2)-levels(1));
+ upperbound= levels(2)- (tolerance/100)*(levels(2)-levels(1));
+ mostupperbound=levels(2)+ (tolerance/100)*(levels(2)-levels(1));
+ lowerbound= levels(1)+ (tolerance/100)*(levels(2)-levels(1));
+ mostlowerbound=levels(1)- (tolerance/100)*(levels(2)-levels(1));
+
+
+ istate = find(x<lowerbound | x>upperbound);
+ n=length(istate);
+ istatepre = istate(1:(n-1));
+ istatepost = istate(2:n);
+
+
+ itrans = find(x(istatepre) < lowerbound & upperbound < x(istatepost) | ...
+ x(istatepre) > upperbound & lowerbound > x(istatepost) );
+
+ ipre = istatepre(itrans);
+ ipost = istatepost(itrans);
+
+ polarity = 2 * (x(ipre) < lowerbound) - 1;
+
+
+ numtrans = length(itrans);
+ iRMid = zeros(numtrans, 1);
+
+
+ for i = 1:numtrans // define convenience indices for compactness
+ ia = ipre(i);
+ ib = ipost(i);
+
+ if polarity(i) > 0
+ // checking for first positive crossing of midrefence
+ iX = find((x(ia:ib-1) <= midref & midref < x(ia+1:ib)));
+
+
+
+ iRMid(i) = iX(1) + ia - 1;
+ else
+ // checking for negative crossing for midrefenrce
+
+ iX = find(x(ia:ib-1)>= midref & midref > x(ia+1:ib));
+ iRMid(i) = iX(1) + ia - 1;
+ end
+ end
+x=x(:);
+x=x';
+t=t(:);
+t=t';
+
+ if numtrans > 0
+ // interpolation to get instant values
+ midcrossvalue=t(iRMid)+(t(iRMid+1)-t(iRMid)).*(midref-x(iRMid))./( x(iRMid+1)-x(iRMid));
+
+ else
+ midcrossvalue = [];
+ end
+
+
+
+ midreference=midref;
+
+
+ if fig=='ON' then // if the defined output is only 1, the it will return the graphical representation of //levels
+
+
+
+ //////
+
+ if length(midcrossvalue)==0 then
+ plot(t,x, 'LineWidth',1, 'color', 'black' )
+
+plot(t,midref * ones(1, length(t)),'-r', 'LineWidth',0.5)
+ plot(t,mostupperbound * ones(1, length(t)),'--r', 'LineWidth',0.5)
+
+ plot(t,levels(2) * ones(1, length(t)),'--k', 'LineWidth',0.5)
+
+ plot(t,upperbound * ones(1, length(t)),'--r', 'LineWidth',0.5)
+
+
+
+ plot(t,lowerbound *ones(1, length(t)),'--g', 'LineWidth',0.5)
+
+ plot(t,levels(1) * ones(1, length(t)),'--k', 'LineWidth',0.5)
+
+ plot(t,mostlowerbound * ones(1, length(t)),'--g', 'LineWidth',0.5)
+
+ xlabel("Time (second)", "fontsize",3, "color", "black" )
+ ylabel("Level (Volts)", "fontsize",3, "color", "black" )
+
+
+ legends(["Signal"; "upper boundary"; "upper state"; "lower boundary"; "mid reference"; "upper boundary"; "lower state"; "lower boundary"], [[1;1], [5;2], [1;2], [5;2], [5;1], [3;2],[1;2], [3;2]], opt='?')
+
+ else
+
+
+
+ plot(t,x, 'LineWidth',1, 'color', 'black')
+
+ plot(t,midref * ones(1, length(t)),'-r', 'LineWidth',0.5)
+
+ plot(midcrossvalue, midreference*ones(midcrossvalue), "r*", 'MarkerSize',15);
+
+
+
+
+ plot(t,mostupperbound * ones(1, length(t)),'--r', 'LineWidth',0.5)
+
+ plot(t,levels(2) * ones(1, length(t)),'--k', 'LineWidth',0.5)
+
+ plot(t,upperbound * ones(1, length(t)),'--r', 'LineWidth',0.5)
+
+
+
+ plot(t,lowerbound *ones(1, length(t)),'--g', 'LineWidth',0.5)
+
+ plot(t,levels(1) * ones(1, length(t)),'--k', 'LineWidth',0.5)
+
+ plot(t,mostlowerbound * ones(1, length(t)),'--g', 'LineWidth',0.5)
+
+ xlabel("Time (second)", "fontsize",3, "color", "black" )
+ ylabel("Level (Volts)", "fontsize",3, "color", "black" )
+
+
+ legends(["Signal"; "mid cross"; "upper boundary"; "upper state"; "lower boundary"; "mid reference"; "upper boundary"; "lower state"; "lower boundary"], [[1;1], [-10;5], [5;2], [1;2], [5;2], [5;1], [3;2],[1;2], [3;2]], opt='?')
+ //////////////
+
+
+end
+
+ end
+endfunction
diff --git a/macros/modulate.bin b/macros/modulate.bin Binary files differnew file mode 100644 index 0000000..169b209 --- /dev/null +++ b/macros/modulate.bin diff --git a/macros/modulate.sci b/macros/modulate.sci new file mode 100644 index 0000000..bbce31a --- /dev/null +++ b/macros/modulate.sci @@ -0,0 +1,184 @@ +function [y,t]=modulate(x,fc,fs,method,opt) +//Modulates signal according to the modulation method +//Calling Sequence +//y=modulate(x,fc,fs,method,opt) +//[y,t]=modulate(x,fc,fs,method,opt) +//Parameters +//x +//A vector or a matrix +//fc +//Carrier frequency +//fs +//Sampling frequency +//method +//Modulation Method +//opt +//An optional parameter required by certain modulation methods +//Description +//[y,t]=modulate(x,fc,fs,method,opt) +//Returns the modulated vector y and the time vector 't' +//Modulation is performed according to the following table +// METHOD MODULATION SCHEME +// 'am', Amplitude modulation, double side-band, suppressed carrier +// 'amdsb-sc' opt not used. This is the default method. +// 'amdsb-tc' Amplitude modulation, double side-band, transmitted carrier +// opt is a scalar subtracted from x before multiplying x +// with the carrier wave. It defaults to min(min(x)) so that +// the input signal after offset is always non-negative +// 'amssb' Amplitude modulation, single side-band +// OPT not used. +// 'fm' Frequency modulation +// opt is the constant of frequency modulation. +// opt = (fc/fs)*2*pi/max(max(abs(x))) by default +// 'pm' Phase modulation +// OPT is the constant of phase modulation. +// opt = pi/max(max(abs(x))) by default +// Phase lies between -pi and +pi +// 'pwm' Pulse width modulation +// opt='left' corresponds to left justified pulses. +// opt='centered' correspondes to centered pulses. +// The default value of opt is 'left'. +// 'ppm' Pulse position modulation +// opt is a scalar between 0 and 1 which specifies the pulse +// width in fractions of the carrier period with default value 0.1. +// 'qam' Quadrature amplitude modulation +// opt is a matrix of the same size as X which is modulated in +// quadrature with x. +// +// If x is a matrix, its columns are modulated. +//Example +//y = +// +// 1. 1. 0. 0. +//Author +//Ankur Mallick + funcprot(0); + if (argn(2)<3|argn(2)>5) then + error('Incorrect number of input arguments.'); + elseif (isreal(fc)&isreal(fs)&fc>fs/2) + error('The career frequency must be less than half the sampling frequency.') + else + flag1=0; + flag2=0; + if (argn(2)<4) + method='am'; + end + [M,N]=size(x); + if(M==1) + flag1=1; + x=x(:); + [M,N]=size(x); + end + t=((0:M-1)/fs)'; + t=t*ones(1,N); + if(method=='am'|method=='amdsb-sc') + y=x.*cos(2*%pi*fc*t); + elseif(method=='amdsb-tc') + if(argn(2)<5) + opt=min(min(x)); + end + y=(x-opt).*cos(2*%pi*fc*t); + elseif(method=='amssb') + y=x.*cos(2*%pi*fc*t)+imag(hilbert(x)).*sin(2*%pi*fc*t); + elseif(method=='fm') + if(argn(2)<5) + opt=max(abs(x(:))); //if all elements of x are zero + if(opt>0) + opt=(fc/fs)*2*%pi/opt; + end + end + y=cos(2*%pi*fc*t + opt*cumsum(x,1)); + elseif(method=='pm') + if(argn(2)<5) + opt=%pi/(max(abs(x(:)))); + end + y=cos(2*%pi*fc*t + opt*x); + elseif(method=='qam') + if(argn(2)<5) + error('For qam, a 5th input parameter is required.') + else + if(size(opt,1)==1) + opt=opt(:); + end + S=sum(abs(size(opt)-size(x))); //S=0 only if opt and x have the same size + if(S==0) + y = x.*cos(2*%pi*fc*t) + opt.*sin(2*%pi*fc*t) + else + error('For qam input signals must be the same size') + end + end + elseif(method=='pwm') + if(argn(2)<5) + opt='left' + end + if(max(x(:))>1|min(x(:))<0) + error('x must lie between 0 and 1'); + else + t=(0:(M*fs/fc-1))'; + t=t*ones(1,N); + T=fs/fc; + y=zeros(t); + if(opt~='left'&opt~='centered') + error('5th input parameter not recognized'); + else + if(opt=='left') + compar=(pmodulo(t,T))/T; + pos=floor(t/T)+1; + elseif(opt=='centered') + compar1=2*pmodulo(t,T)/T; + compar=min(compar1,2-compar1); + x(M+1,:)=zeros(1,N); + pos=floor(t/T)+1; + r1=ceil(T/2); + r2=floor(T/2); + pos=[pos(r1+1:length(pos));(M+1)*ones(r2,1)]; + end + for i=1:N + //x1=matrix(ones(T,1)*x(:,i)',size(t,1),1); + x1=x(pos,i) + y(compar<x1,i)=1; + end + end + end + elseif(method=='ppm'|method=='ptm') + if(argn(2)<5) + opt=0.1 + end + t=(0:(M*fs/fc-1))'; + t=t*ones(1,N); + T=fs/fc; + y=zeros(t); + if(max(x(:))>1|min(x(:))<0) + error('x must lie between 0 and 1'); + elseif(~isscalar(opt)|opt<0|opt>1) + error('opt must be a scalar between 0 and 1') + else + if (max(x) > 1-opt) + warning('Overlapping pulses') + end + for i=1:N + x1=x(:,i)' + start=1+ceil((x1+(0:M-1))*T); //y(1) corresponds to t=0 + L=floor(opt*T); + v=(0:1:L-1)'; + p1=matrix(ones(L,1)*start,1,M*L) + p2=matrix(v*ones(1,M),1,M*L); + pos=p1+p2; + y(pos,i)=1; + end + y(length(t)+1:length(y),:)=[]; //Truncating vector + end + else + error('Method not recognised'); + flag2=1; + end + if(flag2==0) + t=t(:,1); //only first column required + if(flag1==1) + //x is a row vector + y=conj(y'); + t=t'; + end + end + end +endfunction diff --git a/macros/morlet.bin b/macros/morlet.bin Binary files differnew file mode 100644 index 0000000..f00e186 --- /dev/null +++ b/macros/morlet.bin diff --git a/macros/morlet.sci b/macros/morlet.sci new file mode 100644 index 0000000..0a160f0 --- /dev/null +++ b/macros/morlet.sci @@ -0,0 +1,27 @@ +function [psi,x] = morlet (lb,ub,n) + +// Generates Morlet wavelets +// Calling Sequence +// [psi,x]= morlet(lb,ub,n) +// Parameters +// lb: Real or complex valued vector or matrix +// ub: Real or complex valued vector or matrix +// n: Real strictly positive scalar number +// Description +// This is an Octave function +// This function returns values of the Morlet wavelet in the specified interval for all the sample points. +// Examples +// 1. [a,b]=morlet(1,2,3) +// a = [0.17205 0.11254 -0.11356] +// b = [1.0000 1.5000 2.0000] +// 2. [a,b]=morlet([1 2 3],[1 2 3],1) +// a = [0.1720498; -0.1135560; -0.0084394] +// b = [1; 2; 3] + +funcprot(0); +rhs=argn(2); +if (rhs<3) then + error ("Wrong number of input arguments.") +else [psi,x] = callOctave("morlet",lb,ub,n) +end +endfunction diff --git a/macros/movingrms.bin b/macros/movingrms.bin Binary files differnew file mode 100644 index 0000000..720357d --- /dev/null +++ b/macros/movingrms.bin diff --git a/macros/movingrms.sci b/macros/movingrms.sci new file mode 100644 index 0000000..231a9f1 --- /dev/null +++ b/macros/movingrms.sci @@ -0,0 +1,33 @@ +function [rmsx,w]=movingrms(x,w,rc,Fs) + +// Find moving RMS value of signal in x +// Calling Sequence +// [rmsx,w]=movingrms(x,w,rc,Fs=1) +// Parameters +// x: Real or complex valued vector or matrix +// w: Real or complex scalar value +// rc: Real or complex scalar value +// Fs: Real or complex scalar value +// Description +// This is an Octave function. +// The signal is convoluted against a sigmoid window of width w and risetime rc with the units of these parameters relative to the value of the sampling frequency given in Fs (Default value=1). +// Examples +// 1. [a,b]=movingrms ([4.4 94 1;-2 5i 5],1,-2) +// a = 0.91237 17.71929 0.96254 +// 0.91237 17.71929 0.96254 +// b = 0.18877 +// 0.18877 +// 2. [a,b]=movingrms ([4.4 94 1;-2 5i 5],1,-2,2) +// a = 4.8332 93.8669 5.0990 +// 4.8332 93.8669 5.0990 +// b = 1 +// 1 + +funcprot(0); +rhs=argn(2); +if (rhs<3) then + error("Wrong number of input arguments.") +elseif (rhs==3) then Fs=1; +end +[rmsx,w]=callOctave("movingrms",x,w,rc,Fs) +endfunction diff --git a/macros/musicBase.bin b/macros/musicBase.bin Binary files differnew file mode 100644 index 0000000..884ae30 --- /dev/null +++ b/macros/musicBase.bin diff --git a/macros/musicBase.sci b/macros/musicBase.sci new file mode 100644 index 0000000..f915bbe --- /dev/null +++ b/macros/musicBase.sci @@ -0,0 +1,198 @@ +// Date of creation: 19 Dec, 2015 +function [outputData,msg] = musicBase(inputData) + // Implements the core of the MUSIC algorithm + // Used by pmusic and rootmusic algorithm + + // TODO: complete docs + + msg = ""; + outputData = struct(); + + [eigenvects,eigenvals, msg] = computeEig(inputData.x, ... + inputData.isCorrFlag, inputData.windowLength, ... + inputData.noverlap, inputData.windowVector, ... + inputData.isWindowSpecified); + + + // disp("eigenvects in musicBase"); + // disp(eigenvects); + // disp("eigenvals in musicBase"); + // disp(eigenvals); + + if length(msg)~=0 then + return + end + + pEffective = determineSignalSpace(inputData.p, eigenvals); + + if length(msg)~=0 then + return + end + + // Separating the eigenvects into signal and noise subspace + signalEigenvects = eigenvects(:,1:pEffective); + noiseEigenvects = eigenvects(:,pEffective+1:$); + + outputData.signalEigenvects = signalEigenvects; + outputData.noiseEigenvects = noiseEigenvects; + outputData.eigenvals = eigenvals; + outputData.pEffective = pEffective; +endfunction + + +function [eigenvects,eigenvals,msg] = computeEig(x,isCorrFlag, windowLength, noverlap, window,isWindowSpecified) + // Computes the eigenvalues for the correlation matrix + // If x is a correlation matrix, which is specified using the isCorrFlag, + // spec() is used for eigenvalue decomposition. + // Otherwise, SVD is used for a proper restructure of x + // (i.e windowed version) + + eigenvects = 0; + eigenvals = 0; + msg = ""; + + // determine if input is a matrix + xIsMatrix = ~or(size(x)==1); + + if xIsMatrix & isCorrFlag then + // TODO: check the order of eigenvalues + [eigenvects,d] = spec((R+R')/2); // ensuring hermitian property + eigenvals = diag(d); + // sorting in decreasing order + [eigenvals,order] = gsort(eigenvals); + // TODO: nonnegative eigenvals check + + // rearragning in decreasing order of eigenvalues + eigenvects = eigenvects(:,order); + else + if xIsMatrix then + // TODO: check for dimenion constraints + else + // x is vector + Lx = length(x); + + if Lx<=windowLength then + msg = "Incorrrect value for window length; must be smaller than the signal length"; + return + end + + if ~isWindowSpecified then + // disp("window not specified"); + // TODO: understand + [x,msg] = createBufferMatrix(x,Lx-windowLength+1,Lx-windowLength); + if length(msg)~=0 then + return + end + // reversing the column order and scaling + x = x(:,$:-1:1)./sqrt(Lx-windowLength+1); + else + // disp("window specified"); + [x,msg] = createBufferMatrix(x, windowLength, noverlap); + if length(msg)~=0 then + return + end + // scaling so as to get the correct value of R + x = x'./sqrt(Lx-windowLength); + end + + end + + + // **applying window to each row of the data matrix** + // replicating window along the rows + if ~isempty(window) then + window = repmat(window(:)',size(x,1),1); + x = x.*window; + end + + // computing eignevals and eigenvectors of R using SVD of x + + // disp("X = (before SVD)"); + // disp(x); + [temp,S,eigenvects] = svd(x,0); + // squaering the eigenvalues + eigenvals = diag(S).^2; + + // disp("eigenvals in computeEig"); + // disp(eigenvals); + end +endfunction + + +function [xMat,msg] = createBufferMatrix(x,windowLength,noverlap) + // creates a matrix where each row represents a section which has to be + // windowed + // + // Input Arguments + // x - input signal as a column vector + // windowLength + // noverlap + // + // will perform task similar to that performed by MATLAB's + // buffer(x,windowLength,noverlap) with nodelay option + + msg=""; + xMat = []; + + // check input to be a vector + xIsVector = or(size(x)==1) & ndims(x)==2; + + if ~xIsVector then + msg = "createBufferMatrix: x should be a vector"; + return + end + + if size(x,2)~=1 then + // convert to column vector + x = x'; + end + + L = length(x); + temp = windowLength - noverlap; + numOfSections = ceil((L-noverlap)/temp); + + // performing zero padding of x + zeroPadLength = numOfSections*temp + noverlap - L; + zeroPad = zeros(zeroPadLength,1); + x = [x;zeroPad]; + xMat = zeros(windowLength, numOfSections); + // disp(size(xMat)); + // disp(size(x)); + + for i=1:numOfSections + xMat(1:temp,i) = x(1+(i-1)*temp:i*temp,1); + xMat(temp+1:windowLength,i) = x(1+i*temp:i*temp+noverlap,1); + end + +endfunction + +function pEffective = determineSignalSpace(p, eigenvals) + // Determines the effective dimension of the signal subspace + + // Inputs: + // p: p(1) - signal subspace dimension + // p(2) (optional) - desired threshold + // eigenvals: vector conatining eigenvalues of the correlation + // matrix in descreasing order + // Output: + // pEffective - the effective dimension of the signal subspace. If + // a threshold is given as p(2), the signal subspace will + // be equal to the number of eigenvalues greater than the + // threshold times the smallest eigenvalue. Also, + // pEffective<=p(1). So, minimum of the two values is + // considered. If the threshold criteria results in an + // empty signal subspace, we take pEffective = p(1). + // + if length(p)==2 then + threshold = p(2)*eigenvals($); + signalIndices = find(eigenvals>threshold); + if ~isempty(signalIndices) then + pEffective = min(p(1), length(signalIndices)); + else + // dont change p + pEffective = p(1); + end + else + pEffective = p; + end +endfunction diff --git a/macros/names b/macros/names new file mode 100644 index 0000000..76fc13d --- /dev/null +++ b/macros/names @@ -0,0 +1,193 @@ +ac2poly +ac2rc +arParEst +arburg +arcov +armcov +aryule +barthannwin +bartlett +besself +bitrevorder +blackman +blackmanharris +blackmannuttall +bohmanwin +boxcar +buffer +butter +buttord +cconv +cell2sos +cheb1ord +cheb2ord +chebwin +cheby1 +cheby2 +check +chirp +clustersegment +cmorwavf +convmtx +corrmtx +cummax +cummin +db +db2pow +dctmtx +decimate +dftmtx +diric +downsample +dutycycle +ellip +ellipord +enbw +eqtflength +falltime +fftfilt +filternorm +filtfilt +filtic +filtord +firpmord +firtype +flattopwin +fracshift +fwhm +fwhmjlt +gauspuls +gaussdesign +gaussian +gausswin +gmonopuls +goertzel +grpdelay +hann +helperHarmonicDistortionAmplifier +icceps +iirlp2mb +impinvar +impz +impzlength +interp +intfilt +invimpinvar +is2rc +isallpass +isfir +islinphase +ismaxphase +isminphase +isstable +kaiser +lar2rc +latc2tf +latcfilt +latcfilt1 +levdown +levin +levinson +lpc +lsf2poly +mag2db +marcumq +medfilt1 +mexihat +meyeraux +midcross +modulate +morlet +movingrms +musicBase +nnls +nuttallwin +parzenwin +pchip +pchips +peak2peak +peak2rms +peig +periodogram +phaseInputParseAs_ab +phaseInputParseAs_sos +phasedelay +phasez +pmusic +poly2ac +poly2lsf +poly2rc +polyscale +polystab +polyval +pow2db +primitive +prony +pulseperiod +pulsesep +pulsewidth +pulstran +rc2ac +rc2is +rc2lar +rc2poly +rcosdesign +rectpuls +rectwin +resample +residued +residuez +risetime +rlevinson +rms +rooteig +rootmusic +rssq +sampled2continuous +sawtooth +schtrig +schurrc +seqperiod +sgolay +sgolayfilt +shanwavf +shiftdata +slewrate +sos2cell +sos2ss +sos2tf +sos2zp +sosbreak +sosfilt +specgram +ss2sos +statelevels +stmcb +strips +subspaceMethodsInputParser +tf2sos +tf2zp +tf2zpk +transpose +trial_iirlp2mb +triang +tripuls +truth +tukeywin +udecode +uencode +ultrwin +unshiftdata +upfirdn +upsample +upsamplefill +var +vco +welchwin +window +wkeep +wrev +xcorr2 +zerocrossing +zp2sos +zplane diff --git a/macros/names~ b/macros/names~ new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/macros/names~ diff --git a/macros/nnls.bin b/macros/nnls.bin Binary files differnew file mode 100644 index 0000000..616c06a --- /dev/null +++ b/macros/nnls.bin diff --git a/macros/nnls.sci b/macros/nnls.sci new file mode 100644 index 0000000..3e77d65 --- /dev/null +++ b/macros/nnls.sci @@ -0,0 +1,74 @@ +function x = nnls(E,f,x) + // Non Negative Least Squares (nnls) for Ex=f with the constraint x>=0 + + // Reference + // Lawson, C.L. and R.J. Hanson, Solving Least Squares Problems, + // Prentice-Hall, 1974, Chapter 23, p. 161. + + m2 = size(E,1); + n = size(E,2); + + iterMax = 3*n; + + + x = zeros(n,1); + z = zeros(n,1); + w = zeros(n,1); + wActive = w; + // P indicates if a variable is inactive + P = x~=0; // setting all to False + + // z indiactes if a variable is active + Z = x==0; // setting all to True + + Ep = zeros(size(E)); + + // Step 2 + w = E'*(f-E*x); + + iter = 0; + while or(Z) & or(w(Z)>0) + // Step 4 + wActive(P) = -%inf; + wActive(Z) = w(Z); + [maxval,maxindex] = max(wActive); + + // Step 5 + P(maxindex) = %T; + Z(maxindex) = %F; + + // Step 6 + z(P)=E(:,P)\f; + z(Z)=0; + + while or(z(P)<=0) + iter = iter+1; + if iter>iterM`ax then + x = z; + return; + end + // Step 8 + Q = (z <= 0) & P; + + // Step 9 + alpha = min(x(P)./(x(P)-z(P))); + + // Step 10 + x = x+alpha*(z-x); + + indices = find(x>=0); + P(indices) = %T; + W(indices) = %F; + + // Step 6 + z(P)=E(:,P)\f; + z(Z)=0; + end + x = z; + + // Step 2 + w = E'*(f-E*x); + wActive = w(Z); + end + +endfunction diff --git a/macros/nuttallwin.bin b/macros/nuttallwin.bin Binary files differnew file mode 100644 index 0000000..92c09d6 --- /dev/null +++ b/macros/nuttallwin.bin diff --git a/macros/nuttallwin.sci b/macros/nuttallwin.sci new file mode 100644 index 0000000..c066ef5 --- /dev/null +++ b/macros/nuttallwin.sci @@ -0,0 +1,34 @@ +function w = nuttallwin (m, opt) +//This function returns the filter coefficients of a Blackman-Harris window. +//Calling Sequence +//w = nuttallwin (m) +//w = nuttallwin (m, opt) +//Parameters +//m: positive integer value +//opt: string value, takes in "periodic" or "symmetric" +//w: output variable, vector of real numbers +//Description +//This is an Octave function. +//This function returns the filter coefficients of a Blackman-Harris window defined by Nuttall of length m supplied as input, to the output vector w. +//The second parameter can take the values "periodic" or "symmetric", depending on which the corresponding form of window is returned. The default is symmetric. +//Examples +//nuttallwin(2, "periodic") +//ans = +// - 2.429D-17 +// 1. + + + +rhs = argn(2) +if(rhs<1 | rhs>2) +error("Wrong number of input arguments.") +end + + select(rhs) + case 1 then + w = callOctave("nuttallwin",m) + case 2 then + w = callOctave("nuttallwin",m,opt) + end +endfunction + diff --git a/macros/parzenwin.bin b/macros/parzenwin.bin Binary files differnew file mode 100644 index 0000000..ce71bf1 --- /dev/null +++ b/macros/parzenwin.bin diff --git a/macros/parzenwin.sci b/macros/parzenwin.sci new file mode 100644 index 0000000..f51c924 --- /dev/null +++ b/macros/parzenwin.sci @@ -0,0 +1,26 @@ +function [y] = parzenwin (m) +//This function returns the filter coefficients of a Parzen window. +//Calling Sequence +//y = parzenwin (m) +//Parameters +//m: positive integer value +//y: output variable, vector of real numbers +//Description +//This is an Octave function. +//This function returns the filter coefficients of a Parzen window of length m supplied as input, to the output vector y. +//Examples +//parzenwin(3) +//ans = +// 0.0740741 +// 1. +// 0.0740741 + +rhs = argn(2) + +if(rhs~=1) +error("Wrong number of input arguments.") +end + +y = callOctave("parzenwin",m) + +endfunction diff --git a/macros/pchip.bin b/macros/pchip.bin Binary files differnew file mode 100644 index 0000000..b698e26 --- /dev/null +++ b/macros/pchip.bin diff --git a/macros/pchip.sci b/macros/pchip.sci new file mode 100644 index 0000000..4674929 --- /dev/null +++ b/macros/pchip.sci @@ -0,0 +1,138 @@ +function v = pchip(x,y,xx) + +//this function returns piecewise cubic hermite interpolating polynomial. + +// Calling Sequence +// d=pchip(x,y) +// d= pchip(X,,y,xx) + + +// Parameters +// x: a vector +// y: is Y is vector then it must have the same length as x and Y is matrix then the last dimension of Y must equal length(X). +// xx: Points for interpolation +// v: vector of interpolantant at xx + +// Examples +// x=[0 1 2 3 4 5] +// y=[1 0 1 0 1 0] +// xx=linspace(0:10,800) +// v=pchip(x, y) +// v=pchip(x,y,xx) +// See also + // Authors +// Jitendra Singh + +// execute function "pchips" prior executing this function + + +if argn(2)==3 & ~isreal(xx) + error('Points for interpolation must be real.') +end + + +nn=size(y,1); + +h = diff(x); m = prod(nn); + + + +delta = diff(y,1,2)./repmat(h,m,1); + +slopes = zeros(size(y,1),size(y,2)); + +for r = 1:m + if isreal(delta) + slopes(r,:) = pchips(x,y(r,:),delta(r,:)); + else + realslopes = pchips(x,y(r,:),real(delta(r,:))); + imagslopes = pchips(x,y(r,:),imag(delta(r,:))); + slopes(r,:) = complex(realslopes, imagslopes); + end +end + + +s=slopes; +divdif=delta + +d = size(y,1); + +dx = diff(x(:).'); +dxd = repmat(dx,d,1); +divdif = diff(y,1,2)./dxd; +n = length(x); +dzzdx = (divdif-s(:,1:n-1))./dxd; dzdxdx = (s(:,2:n)-divdif)./dxd; +dnm1 = d*(n-1); + +c1=matrix((dzdxdx-dzzdx)./dxd,dnm1,1) +c2=matrix(2*dzzdx-dzdxdx,dnm1,1) +c3=matrix(s(:,1:n-1),dnm1,1) +c4=matrix(y(:,1:n-1),dnm1,1) +v=[c1,c2,c3,c4] + + +if argn(2)==3 + //v = ppval(v,xx); + + b=x; + c=v; + l=length(b)-1; + dlk=length(c); + d = size(y,1) + dl=prod(d)*l; + eps=2.2204e-16; + k=fix(dlk/dl+100*eps); + dd=d; + lx = length(xx); + xs = matrix(xx,1,length(xx)); + + if lx, [cf,idx] = histc([-%inf,b(2:l),%inf], xs); + else idx=ones(1, length(xx)); + end + + infxs = find(xs==%inf); + if ~isempty(infxs) + index(infxs) = l; +end + nogoodxs = find(idx==0); + + if ~isempty (nogoodxs) + xs(nogoodxs) = %nan; + idx(nogoodxs) = 1; +end + + + xs = xs-b(idx); + + d = prod(dd); + + sizexx = size(xx) + + if d>1 + xs = reshape(xs(ones(d,1),:),1,d*lx); + idx = d*idx; temp = (-d:-1).'; + idx = reshape(1+idx(ones(d,1),:)+temp(:,ones(1,lx)), d*lx, 1 ); + else + if length(sizexx)>1, dd = []; else dd = 1; end +end + + +v = c(idx,1); + + +for i=2:k + v = xs(:).*v + c(idx,i); +end + + +if ~isempty(nogoodxs) & k==1 & l>1 + v = matrix(v,d,lx); v(:,nogoodxs) = NaN; +end +v = matrix(v,[dd,sizexx]); + +end + + endfunction + + + diff --git a/macros/pchips.bin b/macros/pchips.bin Binary files differnew file mode 100644 index 0000000..37e0ef5 --- /dev/null +++ b/macros/pchips.bin diff --git a/macros/pchips.sci b/macros/pchips.sci new file mode 100644 index 0000000..78c7473 --- /dev/null +++ b/macros/pchips.sci @@ -0,0 +1,49 @@ +function d = pchips(x,y,delta) + + + n = length(x); + + if n==2 + d = repmat(delta(1),size(y)); + + else + + + d = zeros(size(y)); + + k = find(sign(delta(1:n-2)).*sign(delta(2:n-1)) > 0); + + + h = diff(x); + hs = h(k)+h(k+1); + w1 = (h(k)+hs)./(3*hs); + w2 = (hs+h(k+1))./(3*hs); + + if ~isempty (k) then + + + del_mx = max(abs(delta(k)), abs(delta(k+1))); + del_mn = min(abs(delta(k)), abs(delta(k+1))); + d(k+1) = del_mn./conj(w1.*(delta(k)./del_mx) + w2.*(delta(k+1)./del_mx)); + else + + d(1) = ((2*h(1)+h(2))*delta(1) - h(1)*delta(2))/(h(1)+h(2)); + if sign(d(1)) ~= sign(delta(1)) + d(1) = 0; + elseif (sign(delta(1)) ~= sign(delta(2))) & (abs(d(1)) > abs(3*delta(1))) + d(1) = 3*delta(1); + end + d(n) = ((2*h(n-1)+h(n-2))*delta(n-1) - h(n-1)*delta(n-2))/(h(n-1)+h(n-2)); + if sign(d(n)) ~= sign(delta(n-1)) + d(n) = 0; + elseif (sign(delta(n-1)) ~= sign(delta(n-2))) & (abs(d(n)) > abs(3*delta(n-1))) + d(n) = 3*delta(n-1); + end + end + + + + + end + + endfunction diff --git a/macros/peak2peak.bin b/macros/peak2peak.bin Binary files differnew file mode 100644 index 0000000..263e5aa --- /dev/null +++ b/macros/peak2peak.bin diff --git a/macros/peak2peak.sci b/macros/peak2peak.sci new file mode 100644 index 0000000..9e664de --- /dev/null +++ b/macros/peak2peak.sci @@ -0,0 +1,95 @@ +function [Y] = peak2peak(X, dim) +funcprot(0); +narginchk(1,2,argn(2)); +// peak2peak finds the maximum-to-minimum difference +// Calling Sequence +// Y=peak2peak(X) +// Y=peak2peak(X,dim) +// Parameters +// X: Real or complex valued input vector or matrix. +// dim: Dimension to compute maximum-to-minimum difference (Row/Column) +// Description +// Y= peak2peak(X) returns the difference between maximum and minimum values in X, operating along the first non-singleton +// dimension of X by default. +// Y= peak2peak(X,dim) returns the maximum-to-minimum difference in X, along dimension dim. +// Examples +// 1. t = 0:0.001:1-0.001; +// x = cos(2*pi*100*t); +// y = peak2peak(x) +// 2. t = 0:0.001:1-0.001; +// x = (1:4)'*cos(2*pi*100*t); +// y = peak2peak(x,2) +// Authors +// Rahul Dalmia +//function only accepts real values due to limitations of the 'max' function in Scilab +//Modifications made by Debdeep Dey + + +[nr, nc] = size (X); // Dimensions of Input calculated +if(type(X)==10) then //if i/p is a char type vector or matrix or a string + w=X; + [nr,nc]=size(X); + if(nr==1 & nc==1) then + X=ascii(X); + X=matrix(X,length(w)); + X=X'; + else + + X=ascii(X); + X=matrix(X,size(w)); + end + +end + +if (~exists('dim','local')) then + if (nr==1) then + Y = zeros(nr, 1); // preset all output fields to 0 + for i= 1:nr + maxim=max(X(i,:)); // maximum and minimum values are found + minim=min(X(i,:)); + Y(i,1)=maxim-minim; // Peak to peak value is calculated from the difference of max and min + end + else + Y = zeros(1, nc); // preset all output fields to 0 + for i= 1:nc + maxim=max(X(:,i)); // maximum and minimum values are found + minim=min(X(:,i)); + Y(1,i)=maxim-minim; // Peak to peak value is calculated from the difference of max and min + end + end + +elseif (exists('dim','local')) then + if (dim<1) then + error("Dimension argument must be a positive integer scalar within indexing range."); + end + if (dim==1) then + Y = zeros(1, nc); // preset all output fields to 0 + for i= 1:nc + maxim=max(X(:,i)); // maximum and minimum values are found + minim=min(X(:,i)); + Y(1,i)=maxim-minim; // Peak to peak value is calculated from the difference of max and min + end + + elseif (dim==2) then + Y = zeros(nr, 1); // preset all output fields to 0 + for i= 1:nr + maxim=max(X(i,:)); // maximum and minimum values are found + minim=min(X(i,:)); + Y(i,1)=maxim-minim; // Peak to peak value is calculated from the difference of max and min + end + else// for cases when dim >2 + Y=zeros(nr,nc); + + end +end + +endfunction +function narginchk(l,h,ni) +if(ni<l) then //ensure that the no. of input args is either 1 or 2 + error("Not enough input arguments"); +end + +if (ni>h) then + error("Too many input arguments"); +end +endfunction diff --git a/macros/peak2rms.bin b/macros/peak2rms.bin Binary files differnew file mode 100644 index 0000000..75d11fa --- /dev/null +++ b/macros/peak2rms.bin diff --git a/macros/peak2rms.sci b/macros/peak2rms.sci new file mode 100644 index 0000000..3a8df40 --- /dev/null +++ b/macros/peak2rms.sci @@ -0,0 +1,106 @@ +function out = peak2rms(in,orientation)
+//This function calculates the ratio of peak magnitude to the Root Mean Square(RMS) value.
+//
+//Calling Sequence
+//OUT=peak2rms(IN)
+//OUT=peak2rms(IN,orientation)
+//
+//Parameters
+//in:Vector or Matrix of real or complex elements.
+//orientation: A string with possible values "r", "c" or "m" giving the dimension along which the peak2rms value is to be calculated.
+//out:A scalar with real value when input is a vector.When input is a matrix, out is the peak magnitude to RMS value along the orientation specified or the default one when not specified.
+//
+//Description
+//For vector as input, the output is the ratio of peak value to the RMS value. The RMS value can be calculated by taking the square root of mean value of the squared sum of the elements.
+//
+//When a matrix is given as input the output is peak to RMS ratio in the orientation specified.
+//The orientation can be given as string with values "r","c" or "m".
+//
+//peak2rms(in, 1) calculates the values of ratio of peak to RMS of columns of matrix. The output in this case is a row vector with peak2rms value of each column of in.
+//
+//peak2rms(in, 2) calculates the values of ratio of peak to RMS of rows of matrix, where the output would be a column vector having peak2rms value of each row of in.
+//
+//The default orientation is chosen to be the index of first dimension of input greater than 1.Hence peak2rms(in) is equivalent to peak2rms(in, "m").
+//
+//For an N dimensional array the orientation is the index of first non singleton dimension of the array.
+//
+//If the elements of matrix are complex the absolute values are considered in the calculation of RMS value.
+//
+//Examples
+//To calculate peak2rms of a vector:
+//IN=[6 19 10 25]
+//OUT=peak2rms(IN)
+//The output is OUT=
+ // 1.4638501
+ //1.3887301
+ //1.119186
+//
+//Examples
+//To calculate peak2rms of rows of matrix:
+//IN=[1 3 5;2 4 6;7 8 9]
+//OUT=peak2rms(IN,2)
+//The output is
+ //OUT= 1.3719887
+//
+//Examples
+//To calculate peak magnitude to RMS value of sinusoid:
+//
+//t=0:0.6:9
+//IN=cos(6*%pi*t);
+//OUT= peak2rms(IN)
+//The output is
+ //OUT= 1.3719887
+//See also
+//abs
+//mean
+// max
+//sqrt
+//isempty
+//
+//Authors
+//Indira Askaukar
+//
+//Bibliography
+//Matlab help document.
+//Modified to accept char i/p
+//MOdified function to match MATLAB input arguments
+//Now for calculating the values of ratio of peak to RMS of columns of matrix use peak2rms(in,1)
+//And for calculates the values of ratio of peak to RMS of rows of matrix. use peak2rms(in,2)
+//Updated help comments accordingly
+//MOdifications done by by Debdeep Dey
+ if(type(in)=10) then //if i/p is of type char convert it to its ascii value
+ in=ascii(in);
+ end
+
+ if argn(2)==1
+ //calculating the Root Mean Square value
+ a=abs(in)
+ a=a.^2
+ s=mean(a,"m")
+ rmsvalue=sqrt(s)
+ peak = max(abs(in),"m")
+ rmsq = rmsvalue
+
+else
+ //Calculation of the RMS value
+ if orientation==1 then
+ orient='r';
+ else
+ orient='c';
+ end
+
+ a=abs(in)
+ a=a.^2
+ s=mean(a,orient)
+ rmsvalue=sqrt(s)
+ [peak,k] = max(abs(in),orient)
+ rmsq = rmsvalue
+
+end
+ //Calculation of Ratio of peak to the Root Mean square value
+if isempty(peak)
+ out = rmsq;
+else
+ out = peak ./ rmsq;
+end
+endfunction
diff --git a/macros/peig.bin b/macros/peig.bin Binary files differnew file mode 100644 index 0000000..88c349f --- /dev/null +++ b/macros/peig.bin diff --git a/macros/peig.sci b/macros/peig.sci new file mode 100644 index 0000000..7529edc --- /dev/null +++ b/macros/peig.sci @@ -0,0 +1,220 @@ +function [S,f,v,e] = peig(varargin) + // Psuedospectrum using the eigenvector method. + // + // Calling Sequence + // [S,w] = peig(x,p) + // [S,w] = peig(x,p,w) + // [S,w] = peig(x,p,nfft) + // [S,w] = peig(x,p,nfft,fs) + // [S,w] = peig(x,p,f,fs) + // [S,f] = peig(...,'corr') + // [S,f] = peig(x,p,nfft,fs,nwin,noverlap) + // [...] = peig(...,freqrange) + // [...,v,e] = peig(...) + // + // Parameters: + // x - int|double - vector|matrix + // Input signal. In case of a matrix, each row of x represents a + // seperate observation of the signal. If 'corr' flag is specified, + // then x is the correlation matrix. + // If w is not specified in the input, it is determined by the + // algorithm. If x is real valued, then range of w is [0, pi]. + // Otherwise, the range of w is [0, 2pi) + // p - int|double - scalar|vector + // p(1) is the dimension of the signal subspace + // p(2), if specified, represents a threshold that is multiplied by + // the smallest estimated eigenvalue of the signal's correlation matrix. + // w - int|double - vector + // w is the vector of normalized frequencies over which the + // pseuspectrogram is to be computed. + // nfft - int - scalar (Default = 256) + // Length of the fft used to compute pseudospectrum. The length of S + // (and hence w/f) depends on the type of values in x and nfft. + // If x is real, length of s is (nfft/2 + 1) {Range of w = [0, pi]} if + // nfft is even and (nfft+1)/2 {Range of w = [0, pi)} otherwise. + // If x is complex, length of s is nfft. + // fs - int|double - scalar (Default = 1) + // Sampling rate. Used to convert the normalized frequencies (w) to + // actual values (f) and vice-versa. + // nwin - int|double - scalar (int only)|vector (Default = 2*p(1)) + // If nwin is scalar, it is the length of the rectangular window. + // Otherwise, the vector input is considered as the window coefficients. + // Not used if 'corr' flag present. + // If x is a vector, windowing not done in nwin in scalar. If x is a + // matrix, + // noverlap - int - scalar (Default = nwin-1) + // number of points by which successive windows overlap. noverlap not + // used if x is a matrix + // freqrange - string + // The range of frequencies over which the pseudospetrogram is + // computed. Three possible values - 'onesided', 'twosided', 'centered' + // 'corr' flag + // Presence indicates that the primary input x is actually a + // correlation matrix + // + // Examples: + // TODO: + // + // See also + // rooteig | pmusic | pmtm | pcov | pmcov | pburg | pyulear | pwelch | corrmtx + // + // Authors + // Ayush Baid + // + // References + // [1] Petre Stoica and Randolph Moses, Introduction To Spectral + // Analysis, Prentice-Hall, 1997, pg. 15 + // [2] S. J. Orfanidis, Optimum Signal Processing. An Introduction. + // 2nd Ed., Macmillan, 1988. + + funcprot(0); + + exec('subspaceMethodsInputParser.sci',-1); + exec('musicBase.sci',-1); + + [data, msg, err_num] = subspaceMethodsInputParser(varargin); + + if length(msg)==0 then + // no error occured + else + error(err_num, "peig: " + msg); + end + + [musicData,msg] = musicBase(data); + + if length(msg)~=0 then + error("peig: " + msg); + end + + + // computing the pseudospectrum + [S,f] = pseudospectrum(musicData.noiseEigenvects, ... + musicData.eigenvals,data.w,data.nfft, data.fs, data.freqrange,data.isFsSpecified); + + v = musicData.noiseEigenvects; + e = musicData.eigenvals; + +endfunction + +function [pspec,w] = pseudospectrum(noiseEigenvects, eigenvals, freqvector, ... + nfft, fs, freqrange,isFsSpecified) + // disp("noise eigenvects in pseudospectrum - "); + // disp(noiseEigenvects); + + // NOTE: the only difference from the pmusic code + // Using the noise subspace eigenvalues as weights + weights = eigenvals(($-size(noiseEigenvects,2)+1):$); + + denominator = 0; + + isFreqGiven = %F; + + + for i=1:size(noiseEigenvects,2); + // disp("looping in pseudospectrum"); + if isempty(freqvector) then + [h,w] = computeFreqResponseByFFT(noiseEigenvects(:,i),nfft,fs,... + isFsSpecified); + else + [h,w] = computeFreqResponseByPolyEval(noiseEigenvects(:,i),... + freqvector,fs,isFsSpecified); + isFreqGiven = %T; + end + denominator = denominator + (abs(h).^2)./weights(i); + end + + // computing pseudospectrum pspec + pspec = 1.0 ./ denominator; + // converting to column vector + + + pspec = pspec(:); + + if ~isFreqGiven then + // correcting the range of pspec according to the user specification + if strcmpi(freqrange, 'onesided')==0 then + if modulo(nfft,2) then + // nfft is odd + range = 1:(1+nfft)/2; + else + range = 1:((nfft/2)+1); + end + pspec = pspec(range); + w = w(range); + + elseif strcmpi(freqrange,'centered')==0 then + // convert two sided spectrum to centered + rem = modulo(nfft,2); + + if rem then + idx = [((nfft+1)/2+1):nfft 1:(nfft+1)/2]; + else + idx = [(nfft/2+2):nfft 1:(nfft/2+1)]; + end + pspec = pspec(idx); + w = w(idx); + + if rem then + w(1:(nfft-1)/2) = - w(nfft:-1:((nfft+1)/2+1)); + else + w(1:(nfft/2-1)) = - w(nfft:-1:(nfft/2+2)); + end + end + end + +endfunction + +function [h,w] = computeFreqResponseByFFT(b,n,fs,isFsSpecified) + // returns the frequency response (h) and the corresponding frequency + // values (w) for a digital filter with numerator b. The evaluation of the + // frequency response is done at n points in [0,fs) using fft algorithm + // + // Similar to MATLAB's freqz(b,a,n,'whole',fs) + if isempty(fs) then + fs=1; + end + w = linspace(0,2*%pi,n+1)'; + w($) = []; + w(1) = 0; // forcing the first frequency to be 0 + + // forcing b and a to be column vectors + b = b(:); + + // zero padding for fft + zeroPadLength = n - length(b); + zeroPad = zeros(zeroPadLength,1); + b = [b; zeroPad]; + + + h = fft(b); + + if isFsSpecified then + w = w*fs/(2*%pi); + end + +endfunction + +function [h,w] = computeFreqResponseByPolyEval(b,f,fs,isFsSpecified) + // returns the frequency response (h) for a digital filter with numerator b. + // The evaluation of the frequency response is done at frequency values f + + // disp(f); + // disp(isFsSpecified); + + f = f(:); + b = b(:); + + n = length(b); + powerMatrix = zeros(length(f),n); + powerMatrix(:,1) = 1; + for i=2:n + powerMatrix(:,i) = exp(f*(-i+1)*%i); + end + + h = powerMatrix*b; + + if isFsSpecified then + w = f * fs/(2*%pi); + end + +endfunction diff --git a/macros/periodogram.bin b/macros/periodogram.bin Binary files differnew file mode 100644 index 0000000..39bdd96 --- /dev/null +++ b/macros/periodogram.bin diff --git a/macros/periodogram.sci b/macros/periodogram.sci new file mode 100755 index 0000000..33e15af --- /dev/null +++ b/macros/periodogram.sci @@ -0,0 +1,20 @@ +function [d,n]=periodogram(a,b,c,d,e) + funcprot(0); + [nargout,nargin]=argn(); + select nargin + case 1 then + [d,n]=callOctave('periodogram',a); + case 2 then + [d,n]=callOctave('periodogram',a,b); + case 3 then + [d,n]=callOctave('periodogram',a,b,c); + case 4 then + [d,n]=callOctave('periodogram',a,b,c,d); + case 5 then + [d,n]=callOctave('periodogram',a,b,c,d,e); + else + error("Incorrect no. of Input Arguments"); + end + +endfunction + diff --git a/macros/phaseInputParseAs_ab.bin b/macros/phaseInputParseAs_ab.bin Binary files differnew file mode 100644 index 0000000..6e216df --- /dev/null +++ b/macros/phaseInputParseAs_ab.bin diff --git a/macros/phaseInputParseAs_ab.sci b/macros/phaseInputParseAs_ab.sci new file mode 100644 index 0000000..b5235fa --- /dev/null +++ b/macros/phaseInputParseAs_ab.sci @@ -0,0 +1,107 @@ +function [a,b,w,cas1,fs]=phaseInputParseAs_ab(arg,nargin) + fs=0; + if nargin<2 then + error('no. of inputs not valid'); + end + v=size(arg(2)); + if size(v)>2 then + error ('invalid input dimension'); + end + a=arg(1); + b=arg(2); + [n,k]=size(arg(2)) + if nargin==2 then //(a,b) is the input + w=[0:(1/512):(511/512)]*%pi; + cas1=1; + elseif nargin==3 then //(a,b,n) or (a,b,w) or (a,b,'whole') + cas1=1; + v=size(arg(3)); + if type(arg(3))==10 then + if arg(3)=='whole' then + n=512; + w=[0:(1/n):((n-1)/n)]*(2*%pi); + cas1=1; + else + error('invalid input'); + end + elseif (type(arg(3))==1) + if (v==[1,1])&(floor(arg(3))==arg(3))&(arg(3)>0) then //i.e. the entry is a single integer + n=arg(3); + w=[0:(1/n):((n-1)/n)]*%pi; + elseif (v(1)==1) then //(sos,w) w must be one dimensional + w=arg(3); + elseif (v(2)==1) then //w to row matrix + w=(arg(3))'; + else + error ('dimension of input is invalid'); + end + else + error ('invalid input'); + end + elseif nargin==4 then //(a,b,n,fs) or (a,b,f,fs) or (a,b,n,'whole') + if type(arg(4))==10 then + cas1=1; + if (arg(4)=='whole') then + v=size(arg(3)); + if (v==[1,1])&(floor(arg(3))==arg(3))&(arg(3)>0) then //i.e. the entry is a single integer + n=arg(3); + w=[0:(1/n):((n-1)/n)]*(2*%pi); + else + error ('dimension of input is invalid'); + end + else + error('invalid input'); + end + elseif (type(arg(4))==1) then + v=size(arg(4)); + if v~=[1,1] then + error ('dimension of input is invalid'); + end + cas1=2; + fs=arg(4); + v=size(arg(3)); + if (v==[1,1])&(floor(arg(3))==arg(3))&(arg(3)>0) then //i.e. the entry is a single integer + n=arg(3); + w=[0:(1/n):((n-1)/n)]*(%pi); + elseif (v(1)==1) then //(sos,w) w must be one dimensional + w=2*arg(3)*%pi/fs; + elseif (v(2)==1) then //w to row matrix + w=2*%pi*(arg(3))'/fs; + else + error ('dimension of input is invalid'); + end + else + error ('input format is invalid'); + end + elseif nargin==5 //(a,b,n,fs,'whole') or (a,b,f,fs,'whole') + if arg(5)=='whole' then + v=size(arg(4)); + if v~=[1,1] then + error ('dimension of input is invalid'); + end + cas1=2; + v=size(arg(3)); + if (v==[1,1])&(floor(arg(3))==arg(3))&(arg(3)>0) then //i.e. the entry is a single integer + n=arg(3); + w=[0:(1/n):((n-1)/n)]*(2*%pi); + elseif (v(1)==1) then //(sos,w) w must be one dimensional + w=2*arg(3)*%pi/fs; + elseif (v(2)==1) then //w to row matrix + w=2*%pi*(arg(3))'/fs; + else + error ('dimension of input is invalid'); + end + else + error ('input format is invalid'); + end + end + //so that a,b are row vectors + [n,k]=size(a); + if k==1 then + a=a'; + end + [n,k]=size(b); + if k==1 then + b=b'; + end +endfunction diff --git a/macros/phaseInputParseAs_sos.bin b/macros/phaseInputParseAs_sos.bin Binary files differnew file mode 100644 index 0000000..fedc3ac --- /dev/null +++ b/macros/phaseInputParseAs_sos.bin diff --git a/macros/phaseInputParseAs_sos.sci b/macros/phaseInputParseAs_sos.sci new file mode 100644 index 0000000..d3bf13d --- /dev/null +++ b/macros/phaseInputParseAs_sos.sci @@ -0,0 +1,92 @@ +function [sos,w,cas1,fs]=phaseInputParseAs_sos(arg,nargin) + fs=0; + if nargin<1 then + error('no. of inputs not valid'); + end + sos=arg(1); + if nargin==1 then //(sos) is the input + w=[0:(1/512):(511/512)]*%pi; + cas1=1; + elseif nargin==2 then //(sos,n) or (sos,w) or (sos,'whole') + cas1=1; + v=size(arg(2)); + if type(arg(2))==10 then + if arg(2)=='whole' then + n=512; + w=[0:(1/n):((n-1)/n)]*(2*%pi); + cas1=1; + else + error('invalid input'); + end + elseif (type(arg(2))==1) + if (v==[1,1])&(floor(arg(2))==arg(2))&(arg(2)>0) then //i.e. the entry is a single integer + n=arg(2); + w=[0:(1/n):((n-1)/n)]*(%pi); + elseif (v(1)==1) then //(sos,w) w must be one dimensional + w=arg(2); + elseif (v(2)==1) then //w to row matrix + w=(arg(2))'; + else + error ('dimension of input is invalid'); + end + else + error ('invalid input'); + end + elseif nargin==3 then //(sos,n,fs) or (sos,f,fs) or (sos,n,'whole') + if type(arg(3))==10 then + cas1=1; + if (arg(3)=='whole') then + v=size(arg(2)); + if (v==[1,1])&(floor(arg(2))==arg(2))&(arg(2)>0) then //i.e. the entry is a single integer + n=arg(2); + w=[0:(1/n):((n-1)/n)]*(2*%pi); + else + error ('dimension of input is invalid'); + end + else + error('invalid input'); + end + elseif (type(arg(3))==1) then + v=size(arg(3)); + if v~=[1,1] then + error ('dimension of input is invalid'); + end + cas1=2; + fs=arg(3); + v=size(arg(2)); + if (v==[1,1])&(floor(arg(2))==arg(2))&(arg(2)>0) then //i.e. the entry is a single integer + n=arg(2); + w=[0:(1/n):((n-1)/n)]*(%pi); + elseif (v(1)==1) then //(sos,w) w must be one dimensional + w=2*arg(2)*%pi/fs; + elseif (v(2)==1) then //w to row matrix + w=2*%pi*(arg(2))'/fs; + else + error ('dimension of input is invalid'); + end + else + error ('input type is invalid'); + end + elseif nargin==4 //(sos,n,fs,'whole') or (sos,f,fs,'whole') + if arg(4)=='whole' then + v=size(arg(3)); + if v~=[1,1] then + error ('dimension of input is invalid'); + end + cas1=2; + v=size(arg(2)); + if (v==[1,1])&(floor(arg(2))==arg(2))&(arg(2)>0) then //i.e. the entry is a single integer + n=arg(2); + [0:(1/n):((n-1)/n)]*(2*%pi); + elseif (v(1)==1) then //(sos,w) w must be one dimensional + w=2*arg(2)*%pi/fs; + elseif (v(2)==1) then //w to row matrix + w=2*%pi*(arg(2))'/fs; + else + error ('dimension of input is invalid'); + end + else + error ('input format is invalid'); + end + end + endfunction diff --git a/macros/phasedelay.bin b/macros/phasedelay.bin Binary files differnew file mode 100644 index 0000000..01e0684 --- /dev/null +++ b/macros/phasedelay.bin diff --git a/macros/phasedelay.sci b/macros/phasedelay.sci new file mode 100644 index 0000000..19aeded --- /dev/null +++ b/macros/phasedelay.sci @@ -0,0 +1,72 @@ +//Author: Parthasarathi Panda +//parthasarathipanda314@gmail.com +function [phi, varargout]=phasedelay(varargin) + //cas variable is 2 if sos form is involved and 1 if direct rational form is given + //(sos,n) or (sos,w) or (sos,'whole')or (b,a) is the input + //cas variable is 2 if sos form is involved and 1 if direct rational form is given + //cas1 variable is 1 if f is to be given as output, 2 other wise + [nargout,nargin]=argn(); + //do not forget to execute 'phaseInputParseAs_sos' and 'phaseInputParseAs_ab' before running + v=size(varargin(1)); + if size(v)>2 then + error ('invalid input dimension'); + end + [n,k]=size(varargin(1)); + if type(varargin(1))~=1 then + error ('check the input type'); + end + if (n==1 & k==6) then //not clear if sos or (a,b) + v=size(varargin(2)); + if (nargin==1) //(sos) is the input + cas=2; + [sos,w,cas1,fs]=phaseInputParseAs_sos(varargin,nargin); + elseif (varargin(2)=='whole') //(sos,'whole')is the input + cas=2; + [sos,w,cas1,fs]=phaseInputParseAs_sos(varargin,nargin); + else //taking it as (a,b) + cas=1; + [a,b,w,cas1,fs]=phaseInputParseAs_ab(varargin,nargin); + end + elseif (n==1 | k==1) then + cas=1; + [a,b,w,cas1,fs]=phaseInputParseAs_ab(varargin,nargin); + elseif k==6 then //first variable is sos + cas=2; + [sos,w,cas1,fs]=phaseInputParseAs_sos(varargin,nargin); + end + //cas,cas1,fs,w,[(a,b),sos] + if cas==1 then + [m,n]=size(a); + N=[0:n-1]; + M=N'*w;//computing matrix Mij=(i-1)*wj + num=(a*exp(%i*M));//the operation computes phase of sum(ak*exp(i*w*k)) + num_dot=(%i*(a.*N)*exp(%i*M));//computing the derivative on those points + phdel_num=(imag(num_dot).*real(num)-imag(num).*real(num_dot))./(abs(num).*abs(num)); + + [m,n]=size(b); + N=[0:n-1]; + M=N'*w; + den=(b*exp(%i*M));//the operation computes phase of sum(ak*exp(i*w*k)) + den_dot=(%i*(b.*N)*exp(%i*M));//computing the derivative on those points + phdel_den=(imag(den_dot).*real(den)-imag(den).*real(den_dot))./(abs(den).*abs(den)); + phi=(phdel_num-phdel_den); + 0; + else + [n,k]=size(sos) + N=[0,1,2]; + M=N'*w; + num=(sos(:,4:6)*exp(%i*M));//the operation computes phase of sum(ak*exp(i*w*k)) + num_dot=(%i*(sos(:,4:6).*(ones(n,1)*N))*exp(%i*M));//computing the derivative on those points + phdel_num=(imag(num_dot).*real(num)-imag(num).*real(num_dot))./(abs(num).*abs(num)); + + den=(sos(:,1:3)*exp(%i*M));//the operation computes phase of sum(ak*exp(i*w*k)) + den_dot=(%i*(sos(:,1:3).*(ones(n,1)*N))*exp(%i*M));//computing the derivative on those points + phdel_den=(imag(den_dot).*real(den)-imag(den).*real(den_dot))./(abs(den).*abs(den)); + + phi_mat=phdel_num-phdel_den; + phi=sum(phi_mat,1);//summing each of the componenet second order system phases + end + if cas1==1 then + varargout(2)=w*fs/(2*%pi); + end +endfunction diff --git a/macros/phasez.bin b/macros/phasez.bin Binary files differnew file mode 100644 index 0000000..6b0a1e7 --- /dev/null +++ b/macros/phasez.bin diff --git a/macros/phasez.sci b/macros/phasez.sci new file mode 100644 index 0000000..38421ab --- /dev/null +++ b/macros/phasez.sci @@ -0,0 +1,92 @@ +//phasez Phase response of digital filter +//Calling Syntax +//[phi,w] = phasez(b,a,n) +//[phi,w] = phasez(sos,n) +///[phi,w] = phasez(b,a,n) returns +//the n-point unwrapped phase response vector, phi, +//in radians and the frequency vector, w, in radians/sample +//for the filter coefficients specified in b and a. +//The values of the frequency vector, w, range from +//0 to π. If n is omitted, +//the length of the phase response vector defaults to 512. For best +//results, set n to a value greater than the filter +//order. +//[phi,w] = phasez(sos,n) returns the unwrapped +//phase response for the second order sections matrix, sos. sos is +//a K-by-6 matrix, where the number of sections, K, +//must be greater than or equal to 2. If the number of sections is less +//than 2, phasez considers the input to be the +//numerator vector, b. Each row of sos corresponds +//to the coefficients of a second-order (biquad) filter. The ith +//row of the sos matrix corresponds to [bi(1) +//bi(2) bi(3) ai(1) ai(2) ai(3)]. +////Author: Parthasarathi Panda +//parthasarathipanda314@gmail.com +function [phi, varargout]=phasez(varargin) + //cas variable is 2 if sos form is involved and 1 if direct rational form is given + //(sos,n) or (sos,w) or (sos,'whole')or (b,a) is the input + //cas variable is 2 if sos form is involved and 1 if direct rational form is given + //cas1 variable is 1 if f is to be given as output, 2 other wise + [nargout,nargin]=argn(); + //do not forget to execute 'phaseInputParseAs_sos' and 'phaseInputParseAs_ab' before running + v=size(varargin(1)); + if size(v)>2 then + error ('invalid input dimension'); + end + [n,k]=size(varargin(1)); + if type(varargin(1))~=1 then + error ('check the input type'); + end + if (n==1 & k==6) then //not clear if sos or (a,b) + v=size(varargin(2)); + if (nargin==1) //(sos) is the input + cas=2; + [sos,w,cas1,fs]=phaseInputParseAs_sos(varargin,nargin); + elseif (varargin(2)=='whole') //(sos,'whole')is the input + cas=2; + [sos,w,cas1,fs]=phaseInputParseAs_sos(varargin,nargin); + else //taking it as (a,b) + cas=1; + [a,b,w,cas1,fs]=phaseInputParseAs_ab(varargin,nargin); + end + elseif (n==1 | k==1) then + cas=1; + [a,b,w,cas1,fs]=phaseInputParseAs_ab(varargin,nargin); + elseif k==6 then //first variable is sos + cas=2; + [sos,w,cas1,fs]=phaseInputParseAs_sos(varargin,nargin); + end + //cas,cas1,fs,w,[(a,b),sos] + if cas==1 then + [m,n]=size(a); + N=[0:n-1]; + M=N'*w;//computing matrix Mij=(i-1)*wj + ph_num=phasemag(a*exp(%i*M));//the operation computes phase of sum(ak*exp(i*w*k)) + + [m,n]=size(b); + N=[0:n-1]; + M=N'*w; + ph_den=phasemag(b*exp(%i*M));//similar result for denominator + [m,n]=size(w); + phi=pmodulo(ph_num-ph_den,360);//takes the difference in phase modulo 360 + else + N=[0,1,2]; + M=N'*w; + ph_num=phasemag(sos(:,4:6)*exp(%i*M)); + ph_den=phasemag(sos(:,1:3)*exp(%i*M));//the numerator phases for each second order componenet + phi_mat=ph_num-ph_den; + [m,n]=size(w); + phi=pmodulo(sum(phi_mat,1),360);//summing each of the componenet second order system phases + end + if cas1==1 then + varargout(2)=w*fs/(2*%pi); + if nargout>2 then + varargout(3)=struct('plot', 'both', 'fvflag', 0, 'yunits','degrees','xunit','Hz','fs',fs); + end + else + varargout(2)=w; + if nargout>2 then + varargout(3)=struct('plot', 'both', 'fvflag', 0, 'yunits','degrees','xunit','radian/sample','fs',[]); + end + end +endfunction diff --git a/macros/pmusic.bin b/macros/pmusic.bin Binary files differnew file mode 100644 index 0000000..1533f71 --- /dev/null +++ b/macros/pmusic.bin diff --git a/macros/pmusic.sci b/macros/pmusic.sci new file mode 100644 index 0000000..0891bb9 --- /dev/null +++ b/macros/pmusic.sci @@ -0,0 +1,253 @@ +// Date of creation: 18 Dec, 2015 +function varargout = pmusic(varargin) + // Psuedospectrum using MUSIC algorithm + // + // Note: does not implement the plotting functionality as in matlab + // Calling Sequence + // [S,w] = pmusic(x,p) + // [S,w] = pmusic(x,p,w) + // [S,w] = pmusic(x,p,nfft) + // [S,w] = pmusic(x,p,nfft,fs) + // [S,w] = pmusic(x,p,f,fs) + // [S,f] = pmusic(...,'corr') + // [S,f] = pmusic(x,p,nfft,fs,nwin,noverlap) + // [...] = pmusic(...,freqrange) + // [...,v,e] = pmusic(...) + // + // Parameters: + // x - int|double - vector|matrix + // Input signal. In case of a matrix, each row of x represents a + // seperate observation of the signal. If 'corr' flag is specified, + // then x is the correlation matrix. + // If w is not specified in the input, it is determined by the + // algorithm. If x is real valued, then range of w is [0, pi]. + // Otherwise, the range of w is [0, 2pi) + // p - int|double - scalar|vector + // p(1) is the dimension of the signal subspace + // p(2), if specified, represents a threshold that is multiplied by + // the smallest estimated eigenvalue of the signal's correlation matrix. + // w - int|double - vector + // w is the vector of normalized frequencies over which the + // pseuspectrogram is to be computed. + // nfft - int - scalar (Default = 256) + // Length of the fft used to compute pseudospectrum. The length of S + // (and hence w/f) depends on the type of values in x and nfft. + // If x is real, length of s is (nfft/2 + 1) {Range of w = [0, pi]} if + // nfft is even and (nfft+1)/2 {Range of w = [0, pi)} otherwise. + // If x is complex, length of s is nfft. + // fs - int|double - scalar (Default = 1) + // Sampling rate. Used to convert the normalized frequencies (w) to + // actual values (f) and vice-versa. + // nwin - int|double - scalar (int only)|vector (Default = 2*p(1)) + // If nwin is scalar, it is the length of the rectangular window. + // Otherwise, the vector input is considered as the window coefficients. + // Not used if 'corr' flag present. + // If x is a vector, windowing not done in nwin in scalar. If x is a + // matrix, + // noverlap - int - scalar (Default = nwin-1) + // number of points by which successive windows overlap. noverlap not + // used if x is a matrix + // freqrange - string + // The range of frequencies over which the pseudospetrogram is + // computed. Three possible values - 'onesided', 'twosided', 'centered' + // 'corr' flag + // Presence indicates that the primary input x is actually a + // correlation matrix + // + // Examples: + // TODO: + // + // See also + // pburg | peig | periodogram | pmtm | prony | pwelch | rooteig | rootmusic + // + // Authors + // Ayush Baid + // + // References + // [1] Petre Stoica and Randolph Moses, Introduction To Spectral + // Analysis, Prentice-Hall, 1997, pg. 15 + // [2] S. J. Orfanidis, Optimum Signal Processing. An Introduction. + // 2nd Ed., Macmillan, 1988. + + funcprot(0); + + exec('subspaceMethodsInputParser.sci',-1); + exec('musicBase.sci',-1); + + [numOutArgs,numInArgs] = argn(0); + + // check number of output arguments + if numOutArgs~=2 & numOutArgs~=4 then + msg = "pmusic: Wrong number of output argument; 2 or 4 expected"; + error(78,msg); + end + + // ("**start**"); + [data, msg, err_num] = subspaceMethodsInputParser(varargin); + + if length(msg)==0 then + // no error occured + else + error(err_num, "pmusic: " + msg); + end + + //disp(data); + + [musicData,msg] = musicBase(data); + + //disp(musicData); + //disp(musicData.noiseEigenvects); + //disp(musicData.signalEigenvects); + + if length(msg)~=0 then + error(msg); + end + + + // computing the pseudospectrum + [S,f] = pseudospectrum(musicData.noiseEigenvects, ... + musicData.eigenvals,data.w,data.nfft, data.fs, data.freqrange,data.isFsSpecified); + + v = musicData.noiseEigenvects; + e = musicData.eigenvals; + + varargout = list(S,f,v,e); + + // plot if requested + if numOutArgs==0 then + pow = 10*log10(S); + figure() + plot(f,pow); + + if data.isFsSpecified then + xlabel('Frequency (Hz)'); + else + xlabel('Normalized Frequency (*pi rad/sample)'); + end + + ylabel('Power (dB)'); + title('Pseudospectrum Estimate via MUSIC'); + end + +endfunction + +function [pspec,w] = pseudospectrum(noiseEigenvects, eigenvals, freqvector, ... + nfft, fs, freqrange,isFsSpecified) + // disp("noise eigenvects in pseudospectrum - "); + // disp(noiseEigenvects); + weights = ones(1,size(noiseEigenvects,2)); + + denominator = 0; + + isFreqGiven = %F; + + for i=1:size(noiseEigenvects,2); + // disp("looping in pseudospectrum"); + if isempty(freqvector) then + [h,w] = computeFreqResponseByFFT(noiseEigenvects(:,i),nfft,fs,... + isFsSpecified); + else + [h,w] = computeFreqResponseByPolyEval(noiseEigenvects(:,i),... + freqvector,fs,isFsSpecified); + isFreqGiven = %T; + end + denominator = denominator + (abs(h).^2)./weights(i); + // disp(h(1:10)); + end + + // disp(denominator(1:5)); + // computing pseudospectrum pspec + pspec = 1.0 ./ denominator; + // converting to column vector + pspec = pspec(:); + + if ~isFreqGiven then + // correcting the range of pspec according to the user specification + if strcmpi(freqrange, 'onesided')==0 then + if modulo(nfft,2) then + // nfft is odd + range = 1:(1+nfft)/2; + else + range = 1:((nfft/2)+1); + end + pspec = pspec(range); + w = w(range); + + elseif strcmpi(freqrange,'centered')==0 then + // convert two sided spectrum to centered + rem = modulo(nfft,2); + + if rem then + idx = [(nfft+1)/2+1:nfft 1:(nfft+1)/2]; + else + idx = [nfft/2+2:nfft 1:nfft/2+1]; + end + pspec = pspec(idx); + w = w(range); + + if rem then + w(1:(nfft-1)/2) = w(1:(nfft-1)/2) - fs; + else + w(1:nfft/2-1) = w(1:nfft/2-1) - fs; + end + end + end + +endfunction + +function [h,w] = computeFreqResponseByFFT(b,n,fs,isFsSpecified) + // returns the frequency response (h) and the corresponding frequency + // values (w) for a digital filter with numerator b. The evaluation of the + // frequency response is done at n points in [0,fs) using fft algorithm + // + // Similar to MATLAB's freqz(b,a,n,'whole',fs) + if isempty(fs) then + fs=1; + end + w = linspace(0,2*%pi,n+1)'; + w($) = []; + w(1) = 0; // forcing the first frequency to be 0 + + // forcing b and a to be column vectors + b = b(:); + + // zero padding for fft + zeroPadLength = n - length(b); + zeroPad = zeros(zeroPadLength,1); + b = [b; zeroPad]; + + + h = fft(b); + + if isFsSpecified then + w = w*fs/(2*%pi); + end + +endfunction + +function [h,w] = computeFreqResponseByPolyEval(b,f,fs,isFsSpecified) + // returns the frequency response (h) for a digital filter with numerator b. + // The evaluation of the frequency response is done at frequency values f + + // disp(f); + // disp(isFsSpecified); + + f = f(:); + b = b(:); + + n = length(b); + powerMatrix = zeros(length(f),n); + powerMatrix(:,1) = 1; + for i=2:n + powerMatrix(:,i) = exp(f*(-i+1)*%i); + end + + h = powerMatrix*b; + + if isFsSpecified then + w = f * fs/(2*%pi); + end + +endfunction + + diff --git a/macros/poly2ac.bin b/macros/poly2ac.bin Binary files differnew file mode 100644 index 0000000..5bdccd5 --- /dev/null +++ b/macros/poly2ac.bin diff --git a/macros/poly2ac.sci b/macros/poly2ac.sci new file mode 100644 index 0000000..8b74b5c --- /dev/null +++ b/macros/poly2ac.sci @@ -0,0 +1,42 @@ +function r = poly2ac(a,efinal) +// Convert prediction polynomial to autocorrelation sequence. +//Run rlevinson.sci before running this +// Calling Sequence +// R = poly2ac(a,efinal) +// +// Parameters +// a: input prediction polynomial with 1st element 1 (if not, poly2ac normalizes it to 1 before proceeding). +// efinal: input prediction error +// r: output autocorrelation sequence +// +// Description +// This function obtains the underlying autocorrelation sequence that would best fit a linear prediction filter described by the +// denominator polynomial and the numerator scaling. The filter is H(z) = efinal/(a(1) + a(2) x z a(3) x z^2 ... a(n) x z^n-1) +// +// Examples +// a = [1.0000 0.4288 0.76 0.0404 -0.02]; +// efinal = 0.2; // Step prediction error +// r = poly2ac(a,efinal) // Autocorrelation sequence +// +// See also +// ac2poly +// poly2rc +// rc2poly +// rc2ac +// ac2rc +// +// Author: Parthe Pandit +// +// Bibliography +// S. Kay, Modern Spectral Estimation, Prentice Hall, N.J., 1987, Chapter 6. + + //errcheck 1: Check for input format of polynomial + if (size(a,1) > 1 & size(a,2) > 1) then + error("Input polynomial has to be a 1-dimensional array") + end + if (length(efinal) > 1) then + error("Input efinal has to be a scalar") + end + r = rlevinson(a,efinal); + +endfunction diff --git a/macros/poly2lsf.bin b/macros/poly2lsf.bin Binary files differnew file mode 100644 index 0000000..35db930 --- /dev/null +++ b/macros/poly2lsf.bin diff --git a/macros/poly2lsf.sci b/macros/poly2lsf.sci new file mode 100644 index 0000000..69288f3 --- /dev/null +++ b/macros/poly2lsf.sci @@ -0,0 +1,111 @@ +function lsf=poly2lsf(a) + + +//poly2lsf Prediction polynomial to line spectral frequencies. + +// Calling Sequence +// lsf = poly2lsf(a) +// Parameters +// k: define the prediction polynomial. +// lsf: returns corresponding line spectral frequencies. +// Examples +//X = [0.5 0.3 0.8 0.9 0.4 0.05]; +// lsf = poly2lsf(X) +// See also +// +// Author +// Jitendra Singh +//modified to match MATLAb o/p +if(find(a(1,1)==0)==1) then + error ("Input to ROOTS must not contain NaN or Inf"); +end //end of modification + + +if or(type(a)==10) then + error ('The polynomial must have all roots inside of the unit circle.') +end + + + +if (size(a,1) > 1) & (size(a,2) > 1) + error('The prediction polynomial must be stored in a vector.') +end + + +if ~isreal(a) then + error('Line spectral frequencies are not defined for complex polynomials.') +end + +if (max(abs(roots(a))) >= 1) then + error('The polynomial must have all roots inside of the unit circle.'); +end + +if a(1) ~= 1 then + a = a./a(1); +end + +a=a(:); +p = length(a)-1; +a1 = [a;0]; +a2 = a1($:-1:1); +pp = a1-a2; +qq = a1+a2; + +if (p-fix(p./2).*2)~=0 then // Odd order + ////////////////////////////// + aa=[1 0 -1]; + [m,n] = size(pp); + n = max(m,n); + na = length(aa); + if na > n + P = 0; + + else + P= filter(pp, aa, [1 zeros(1,n-na)]); + if m ~= 1 + P = P(:); + end + end + + Q = qq; +else // Even order + + aa=[1 -1]; + [m,n] = size(pp); + n = max(m,n); + na = length + (aa); + if na > n + P = 0; + + else + P= filter(pp, aa, [1 zeros(1,n-na)]); + if m ~= 1 + P = P(:); + end + end + + aa=[1 1]; + [m,n] = size(qq); + n = max(m,n); + na = length(aa); + + if na > n + Q = 0; + + else + Q= filter(qq, aa, [1 zeros(1,n-na)]); + if m ~= 1 + Q = Q(:); + end + end + +end + +r_p = roots(P); r_q = roots(Q); + +ap =atan(imag(r_p(1:2:$)),real(r_p(1:2:$))); +aq = atan(imag(r_q(1:2:$)),real(r_q(1:2:$))); + +lsf = mtlb_sort([ap;aq]); +endfunction diff --git a/macros/poly2rc.bin b/macros/poly2rc.bin Binary files differnew file mode 100644 index 0000000..69952b4 --- /dev/null +++ b/macros/poly2rc.bin diff --git a/macros/poly2rc.sci b/macros/poly2rc.sci new file mode 100644 index 0000000..cfdbec6 --- /dev/null +++ b/macros/poly2rc.sci @@ -0,0 +1,75 @@ +function [kr, R0]=poly2rc(a, efinal) + +//poly2rc function convert prediction polynomial to reflection coefficients. +// Calling Sequence +// kr = poly2rc(a) +// [kr, R0] = rc2poly(a, efinal) + +// Parameters +// a: prediction polynomial. +// efinal: final prediction error. +// kr: Return refelection coefficient. +// R0: Return the zero lag autocorrelation, R0. + +// Examples +//X = [7 6 5 8 3 6] +// [kr, R0] = poly2rc(X) +// +// See also +// +// Author +// Jitendra Singh +// modified to handle empty vector as i/p by Debdeep Dey + if or(type(a)==10) then + error ('Input arguments must be double.') +end + + + if (size(a,1) > 1) & (size(a,2) > 1) + error ('The prediction polynomial must be stored in a vector.') + end + + if argn(2)==1 | isempty(efinal) then + efinal=0; + end + + if length(a)<=1 then + kr= []; + R0=efinal; + end + + if a(1) ==0 then + error ('Leading coefficient cannot be zero.') + end + a=a(:)./a(1); + + n=length(a)-1; + e=zeros(n,1); + if(n>=1) then + e(n)=efinal; + kr(n)=a($); + a=a'; + end + + if(n>=1) then + for j= (n-1):-1:1 + + ee=a($) + + a = (a-kr(j+1)*flipdim(a,2,1))/(1-kr(j+1)^2); + + a=a(1:$-1) + kr(j)=a($); + + econj=conj(ee) + econj=econj' + e(j) = e(j+1)/(1.-(econj.*ee)); + + end + R0 = e(1)./(1-abs(kr(1))^2); + else + R0=efinal; + end + + +endfunction diff --git a/macros/polyscale.bin b/macros/polyscale.bin Binary files differnew file mode 100644 index 0000000..7d77a5c --- /dev/null +++ b/macros/polyscale.bin diff --git a/macros/polyscale.sci b/macros/polyscale.sci new file mode 100644 index 0000000..9073e7a --- /dev/null +++ b/macros/polyscale.sci @@ -0,0 +1,21 @@ +// polyscale Scaling roots of a polynomial +// scales the roots of a polynomial in the z plane +//Syntax: +//b = polyscale(a,alpha) +// where +//a is the vector containing the polynomial coefficients +// alpha is the scaling vector + +// Author +//Debdeep Dey +function b = polyscale(a,alpha) +//errcheck1 +if(min(size(a))>1) then + error('Input polynomial must be an array') +end +if type(a)==10 then + error("Input cannot be of type char"); +end + b = a .* (alpha .^ (0:length(a)-1)); + +endfunction diff --git a/macros/polystab.bin b/macros/polystab.bin Binary files differnew file mode 100644 index 0000000..09a8acb --- /dev/null +++ b/macros/polystab.bin diff --git a/macros/polystab.sci b/macros/polystab.sci new file mode 100644 index 0000000..84e42d4 --- /dev/null +++ b/macros/polystab.sci @@ -0,0 +1,21 @@ +function b = polystab(a) +//This function stabilizes the polynomial transfer function. +//Calling Sequence +//b = polystab(a) +//Parameters +//a: +//Description +//This is an Octave function. +//This function stabilizes the polynomial transfer function by replacing all roots outside the unit circle with their reflection inside the unit circle. +//Examples +//polystab([1,3,5]) +//ans = +// 1. 0.6 0.2 + +funcprot(0); +rhs = argn(2) +if(rhs~=1) +error("Wrong number of input arguments.") +end +b = callOctave("polystab",a) +endfunction diff --git a/macros/polyval.bin b/macros/polyval.bin Binary files differnew file mode 100644 index 0000000..1375c8e --- /dev/null +++ b/macros/polyval.bin diff --git a/macros/polyval.sci b/macros/polyval.sci new file mode 100755 index 0000000..bcd5dfb --- /dev/null +++ b/macros/polyval.sci @@ -0,0 +1,70 @@ +function [y, delta] = polyval(p,x,S,mu) + +// Check input is a vector +if ~(isvector(p) | isempty(p)) + error(message('polyval:InvalidP')); +end + +nc = length(p); +if isscalar(x) & (argn(2) < 3) & nc>0 & isfinite(x) & all(isfinite(p(:))) + // Make it scream for scalar x. Polynomial evaluation can be + // implemented as a recursive digital filter. + y = filter(1,[1 -x],p); + y = y(nc); + return +end + +siz_x = size(x); +if argn(2) == 4 + x = (x - mu(1))/mu(2); +end + +// Use Horner's method for general case where X is an array. +y = zeros(size(x,1),size(x,2)); +if nc>0, y(:) = p(1); end +for i=2:nc + y = x .* y + p(i); +end + +if argn(1) > 1 + if argn(2) < 3 | isempty(S) + error(message('polyval:RequiresS')); + end + + // Extract parameters from S + if isstruct(S), // Use output structure from polyfit. + R = S.R; + df = S.df; + normr = S.normr; + else // Use output matrix from previous versions of polyfit. + [ms,ns] = size(S); + if (ms ~= ns+2) | (nc ~= ns) + error(message('polyval:SizeS')); + end + R = S(1:nc,1:nc); + df = S(nc+1,1); + normr = S(nc+2,1); + end + + // Construct Vandermonde matrix for the new X. + x = x(:); + V(:,nc) = ones(length(x),1,class(x)); + for j = nc-1:-1:1 + V(:,j) = x.*V(:,j+1); + end + + // S is a structure containing three elements: the triangular factor of + // the Vandermonde matrix for the original X, the degrees of freedom, + // and the norm of the residuals. + E = V/R; + e = sqrt(1+sum(E.*E,2)); + if df == 0 + warning(message('polyval:ZeroDOF')); + delta = Inf(size(e)); + else + delta = normr/sqrt(df)*e; + end + delta = reshape(delta,siz_x); +end +endfunction + diff --git a/macros/polyval.sci~ b/macros/polyval.sci~ new file mode 100755 index 0000000..8301ff5 --- /dev/null +++ b/macros/polyval.sci~ @@ -0,0 +1,69 @@ +function [y, delta] = polyval(p,x,S,mu) + +// Check input is a vector +if ~(isvector(p) | isempty(p)) + error(message('polyval:InvalidP')); +end + +nc = length(p); +if isscalar(x) & (argn(2) < 3) & nc>0 & isfinite(x) & all(isfinite(p(:))) + // Make it scream for scalar x. Polynomial evaluation can be + // implemented as a recursive digital filter. + y = filter(1,[1 -x],p); + y = y(nc); + return +end + +siz_x = size(x); +if argn(2) == 4 + x = (x - mu(1))/mu(2); +end + +// Use Horner's method for general case where X is an array. +y = zeros(size(x,1),size(x,2)); +if nc>0, y(:) = p(1); end +for i=2:nc + y = x .* y + p(i); +end + +if argn(1) > 1 + if argn(2) < 3 | isempty(S) + error(message('polyval:RequiresS')); + end + + // Extract parameters from S + if isstruct(S), // Use output structure from polyfit. + R = S.R; + df = S.df; + normr = S.normr; + else // Use output matrix from previous versions of polyfit. + [ms,ns] = size(S); + if (ms ~= ns+2) | (nc ~= ns) + error(message('polyval:SizeS')); + end + R = S(1:nc,1:nc); + df = S(nc+1,1); + normr = S(nc+2,1); + end + + // Construct Vandermonde matrix for the new X. + x = x(:); + V(:,nc) = ones(length(x),1,class(x)); + for j = nc-1:-1:1 + V(:,j) = x.*V(:,j+1); + end + + // S is a structure containing three elements: the triangular factor of + // the Vandermonde matrix for the original X, the degrees of freedom, + // and the norm of the residuals. + E = V/R; + e = sqrt(1+sum(E.*E,2)); + if df == 0 + warning(message('polyval:ZeroDOF')); + delta = Inf(size(e)); + else + delta = normr/sqrt(df)*e; + end + delta = reshape(delta,siz_x); +end + diff --git a/macros/pow2db.bin b/macros/pow2db.bin Binary files differnew file mode 100644 index 0000000..7cc69ea --- /dev/null +++ b/macros/pow2db.bin diff --git a/macros/pow2db.sci b/macros/pow2db.sci new file mode 100644 index 0000000..5be0941 --- /dev/null +++ b/macros/pow2db.sci @@ -0,0 +1,32 @@ +//POW2DB Power to dB conversion +//YDB = POW2DB(Y) convert the data Y into its corresponding dB value YDB +//Example: +//Calculate ratio of 2000W to 2W in decibels +//y1 = pow2db(2000/2) //Answer in db +//Author : Debdeep Dey +function [ydb]=pow2db(y) +rhs = argn(2) +if(rhs~=1) +error("Wrong number of input arguments.") +end +[r,c]=size(y); +if (find(real(y(:))<0))==[] then + if abs(y(:))>=0 then + for i=1:r + for j=1:c + if abs(y(i,j))>0 then + ydb(i,j)=10*log10(y(i,j)); + else + ydb(i,j)=-%inf; + end + end + end + + + end +else + error("The power value must be non-negative") +end + +endfunction + diff --git a/macros/primitive.bin b/macros/primitive.bin Binary files differnew file mode 100644 index 0000000..d83a446 --- /dev/null +++ b/macros/primitive.bin diff --git a/macros/primitive.sci b/macros/primitive.sci new file mode 100644 index 0000000..bdb4560 --- /dev/null +++ b/macros/primitive.sci @@ -0,0 +1,32 @@ +function y = primitive (f, t, x) +//This function calculates the primitive of a given function supplied as input. +//Calling Sequence +//y = primitive(f, t) +//y = primitive(f, t, x) +//Parameters +//f: +//t: +//x +//Description +//This is an Octave function. +//This function calculates the primitive of a given function supplied as input. +//The second parameter t is a vector at which the output is evaluated (at the points t). This vector should be ascending and ordered. +//The function approximates the primitive (indefinite integral) of the univariate function handle f with constant of integration x. +//Examples +//primitive([1,4,5],3,9) +//ans = +// 9. + +funcprot(0); +rhs = argn(2) +if(rhs<2 | rhs>3) +error("Wrong number of input arguments.") +end + select(rhs) + case 2 then + y = callOctave("primitive",f, t) + case 3 then + y = callOctave("primitive",f, t, x) + end +endfunction + diff --git a/macros/prony.bin b/macros/prony.bin Binary files differnew file mode 100644 index 0000000..12ea4f9 --- /dev/null +++ b/macros/prony.bin diff --git a/macros/prony.sci b/macros/prony.sci new file mode 100644 index 0000000..9f0fb9c --- /dev/null +++ b/macros/prony.sci @@ -0,0 +1,39 @@ +//Prony's method for time-domain design of IIR Filters +//[b,a]=prony(h,nb,na) +//where b= coefficients of the numerator of the TF +// a=coefficients of the denominator of the TF +// h=impulse response of the digital filter +// nb=number of zeros +// na=number of poles +//Reference : T.W. Parks and C.S. Burrus, Digital Filter Design, +// John Wiley and Sons, 1987, p226. +//Author +//Debdeep Dey +function [b,a]=prony(h,nb,na) + +K = length(h)-1; +M=double(nb); +N=double(na); +//zero-pad input if necessary +if K <= max(M,N) then + K = max(M,N)+1; + h(K+1) = 0; +end +c = h(1); +if c==0 //avoid division by zero + c=1; +end +H = toeplitz(h/c,[1 zeros(1,K)]); +//K+1 by N+1 +if (K > N) + H(:,(N+2):(K+1)) = []; +end +//Partition H matrix +H1 = H(1:(M+1),:); //M+1 by N+1 +h1 = H((M+2):(K+1),1); //K-M by 1 +H2 = H((M+2):(K+1),2:(N+1)); //K-M by N +a = [1; -H2\h1].'; +b = c*a*H1.'; + +endfunction + diff --git a/macros/pulseperiod.bin b/macros/pulseperiod.bin Binary files differnew file mode 100644 index 0000000..b995439 --- /dev/null +++ b/macros/pulseperiod.bin diff --git a/macros/pulseperiod.sci b/macros/pulseperiod.sci new file mode 100644 index 0000000..aa43455 --- /dev/null +++ b/macros/pulseperiod.sci @@ -0,0 +1,416 @@ +function [p, initialcross, finalcross, nextcross, midreference]= pulseperiod(x, varargin) + + // This function estimate pulse period of real vector X. + // Calling Sequence + // p=pulseperiod(x) + // p=pulseperiod(x, Fs) + // p=pulseperiod(x, t) + // p=pulseperiod (x, t, 'Polarity', pol) + // p=pulseperiod(x, t, 'MidPercentReferenceLevel', N ) + // p=pulseperiod(x, t, 'Tolerance', M) + // p=pulseperiod(x, t,'StateLevels', O) + + // [p initialcross finalcross nextcross midreference]=pulseperiod(x) + // [p initialcross finalcross nextcross midreference]=pulseperiod(x, t) + // [p initialcross finalcross nextcross midreference]=pulseperiod(x, t) + // [p initialcross finalcross nextcross midreference]=pulseperiod(x, t, 'Polarity', pol) + // [p initialcross finalcross nextcross midreference]=pulseperiod(x, t, 'MidPercentReferenceLevel', N ) + // [p initialcross finalcross nextcross midreference]= pulseperiod(x, t, 'Tolerance', M) + // [p initialcross finalcross nextcross midreference]= pulseperiod(x, t,'StateLevels', O) + // [p initialcross finalcross nextcross midreference]= pulseperiod(x, t,'StateLevels', O, 'fig', on or off) + // + // Parameters + // x: real vector. + // Fs: specifies the sample rate, Fs, as a positive scalar, where the first sample instant corresponds to a time of zero. + // t: defiene instant sample time t as vector with same length of x, or specifies the sample rate, t, as a positive scalar. + // Polarity: specify the polarity of the pulse as either 'positive' or 'negative', where the default value is 'positive' + // MidPercentReferenceLevel: specify the mid percent reference leves as a percentage, default value of N is 50. + // Tolerance: define the tolerance value as real scaler value, where default value of M is 2.0. + // StateLevels: define the lower and upper state levels as two element real vector. + // fig: specify the logical input value to display figure as one of 'on' or 'off', where the default input in 'off'. + // p: returns a vector of difference between the mid-crossings of the initial transition of each positive-polarity pulse and the next positive-going transition + // initialcross: returns a vector of initial cross values of bilevel waveform transitions X + // finalcross: returns a vector of final cross values of bilevel waveform transitions X + // nextcross: returns a vector of next cross values of bilevel waveform transitions X + // midreference: return mid reference value corrosponding to mid percenr reference value. + + // Examples + // x=[1.2, 5, 10, -20, 12] + //t=1:length(x) + //p=pulseperiod(x, t) + // See also + // Authors + // Jitendra Singh + + + // run statelevels and midcross function before running risetime function. + + if or(type(x)==10) then + error ('Input arguments must be double.') +end + + if length(varargin)==0 then + varargin=varargin; + end + + sindex=[]; +if length(varargin)>=1 then +a=1; +for i=1:length(varargin) + if type(varargin(i))==10 then + sindex(a)=i; + a=a+1; + end +end +end + + +pol='POSITIVE'; +polidx=[]; +fig='OFF' +index_on=[]; +if (~isempty(sindex)) then + for j=1:length(sindex) + select convstr(varargin(sindex(j)), 'u') // validating input variable names + case {'STATELEVELS'} + + if length(varargin) <=sindex(j) then + error(strcat(['parameter StateLevels required a value'])); + end + + if type(varargin(sindex(j)+1))==1 then + levels=varargin(sindex(j)+1); + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='MIDPERCENTREFERENCELEVEL' | convstr(varargin(sindex(j)+1),'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='FIG' | convstr(varargin(sindex(j)+1), 'u')=='POLARITY' then + + error('parameter StateLevels required a value.') + + + elseif type(varargin(sindex(j)+1))==10 then + + error('Expected STATELEVELS to be one of these types: double, Instead its type was char.') + end + + case {'MIDPERCENTREFERENCELEVEL'} + + if length(varargin) <=sindex(j) then + error(strcat(['parameter MidPercentRefernceLevel required a value.'])); + end + + if type(varargin(sindex(j)+1))==1 then + midpercentval= varargin(sindex(j)+1); + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='STATELEVELS' | convstr(varargin(sindex(j)+1),'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='FIG' | convstr(varargin(sindex(j)+1), 'u')=='POLARITY' then + error('parameter MidPercentRefernceLevel required a value.') + + elseif type(varargin(sindex(j)+1))==10 then + error('Expected MidPercentRefernceLevel to be one of these types: double, Instead its type was char.') + end + + + case {'TOLERANCE'} + + if length(varargin) <=sindex(j) then + + error(strcat(['parameter Tolerance required a value"])); + + elseif type(varargin(sindex(j)+1))==1 then + tolerance= varargin(sindex(j)+1); + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')== 'STATELEVELS' | convstr(varargin(sindex(j)+1), 'u')== 'MIDPERCENTREFERENCELEVEL' | convstr(varargin(sindex(j)+1), 'u')=='FIG' | convstr(varargin(sindex(j)+1), 'u')=='POLARITY' then + + error('parameter Tolerance required a value.'); + + elseif type(varargin(sindex(j)+1))==10 then + + error('Expected Tolerance to be one of these types: double, Instead its type was char.'); + end + + + case {'FIG'} + + if length(varargin) <=sindex(j) then + error(strcat(['parameter fig required a value.'])); + end + + if type(varargin(sindex(j)+1))==1 then + error ('Expected fig to match one of these strings: on or off'); + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='STATELEVELS' | convstr(varargin(sindex(j)+1), 'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='MIDPERCENTREFERENCELEVEL' | convstr(varargin(sindex(j)+1), 'u')=='POLARITY' then + error('parameter fig required a value.') + else + fig= convstr(varargin(sindex(j)+1), 'u'); + + end + + + if fig == 'OFF' | fig == 'ON' then + else + error('Expected fig to match one of these strings: on or off'); + end + + + + case{'ON'} + index_on=sindex(j) + if length(varargin) == 1 then + error ('Unexpected input.') + + + elseif type(varargin(sindex(j)-1))==1 then + error ('Unexpected input.'); + elseif convstr(varargin(sindex(j)-1), 'u')~='FIG' then + error('Unexpected input'); + end + + case{'OFF'} + + if length(varargin) == 1 then + error ('Unexpected input.') + + + elseif type(varargin(sindex(j)-1))==1 then + error ('Unexpected input.'); + elseif convstr(varargin(sindex(j)-1), 'u')~='FIG' then + error('Unexpected input'); + end + + + + + case{'POLARITY'} + + if length(varargin)<=sindex(j) then + error ('Parameter polarity requires a value.') + end + + if type( varargin(sindex(j)+1))==1 then + error ('POLARITY must be either ''Positive'' or ''Negative''.') + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')== 'STATELEVELS' | convstr(varargin(sindex(j)+1), 'u')== 'MIDPERCENTREFERENCELEVEL' | convstr(varargin(sindex(j)+1), 'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='FIG' then + + error ('Parameter polarity requires a value.') + + + elseif convstr(varargin(sindex(j)+1), 'u') ~= 'POSITIVE' & convstr(varargin(sindex(j)+1), 'u')~= 'NEGATIVE' then + + error ('POLARITY must be either ''Positive'' or ''Negative''.'); + + else + polidx=sindex(j); + end + + + case {'POSITIVE'} + + if j==1 then + error(strcat(['Unexpected option:', " ", varargin(sindex(j))])); + elseif convstr(varargin(sindex(j)-1), 'u') ~= 'POLARITY' + error(strcat(['Unexpected option:', " ", varargin(sindex(j))])); + else + polinputidx= sindex(j); + + pol= convstr(varargin (sindex(j)), 'u') ; + end + + case {'NEGATIVE'} + + if j==1 then + error(strcat(['Unexpected option:', " ", varargin(sindex(j))])); + elseif convstr(varargin(sindex(j)-1), 'u') ~= 'POLARITY' + error(strcat(['Unexpected option:', " ", varargin(sindex(j))])); + else + polinputidx= sindex(j); + + pol= convstr(varargin (sindex(j)), 'u') ; + end + + else + error(strcat(['Invalid optional argument'," ", varargin(sindex(j))])); + end // switch + end // for + end // if +// + +if length(index_on)>0 then + varargin(index_on)='OFF'; +end + + +if length(polidx)>0 then + varargin(polidx)=null(); + varargin(polinputidx-1)=null(); +end + + + [crossval midref levels t tolerance]= midcross(x, varargin(:)); + + upperbound= levels(2)- (tolerance/100)*(levels(2)-levels(1)); + mostupperbound=levels(2)+ (tolerance/100)*(levels(2)-levels(1)); + lowerbound= levels(1)+ (tolerance/100)*(levels(2)-levels(1)); + mostlowerbound=levels(1)- (tolerance/100)*(levels(2)-levels(1)); + + int_pos=[]; + final_pos=[]; + int_neg=[]; + final_neg=[]; + nextcross_pos=[]; +nextcross_neg=[]; + +if length(crossval)>=2 then + +if x(1)>midref then + + int_pos=crossval(2:2:$); + final_pos=crossval(3:2:$); + int_neg=crossval(1:2:$); + final_neg=crossval(2:2:$); + +else + + int_pos=crossval(1:2:$); + final_pos=crossval(2:2:$); + int_neg=crossval(2:2:$); + final_neg-crossval(3:2:$); + +end + + + +if length(int_pos)>=2 then + nextcross_pos=int_pos(2:$); +end + +if length(int_neg)>=2 then + nextcross_neg=int_neg(2:$); + end + + + + +if length(int_pos)>length(final_pos) then + int_pos=int_pos(1:($-1)) +elseif length(int_neg)>length(final_neg) then + int_neg=int_neg(1:($-1)) + end + + + + + + + if length(int_pos)>length(nextcross_pos) then + int_pos=int_pos(1:($-1)) + + end + if length(final_pos)>length(nextcross_pos) + final_pos=final_pos(1:($-1)) + + end + + if length(int_neg)>length(nextcross_neg) then + int_neg=int_neg(1:($-1)); + end + if length(final_neg)>length(nextcross_neg) then + final_neg=final_neg(1:($-1)); + end + + +end + + +p=[]; + + if pol=='POSITIVE' then // checking the input variable polarity + + p= nextcross_pos-int_pos; + + + initialcross=int_pos; + finalcross=final_pos; + nextcross=nextcross_pos; + else + p= nextcross_neg-int_neg; + + + initialcross=int_neg; + finalcross=final_neg; + nextcross=nextcross_neg; + + + end + +midreference=midref; // return midreference value + + if fig=='ON' then // if the defined output is only 1, the it will provide the graphical representation of //levels + + if length(p)==0 then + + plot(t,x, 'LineWidth',1, 'color', 'black') + // xtitle('', 'Time (second)','Level (Volts)' ); + plot(t,midreference * ones(1, length(t)),'-r', 'LineWidth',0.5) + + plot(t,mostupperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + plot(t,levels(2) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,upperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + plot(t,lowerbound *ones(1, length(t)),'--g', 'LineWidth',0.5) + + plot(t,levels(1) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,mostlowerbound * ones(1, length(t)),'--g', 'LineWidth',0.5) + + xlabel("Time (second)", "fontsize",3, "color", "black" ) + ylabel("Level (Volts)", "fontsize",3, "color", "black" ) + + + legends(["Signal"; "upper boundary"; "upper state"; "lower boundary"; "mid reference"; "upper boundary"; "lower state"; "lower boundary"], [[1;1], [5;2], [1;2], [5;2], [5;1], [3;2], [1;2], [3;2]], opt='?') + + + else + + plot(t,x, 'LineWidth',1, 'color', 'black') + + plot(t,midreference * ones(1, length(t)),'-g', 'LineWidth',0.5) + + + //n=length(finalcross); + + + rects=[initialcross(1:2:$); levels(2)*ones(p(1:2:$)); p(1:2:$); (levels(2)-levels(1))*ones(p(1:2:$))] + + + col=-10*ones(p(1:2:$)); + + midc=[nextcross, initialcross, finalcross]; + midcross=gsort(midc, 'c','i' ) + + plot(midcross, midreference*ones(midcross), "r*", 'MarkerSize',15); + plot(t,mostupperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + plot(t,levels(2) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,upperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + plot(t,midreference * ones(1, length(t)),'-r', 'LineWidth',0.5) + + plot(t,lowerbound *ones(1, length(t)),'--g', 'LineWidth',0.5) + + plot(t,levels(1) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,mostlowerbound * ones(1, length(t)),'--g', 'LineWidth',0.5) + + xrects(rects, col); + + xlabel("Time (second)", "fontsize",3, "color", "black" ) + ylabel("Level (Volts)", "fontsize",3, "color", "black" ) + + + legends(["pulse period"; "Signal"; "mid cross"; "upper boundary"; "upper state"; "lower boundary"; "mid reference"; "upper boundary"; "lower state"; "lower boundary"], [[-11; 2] , [1;1], [-10;5], [5;2], [1;2], [5;2], [5;1], [3;2],[1;2], [3;2]], opt='?') + + end + end +// +// +endfunction diff --git a/macros/pulsesep.bin b/macros/pulsesep.bin Binary files differnew file mode 100644 index 0000000..3da9b7a --- /dev/null +++ b/macros/pulsesep.bin diff --git a/macros/pulsesep.sci b/macros/pulsesep.sci new file mode 100644 index 0000000..f64494b --- /dev/null +++ b/macros/pulsesep.sci @@ -0,0 +1,412 @@ +function [s, initialcross, finalcross, nextcross, midreference]= pulsesep(x, varargin) + + // This function estimate pulse separation between bilevel waveform pulses. + // Calling Sequence + // s=pulsesep(x) + // s=pulsesep(x, Fs) + // s=pulsesep(x, t) + // s=pulsesep (x, t, 'Polarity', pol) + // s=pulsesep(x, t, 'MidPercentReferenceLevel', N ) + // s=pulsesep(x, t, 'Tolerance', M) + // s=pulsesep(x, t,'StateLevels', [O 1]) + + // [s initialcross finalcross nextcross midreference]=pulsesep(x) + // [s initialcross finalcross nextcross midreference]=pulsesep(x, Fs) + // [s initialcross finalcross nextcross midreference]=pulsesep(x, t) + // [s initialcross finalcross nextcross midreference]=pulsesep(x, t, 'Polarity', pol) + // [s initialcross finalcross nextcross midreference]=pulsesep(x, t, 'MidPercentReferenceLevel', N ) + // [s initialcross finalcross nextcross midreference]= pulsesep(x, t, 'Tolerance', M) + // [s initialcross finalcross nextcross midreference]= pulsesep(x, t,'StateLevels', O) + // [s initialcross finalcross nextcross midreference]= pulsesep(x, t,'StateLevels', O, 'fig', on or off) + // + // Parameters + // x: real vector. + // Fs: specifies the sample rate, Fs, as a positive scalar, where the first sample instant corresponds to a time of zero. + // t: defiene instant sample time t as vector with same length of x, or specifies the sample rate, t, as a positive scalar. + // Polarity: specify the polarity of the pulse as either 'positive' or 'negative', where the default value is 'positive' + // MidPercentReferenceLevel: specify the mid percent reference leves as a percentage, default value of N is 50. + // Tolerance: define the tolerance value as real scaler value, where default value of M is 2.0. + // StateLevels: define the lower and upper state levels as two element real vector. + // fig: specify the logical input value to display figure as one of 'on' or 'off', where the default input in 'off'. + // s: returns a vector of differences between the mid-crossings of each final negative-going transition of every positive-polarity pulse and the next positive-going transition. + // initialcross: returns a vector of initial cross values of bilevel waveform transitions X + // finalcross: returns a vector of final cross values of bilevel waveform transitions X + // nextcross: returns a vector of next cross values of bilevel waveform transitions X + // midreference: return mid reference value corrosponding to mid percenr reference value. + + // Examples + // x=[1.2, 5, 10, -20, 12] + //t=1:length(x) + //s=pulsesep(x, t) + // See also + // Authors + // Jitendra Singh + + + // run statelevels and midcross function before running risetime function. + + if or(type(x)==10) then + error ('Input arguments must be double.') +end + + if length(varargin)==0 then + varargin=varargin; + end + + sindex=[]; +if length(varargin)>=1 then +a=1; +for i=1:length(varargin) + if type(varargin(i))==10 then + sindex(a)=i; + a=a+1; + end +end +end + + +pol='POSITIVE'; +polidx=[]; +fig='OFF' +index_on=[]; +if (~isempty(sindex)) then + for j=1:length(sindex) + select convstr(varargin(sindex(j)), 'u') // validating input variable names + case {'STATELEVELS'} + if length(varargin) <=sindex(j) then + error(strcat(['parameter StateLevels required a value'])); + end + + if type(varargin(sindex(j)+1))==1 then + levels=varargin(sindex(j)+1); + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='MIDPERCENTREFERENCELEVEL' | convstr(varargin(sindex(j)+1),'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='FIG' | convstr(varargin(sindex(j)+1), 'u')=='POLARITY' then + + error('parameter StateLevels required a value.') + + + elseif type(varargin(sindex(j)+1))==10 then + + error('Expected STATELEVELS to be one of these types: double, Instead its type was char.') + end + + case {'MIDPERCENTREFERENCELEVEL'} + if length(varargin) <=sindex(j) then + error(strcat(['parameter MidPercentRefernceLevel required a value.'])); + end + + if type(varargin(sindex(j)+1))==1 then + midpercentval= varargin(sindex(j)+1); + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='STATELEVELS' | convstr(varargin(sindex(j)+1),'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='FIG' | convstr(varargin(sindex(j)+1), 'u')=='POLARITY' then + error('parameter MidPercentRefernceLevel required a value.') + + elseif type(varargin(sindex(j)+1))==10 then + error('Expected MidPercentRefernceLevel to be one of these types: double, Instead its type was char.') + end + + case {'TOLERANCE'} + + if length(varargin) <=sindex(j) then + error(strcat(['parameter Tolerance required a value"])); + + elseif type(varargin(sindex(j)+1))==1 then + tolerance= varargin(sindex(j)+1); + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')== 'STATELEVELS' | convstr(varargin(sindex(j)+1), 'u')== 'MIDPERCENTREFERENCELEVEL' | convstr(varargin(sindex(j)+1), 'u')=='FIG' | convstr(varargin(sindex(j)+1), 'u')=='POLARITY' then + + error('parameter Tolerance required a value.'); + + elseif type(varargin(sindex(j)+1))==10 then + + error('Expected Tolerance to be one of these types: double, Instead its type was char.'); + end + + + + case {'FIG'} + + if length(varargin) <=sindex(j) then + error(strcat(['parameter fig required a value.'])); + end + + if type(varargin(sindex(j)+1))==1 then + error ('Expected fig to match one of these strings: on or off'); + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='STATELEVELS' | convstr(varargin(sindex(j)+1), 'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='MIDPERCENTREFERENCELEVEL' | convstr(varargin(sindex(j)+1), 'u')=='POLARITY' then + error('parameter fig required a value.') + else + fig= convstr(varargin(sindex(j)+1), 'u'); + + end + + + if fig == 'OFF' | fig == 'ON' then + else + error('Expected fig to match one of these strings: on or off'); + end + + + + case{'ON'} + index_on=sindex(j) + if length(varargin) == 1 then + error ('Unexpected input.') + + + elseif type(varargin(sindex(j)-1))==1 then + error ('Unexpected input.'); + elseif convstr(varargin(sindex(j)-1), 'u')~='FIG' then + error('Unexpected input'); + end + + case{'OFF'} + + if length(varargin) == 1 then + error ('Unexpected input.') + + + elseif type(varargin(sindex(j)-1))==1 then + error ('Unexpected input.'); + elseif convstr(varargin(sindex(j)-1), 'u')~='FIG' then + error('Unexpected input'); + end + + + + + case{'POLARITY'} + + if length(varargin)<=sindex(j) then + error ('Parameter polarity requires a value.') + end + + if type( varargin(sindex(j)+1))==1 then + error ('POLARITY must be either ''Positive'' or ''Negative''.') + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')== 'STATELEVELS' | convstr(varargin(sindex(j)+1), 'u')== 'MIDPERCENTREFERENCELEVEL' | convstr(varargin(sindex(j)+1), 'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='FIG' then + + error ('Parameter polarity requires a value.') + + + elseif convstr(varargin(sindex(j)+1), 'u') ~= 'POSITIVE' & convstr(varargin(sindex(j)+1), 'u')~= 'NEGATIVE' then + + error ('POLARITY must be either ''Positive'' or ''Negative''.'); + + else + polidx=sindex(j); + end + + + case {'POSITIVE'} + + if j==1 then + error(strcat(['Unexpected option:', " ", varargin(sindex(j))])); + elseif convstr(varargin(sindex(j)-1), 'u') ~= 'POLARITY' + error(strcat(['Unexpected option:', " ", varargin(sindex(j))])); + else + polinputidx= sindex(j); + + pol= convstr(varargin (sindex(j)), 'u') ; + end + + case {'NEGATIVE'} + + if j==1 then + error(strcat(['Unexpected option:', " ", varargin(sindex(j))])); + elseif convstr(varargin(sindex(j)-1), 'u') ~= 'POLARITY' + error(strcat(['Unexpected option:', " ", varargin(sindex(j))])); + else + polinputidx= sindex(j); + + pol= convstr(varargin (sindex(j)), 'u') ; + end + + else + error(strcat(['Invalid optional argument'," ", varargin(sindex(j))])); + end // switch + end // for + end // if +// + +if length(index_on)>0 then + varargin(index_on)='OFF'; +end + + +if length(polidx)>0 then + varargin(polidx)=null(); + varargin(polinputidx-1)=null(); +end + + + [crossval midref levels t tolerance]= midcross(x, varargin(:)); + + upperbound= levels(2)- (tolerance/100)*(levels(2)-levels(1)); + mostupperbound=levels(2)+ (tolerance/100)*(levels(2)-levels(1)); + lowerbound= levels(1)+ (tolerance/100)*(levels(2)-levels(1)); + mostlowerbound=levels(1)- (tolerance/100)*(levels(2)-levels(1)); + + int_pos=[]; + final_pos=[]; + int_neg=[]; + final_neg=[]; + nextcross_pos=[]; +nextcross_neg=[]; + +if length(crossval)>=2 then + +if x(1)>midref then + + int_pos=crossval(2:2:$); + final_pos=crossval(3:2:$); + int_neg=crossval(1:2:$); + final_neg=crossval(2:2:$); + +else + + int_pos=crossval(1:2:$); + final_pos=crossval(2:2:$); + int_neg=crossval(2:2:$); + final_neg-crossval(3:2:$); + +end + + + +if length(int_pos)>=2 then + nextcross_pos=int_pos(2:$); +end + +if length(int_neg)>=2 then + nextcross_neg=int_neg(2:$); + end + + + + +if length(int_pos)>length(final_pos) then + int_pos=int_pos(1:($-1)) +elseif length(int_neg)>length(final_neg) then + int_neg=int_neg(1:($-1)) + end + + + + + + + if length(int_pos)>length(nextcross_pos) then + int_pos=int_pos(1:($-1)) + + end + if length(final_pos)>length(nextcross_pos) + final_pos=final_pos(1:($-1)) + + end + + if length(int_neg)>length(nextcross_neg) then + int_neg=int_neg(1:($-1)); + end + + if length(final_neg)>length(nextcross_neg) then + final_neg=final_neg(1:($-1)); + end + + +end + + + +s=[]; + + + if pol=='POSITIVE' then + s=nextcross_pos-final_pos; + initialcross=int_pos; + finalcross=final_pos; + nextcross=nextcross_pos; + + else + + s=nextcross_neg-final_neg; + initialcross=int_neg; + finalcross=final_neg; + nextcross=nextcross_neg; + + end + +midreference=midref; + + if fig=='ON' then // if the defined output is only 1, the it will provide the graphical representation of //levels + + if length(s)==0 then + + plot(t,x, 'LineWidth',1, 'color', 'black') + // xtitle('', 'Time (second)','Level (Volts)' ); + plot(t,midreference * ones(1, length(t)),'-r', 'LineWidth',0.5) + + plot(t,mostupperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + plot(t,levels(2) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,upperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + plot(t,lowerbound *ones(1, length(t)),'--g', 'LineWidth',0.5) + + plot(t,levels(1) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,mostlowerbound * ones(1, length(t)),'--g', 'LineWidth',0.5) + + xlabel("Time (second)", "fontsize",3, "color", "black" ) + ylabel("Level (Volts)", "fontsize",3, "color", "black" ) + + + legends(["Signal"; "upper boundary"; "upper state"; "lower boundary"; "mid reference"; "upper boundary"; "lower state"; "lower boundary"], [[1;1], [5;2], [1;2], [5;2], [5;1], [3;2], [1;2], [3;2]], opt='?') + + + else + + plot(t,x, 'LineWidth',1, 'color', 'black') + + plot(t,midreference * ones(1, length(t)),'-g', 'LineWidth',0.5) + + + //n=length(finalcross); + + + rects=[finalcross; levels(2)*ones(s); s; (levels(2)-levels(1))*ones(s)] + + + col=-10*ones(s); + + midc=[nextcross, finalcross, initialcross]; + midcross=gsort(midc, 'c','i' ) + + plot(midcross, midreference*ones(midcross), "r*", 'MarkerSize',15); + plot(t,mostupperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + plot(t,levels(2) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,upperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + plot(t,midreference * ones(1, length(t)),'-r', 'LineWidth',0.5) + + plot(t,lowerbound *ones(1, length(t)),'--g', 'LineWidth',0.5) + + plot(t,levels(1) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,mostlowerbound * ones(1, length(t)),'--g', 'LineWidth',0.5) + + xrects(rects, col); + + xlabel("Time (second)", "fontsize",3, "color", "black" ) + ylabel("Level (Volts)", "fontsize",3, "color", "black" ) + + + legends(["pulse seperation"; "Signal"; "mid cross"; "upper boundary"; "upper state"; "lower boundary"; "mid reference"; "upper boundary"; "lower state"; "lower boundary"], [[-11; 2] , [1;1], [-10;5], [5;2], [1;2], [5;2], [5;1], [3;2],[1;2], [3;2]], opt='?') + + end + end +// +// +endfunction diff --git a/macros/pulsewidth.bin b/macros/pulsewidth.bin Binary files differnew file mode 100644 index 0000000..6bb29af --- /dev/null +++ b/macros/pulsewidth.bin diff --git a/macros/pulsewidth.sci b/macros/pulsewidth.sci new file mode 100644 index 0000000..dad4a66 --- /dev/null +++ b/macros/pulsewidth.sci @@ -0,0 +1,371 @@ +function [w, initialcross, finalcross, midreference]=pulsewidth(x, varargin) + + // This function estimate pulse width of real vector X. + // Calling Sequence + // w=pulsewidth(x) + // w=pulsewidth(x, Fs) + // w=pulsewidth(x, t) + // w=pulsewidth (x, t, 'Polarity', pol) + // w=pulsewidth(x, t, 'MidPercentReferenceLevel', N ) + // w=pulsewidth(x, t, 'Tolerance', M) + // w=pulsewidth(x, t,'StateLevels', O) + + // [w initialcross finalcross midreference]=pulsewidth(x) + // [w initialcross finalcross midreference]=pulsewidth(x, Fs) + // [w initialcross finalcross midreference]=pulsewidth(x, t) + // [w initialcross finalcross midreference]=pulsewidth(x, t, 'Polarity', pol) + // [w initialcross finalcross midreference]=pulsewidth(x, t, 'MidPercentReferenceLevel', N ) + // [w initialcross finalcross midreference]= pulsewidth(x, t, 'Tolerance', M) + // [w initialcross finalcross midreference]= pulsewidth(x, t,'StateLevels', O) + // [w initialcross finalcross midreference]= pulsewidth(x, t,'StateLevels', O, 'fig', on or off) + // + // Parameters + // x: real vector. + // Fs: specifies the sample rate, Fs, as a positive scalar, where the first sample instant corresponds to a time of zero. + // t: defiene instant sample time t as vector with same length of x, or specifies the sample rate, t, as a positive scalar. + // Polarity: specify the polarity of the pulse as either 'positive' or 'negative', where the default value is 'positive'. + // MidPercentReferenceLevel: specify the mid percent reference leves as a percentage, default value of N is 50. + // Tolerance: define the tolerance value as real scaler value, where default value of M is 2.0. + // StateLevels: define the lower and upper state levels as two element real vector. + // fig: specify the logical input value to display figure as one of 'on' or 'off', where the default input in 'off'. + // w: returns a vector of difference between the mid-crossings of the initial and final transitions of each positive-polarity pulse found in the input signal. + // initialcross: returns a vector of initial cross values of bilevel waveform transitions X. + // finalcross: returns a vector of final cross values of bilevel waveform transitions X. + // midreference: return mid reference value corrosponding to mid percenr reference value. + + // Examples + // x=[1.2, 5, 10, -20, 12] + //t=1:length(x) + //w=pulsewidth(x, t) + // See also + // Authors + // Jitendra Singh + + + // run statelevels and midcross function before running risetime function. + + if or(type(x)==10) then + error ('Input arguments must be double.') +end + + + if length(varargin)==0 then + varargin=varargin; + end + + sindex=[]; +if length(varargin)>=1 then +a=1; +for i=1:length(varargin) + if type(varargin(i))==10 then + sindex(a)=i; + a=a+1; + end +end +end + + +pol='POSITIVE'; +polidx=[]; +fig='OFF' +index_on=[]; +if (~isempty(sindex)) then + for j=1:length(sindex) + select convstr(varargin(sindex(j)), 'u') // validating input variable names + case {'STATELEVELS'} + + if length(varargin) <=sindex(j) then + error(strcat(['parameter StateLevels required a value'])); + end + + if type(varargin(sindex(j)+1))==1 then + levels=varargin(sindex(j)+1); + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='MIDPERCENTREFERENCELEVEL' | convstr(varargin(sindex(j)+1),'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='FIG' | convstr(varargin(sindex(j)+1), 'u')=='POLARITY' then + + error('parameter StateLevels required a value.') + + + elseif type(varargin(sindex(j)+1))==10 then + + error('Expected STATELEVELS to be one of these types: double, Instead its type was char.') + end + + + case {'MIDPERCENTREFERENCELEVEL'} + + if length(varargin) <=sindex(j) then + error(strcat(['parameter MidPercentRefernceLevel required a value.'])); + end + + if type(varargin(sindex(j)+1))==1 then + midpercentval= varargin(sindex(j)+1); + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='STATELEVELS' | convstr(varargin(sindex(j)+1),'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='FIG' | convstr(varargin(sindex(j)+1), 'u')=='POLARITY' then + error('parameter MidPercentRefernceLevel required a value.') + + elseif type(varargin(sindex(j)+1))==10 then + error('Expected MidPercentRefernceLevel to be one of these types: double, Instead its type was char.') + end + + + + case {'TOLERANCE'} + + if length(varargin) <=sindex(j) then + error(strcat(['parameter Tolerance required a value"])); + + elseif type(varargin(sindex(j)+1))==1 then + tolerance= varargin(sindex(j)+1); + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')== 'STATELEVELS' | convstr(varargin(sindex(j)+1), 'u')== 'MIDPERCENTREFERENCELEVEL' | convstr(varargin(sindex(j)+1), 'u')=='FIG' | convstr(varargin(sindex(j)+1), 'u')=='POLARITY' then + + error('parameter Tolerance required a value.'); + + elseif type(varargin(sindex(j)+1))==10 then + + error('Expected Tolerance to be one of these types: double, Instead its type was char.'); + end + + + case {'FIG'} + + if length(varargin) <=sindex(j) then + error(strcat(['parameter fig required a value.'])); + end + + if type(varargin(sindex(j)+1))==1 then + error ('Expected fig to match one of these strings: on or off'); + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='STATELEVELS' | convstr(varargin(sindex(j)+1), 'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='MIDPERCENTREFERENCELEVEL' | convstr(varargin(sindex(j)+1), 'u')=='POLARITY' then + error('parameter fig required a value.') + else + fig= convstr(varargin(sindex(j)+1), 'u'); + + end + + + if fig == 'OFF' | fig == 'ON' then + else + error('Expected fig to match one of these strings: on or off'); + end + + + + case{'ON'} + index_on=sindex(j) + if length(varargin) == 1 then + error ('Unexpected input.') + + + elseif type(varargin(sindex(j)-1))==1 then + error ('Unexpected input.'); + elseif convstr(varargin(sindex(j)-1), 'u')~='FIG' then + error('Unexpected input'); + end + + case{'OFF'} + + if length(varargin) == 1 then + error ('Unexpected input.') + + + elseif type(varargin(sindex(j)-1))==1 then + error ('Unexpected input.'); + elseif convstr(varargin(sindex(j)-1), 'u')~='FIG' then + error('Unexpected input'); + end + + + + + case{'POLARITY'} + + if length(varargin)<=sindex(j) then + error ('Parameter polarity requires a value.') + end + + if type( varargin(sindex(j)+1))==1 then + error ('POLARITY must be either ''Positive'' or ''Negative''.') + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')== 'STATELEVELS' | convstr(varargin(sindex(j)+1), 'u')== 'MIDPERCENTREFERENCELEVEL' | convstr(varargin(sindex(j)+1), 'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='FIG' then + + error ('Parameter polarity requires a value.') + + + elseif convstr(varargin(sindex(j)+1), 'u') ~= 'POSITIVE' & convstr(varargin(sindex(j)+1), 'u')~= 'NEGATIVE' then + + error ('POLARITY must be either ''Positive'' or ''Negative''.'); + + else + polidx=sindex(j); + end + + + case {'POSITIVE'} + + if j==1 then + error(strcat(['Unexpected option:', " ", varargin(sindex(j))])); + elseif convstr(varargin(sindex(j)-1), 'u') ~= 'POLARITY' + error(strcat(['Unexpected option:', " ", varargin(sindex(j))])); + else + polinputidx= sindex(j); + + pol= convstr(varargin (sindex(j)), 'u') ; + end + + case {'NEGATIVE'} + + if j==1 then + error(strcat(['Unexpected option:', " ", varargin(sindex(j))])); + elseif convstr(varargin(sindex(j)-1), 'u') ~= 'POLARITY' + error(strcat(['Unexpected option:', " ", varargin(sindex(j))])); + else + polinputidx= sindex(j); + + pol= convstr(varargin (sindex(j)), 'u') ; + end + + else + error(strcat(['Invalid optional argument'," ", varargin(sindex(j))])); + end // switch + end // for + end // if +// + +if length(index_on)>0 then + varargin(index_on)='OFF'; +end + + +if length(polidx)>0 then + varargin(polidx)=null(); + varargin(polinputidx-1)=null(); +end + + + [crossval midref levels t tolerance]= midcross(x, varargin(:)); + + upperbound= levels(2)- (tolerance/100)*(levels(2)-levels(1)); + mostupperbound=levels(2)+ (tolerance/100)*(levels(2)-levels(1)); + lowerbound= levels(1)+ (tolerance/100)*(levels(2)-levels(1)); + mostlowerbound=levels(1)- (tolerance/100)*(levels(2)-levels(1)); + + int_pos=[]; + final_pos=[]; + int_neg=[]; + final_neg=[]; + + +if length(crossval)>=2 then + +if x(1)>midref then + + int_pos=crossval(2:2:$); + final_pos=crossval(3:2:$); + int_neg=crossval(1:2:$); + final_neg=crossval(2:2:$); + +else + + int_pos=crossval(1:2:$); + final_pos=crossval(2:2:$); + int_neg=crossval(2:2:$); + final_neg=crossval(3:2:$); + +end + +if length(int_pos)>length(final_pos) then + int_pos=int_pos(1:($-1)) +elseif length(int_neg)>length(final_neg) then + int_neg=int_neg(1:($-1)) + end + + +end + + ////////////////////////////////////////////////////////////////////////////////////////// + +w=[]; + + if pol=='POSITIVE' then + w=final_pos-int_pos; + initialcross=int_pos; + finalcross=final_pos; + else + w=final_neg-int_neg; + initialcross=int_neg; + finalcross=final_neg; + + end + +midreference=midref; // return midreference value + + if fig=='ON' then // if the defined output is only 1, the it will provide the graphical representation of //levels + + + if length(w)==0 then + + plot(t,x, 'LineWidth',1, 'color', 'black') + // xtitle('', 'Time (second)','Level (Volts)' ); + plot(t,midreference * ones(1, length(t)),'-r', 'LineWidth',0.5) + + plot(t,mostupperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + plot(t,levels(2) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,upperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + plot(t,lowerbound *ones(1, length(t)),'--g', 'LineWidth',0.5) + + plot(t,levels(1) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,mostlowerbound * ones(1, length(t)),'--g', 'LineWidth',0.5) + + xlabel("Time (second)", "fontsize",3, "color", "black" ) + ylabel("Level (Volts)", "fontsize",3, "color", "black" ) + + + legends(["Signal"; "upper boundary"; "upper state"; "lower boundary"; "mid reference"; "upper boundary"; "lower state"; "lower boundary"], [[1;1], [5;2], [1;2], [5;2], [5;1], [3;2], [1;2], [3;2]], opt='?') + + + else + + plot(t,x, 'LineWidth',1, 'color', 'black') + + plot(t,midreference * ones(1, length(t)),'-g', 'LineWidth',0.5) + + rects=[initialcross; levels(2)*ones(w); w; (levels(2)-levels(1))*ones(w)] + + col=-10*ones(w); + + midc=[initialcross, finalcross]; + midcross=gsort(midc, 'c','i' ) + + plot(midcross, midreference*ones(midcross), "r*", 'MarkerSize',15); + plot(t,mostupperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + plot(t,levels(2) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,upperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + plot(t,midreference * ones(1, length(t)),'-r', 'LineWidth',0.5) + + plot(t,lowerbound *ones(1, length(t)),'--g', 'LineWidth',0.5) + + plot(t,levels(1) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,mostlowerbound * ones(1, length(t)),'--g', 'LineWidth',0.5) + + xrects(rects, col); + + xlabel("Time (second)", "fontsize",3, "color", "black" ) + ylabel("Level (Volts)", "fontsize",3, "color", "black" ) + + + legends(["pulsewidth"; "Signal"; "mid cross"; "upper boundary"; "upper state"; "lower boundary"; "mid reference"; "upper boundary"; "lower state"; "lower boundary"], [[-11; 2] , [1;1], [-10;3], [5;2], [1;2], [5;2], [5;1], [3;2],[1;2], [3;2]], opt='?') + + end + end +// +// +endfunction diff --git a/macros/pulstran.bin b/macros/pulstran.bin Binary files differnew file mode 100644 index 0000000..0bfe42a --- /dev/null +++ b/macros/pulstran.bin diff --git a/macros/pulstran.sci b/macros/pulstran.sci new file mode 100644 index 0000000..5aaea5c --- /dev/null +++ b/macros/pulstran.sci @@ -0,0 +1,41 @@ +function y = pulstran(t, d, p, varargin) +//This function generates the signal y = sum(func(t+d,...)) for each d. +//Calling Sequence +//y = pulstran (t, d, func, ...) +//y = pulstran (t, d, p) +//y = pulstran (t, d, p, fs) +//y = pulstran (t, d, p, Ffs, meth) +//Parameters +//t: +//d: vector or matrix +//p: +//fs: default value 1Hz +//func: function which accepts vector (of times) +//Description +//This is an Octave function. +//This function generates the signal y = sum(func(t+d,...)) for each d. If d is a matrix of two columns, the first column is the delay d and the second column is the amplitude a, and y = sum(a*func(t+d)) for each d, a. Here, func is a function which accepts a vector of times. +//If a pulse shape sampled at frequency Fs (default 1 Hz) is supplied instead of a function name, an interpolated version of the pulse is added at each delay d. +//Examples +//pulstran([0.5,9,8,7],[4,6],[-7,0.5]) +//ans = +// 0. 0. 0. 0.5 +funcprot(0); + +rhs=argn(2) + +if (rhs<3 | rhs>5) + error("Wrong input arguments.") +end + select(rhs) + case 1 then + y = callOctave("pulstran",t) + case 2 then + y = callOctave("pulstran",t,d) + case 3 then + y = callOctave("pulstran",t, d, p) + case 4 then + y = callOctave("pulstran",t, d, p, varargin(1)) + case 5 then + y = callOctave("pulstran",t, d, p, varargin(1),varargin(2)) + end +endfunction diff --git a/macros/rc2ac.bin b/macros/rc2ac.bin Binary files differnew file mode 100644 index 0000000..b50257c --- /dev/null +++ b/macros/rc2ac.bin diff --git a/macros/rc2ac.sci b/macros/rc2ac.sci new file mode 100644 index 0000000..7d59af5 --- /dev/null +++ b/macros/rc2ac.sci @@ -0,0 +1,44 @@ +function R=rc2ac(k, R0) + +//rlevinson function convert reflection coefficients to autocorrelation sequence. +// Calling Sequence +// a = rc2ac(k, R0) + +// Parameters +// k: input argument reflection coefficients. +// R0: input argument zero lag autocorrelation +// R: return autocorrelation sequence. + +// Examples +//X = [7 6 5 8 3 6] +// R = rc2ac(X, 0.3) + +// See also +// +// Author +// Jitendra Singh +// + + // load rc2poly and rlevinson before running this function + + if or(type(k)==10) then + error ('Input arguments must be double.') +end + + if (size(k,1) > 1) & (size(k,2) > 1) + error ('The reflection coefficients must be stored in a vector.') +end + + + if argn(2)<2 then // checking of number of input arguments, if argn(2)<2 execute error. + error ('Not enough input argument, define zero lag autocorrelation, R0.') + end + if or(k(2:$)==1) then + error('Algorithm failed for this case. At least one of the reflection coefficients is equal to one.') + end + + [a, efinal]=rc2poly (k, R0); + R=rlevinson(a, efinal) + + +endfunction diff --git a/macros/rc2is.bin b/macros/rc2is.bin Binary files differnew file mode 100644 index 0000000..eda8763 --- /dev/null +++ b/macros/rc2is.bin diff --git a/macros/rc2is.sci b/macros/rc2is.sci new file mode 100644 index 0000000..a41a79e --- /dev/null +++ b/macros/rc2is.sci @@ -0,0 +1,48 @@ +function isin = rc2is(k) +// Convert reflection coefficients to inverse sine parameters +// +// Calling Sequence +// isin = rc2is(K) +// +// Parameters +// k: input reflection coefficients. Needs to be an array of real numbers between -1 and 1 +// isin: inverse sine parameters corresponding to the reflection coefficients in input +// +// Description +// This function returns the inverse sine parameters corresponding to the input reflection coefficients K. +// output array has isin(i) = 2/pi*asin(k(i)) +// +// Example +// k = [0.3090 0.9801 0.0031 0.0082 -0.0082]; +// isin = rc2is(k) //Gives inverse sine parameters +// +// See also +// is2rc +// rc2poly +// rc2ac +// rc2lar +// +// Authors +// Parthe Pandit +// +// Bibliography +// J.R. Deller, J.G. Proakis, J.H.L. Hansen, "Discrete-Time Processing of Speech Signals", Prentice Hall, Section 7.4.5 +//modified function to handle char i/p and also changed error statements to match those of MATLAB by Debdeep Dey +//convert char i/p to their respective ascii values +if(type(k)==10) then + w=k; + k=ascii(k); + k=matrix(k,size(w)); +end +// errchk1 +if (~isreal(k)), + error('Inverse sine parameters not defined for complex reflection coefficients.'); +end + +if max(abs(k)) >= 1, + error('All reflection coefficients should have magnitude less than unity.'); +end + +isin = (2/%pi)*asin(k); + +endfunction diff --git a/macros/rc2lar.bin b/macros/rc2lar.bin Binary files differnew file mode 100644 index 0000000..c8e33b7 --- /dev/null +++ b/macros/rc2lar.bin diff --git a/macros/rc2lar.sci b/macros/rc2lar.sci new file mode 100644 index 0000000..015b42c --- /dev/null +++ b/macros/rc2lar.sci @@ -0,0 +1,33 @@ +function g=rc2lar(k) + +//rc2lar convert reflection coefficient to log area ratios. + +// Calling Sequence +// g = rc2lar(k) +// Parameters +// k: define the reflection coefficients. +// g: returns log area ratios. +// Examples +//X = [0.5 0.3 0.8 0.9 0.4 0.05]; +// g = rc2lar(X) +// See also +// +// Author +// Jitendra Singh +// + + if or(type(k)==10) then + error ('All reflection coefficients should have magnitude less than unity. ') +end + + + + if ~isreal(k) then + error('Log area ratios not defined for complex reflection coefficients.') + end + + if max(abs(k)) >= 1 then + error ('All reflection coefficients should have magnitude less than unity.') +end +g=-2*atanh(-k); +endfunction diff --git a/macros/rc2poly.bin b/macros/rc2poly.bin Binary files differnew file mode 100644 index 0000000..187d0cd --- /dev/null +++ b/macros/rc2poly.bin diff --git a/macros/rc2poly.sci b/macros/rc2poly.sci new file mode 100644 index 0000000..19eed2a --- /dev/null +++ b/macros/rc2poly.sci @@ -0,0 +1,56 @@ +function [a, efinal] = rc2poly(kr, R0) + +//rc2poly function convert reflection coefficients to prediction polynomial. +// Calling Sequence +// a = rc2poly(kr) +// [a, efinal] = rc2poly(kr,R0) + +// Parameters +// kr: Refelection coefficient. +// R0: the zero lag autocorrelation, R0. +// a: Return the prediction polynomial. +// efinal: Return the final prediction error. + +// Examples +//X = [7 6 5 8 3 6] +// [a, efinal] = rc2poly(X) +// +// See also +// +// Author +// Jitendra Singh +// + if or(type(kr)==10) then + error ('Input arguments must be double.') +end + +if (size(kr,1) > 1) & (size(kr,2) > 1) + error ('The reflection coefficients must be stored in a vector.') +end + +kr=kr(:); + +if argn(2)<2 & argn(1)==2 then + error ('Zero lag autocorrelation, R0, not specified.') +end + + +if argn(2)<2 then + e=0; +else + e=R0; +end + +ee(1) = e.*(1-kr(1)'.*kr(1)); +a=kr(1); + + +for i=2:length(kr) + a = [a + a(i-1:-1:1)*kr(i) kr(i)] + ee=ee.*(1-kr(i)'.*kr(i)); +end + +a=[1 a]; +efinal=ee; + +endfunction diff --git a/macros/rcosdesign.bin b/macros/rcosdesign.bin Binary files differnew file mode 100644 index 0000000..652e766 --- /dev/null +++ b/macros/rcosdesign.bin diff --git a/macros/rcosdesign.sci b/macros/rcosdesign.sci new file mode 100644 index 0000000..b3218c1 --- /dev/null +++ b/macros/rcosdesign.sci @@ -0,0 +1,189 @@ +function h = rcosdesign(rollof_factor, num_of_symb, samp_per_symb, varargin) +// RCOSDESIGN computes the raised cosine FIR filter +// Inputs: +// rollof_fact: roll-off factor of the designed filter +// num_of_symb: filter truncated to these many number of symbols +// samp_per_symb: each symbol represented by these many samples +// shape: returns a normal raised-cosine FIR filter when set to 'normal'. +// returns a square-root raised cosing filter when set to 'sqrt'. +// Output: +// h: returned filter coefficients +//The output result for the input parameter of shape 'normal' is not equivalent to the matlab output because of the use of sinc function in the computation. Matlab and scilab sinc functions seem to not be equivalent. + + + // Check validity of number of inout arguments + checkNArgin(3, 4, argn(2)); + + // Check validity of input arguments + valid_class_ROF = ['single', 'double']; + properties_ROF = ['scalar', 'real', 'nonNegative']; + checkIpValidity(rollof_factor, valid_class_ROF, properties_ROF); + if rollof_factor > 1 then + error('roll-off factor should be <= 1'); + end + + if rollof_factor == 0 then + rollof_factor = number_peroperties("tiny"); + end + + valid_class_NOS = ['single', 'double']; + properties_NOS = ['scalar', 'real', 'positive', 'finite']; + checkIpValidity(num_of_symb, valid_class_NOS, properties_NOS); + + valid_class_SPS = ['single', 'double']; + properties_SPS = ['scalar', 'real', 'positive', 'finite', 'integer']; + checkIpValidity(samp_per_symb, valid_class_SPS, properties_SPS); + + if pmodulo((num_of_symb*samp_per_symb), 2) ~= 0 then + error('product of number_of_symbols and samples_per_symbol should be even'); + end + + + if argn(2) > 3 then + shape = varargin(1); + else + shape = 'sqrt'; + end + + valid_string_shape = ['sqrt', 'normal']; + checkStringValidity(shape, valid_string_shape); + + // Designing the raised cosine filter + + pr = (samp_per_symb*num_of_symb)/2; + ax = (-pr:pr)/samp_per_symb; + + if ~strcmpi(shape, 'normal') then + den = (1-(2*rollof_factor*ax).^2); + id1 = find(abs(den) > sqrt(%eps)); + for idx = 1:length(id1) + filt_resp(id1(idx)) = sinc(ax(id1(idx))).*(cos(%pi*rollof_factor*ax(id1(idx)))./den(id1(idx)))/samp_per_symb; + end + + id2 = 1:length(ax); + id2(id1) = []; + for idx = 1:length(id2) + filt_resp(id2(idx)) = rollof_factor*sin(%pi/(2*rollof_factor))/(samp_per_symb); + end + + + else + id1 = find(ax == 0); + if ~isempty(id1) then + filt_resp(id1) = (-1)./(%pi.*samp_per_symb).*(%pi.*(rollof_factor-1) - 4.*rollof_factor); + end + + id2 = find(abs(abs(4.*rollof_factor.*ax) - 1.0) < sqrt(%eps)); + if ~isempty(id2) then + filt_resp(id2) = 1 ./ (2.*%pi.*samp_per_symb) * (%pi.*(rollof_factor+1) .* sin(%pi.*(rollof_factor+1)./(4.*rollof_factor)) - 4.*rollof_factor .* sin(%pi.*(rollof_factor-1)./(4.*rollof_factor)) + %pi.*(rollof_factor-1) .* cos(%pi.*(rollof_factor-1)./(4.*rollof_factor)) ); + end + + id = 1:length(ax); + id([id1 id2]) = []; + nid = ax(id); + a = (-4.*rollof_factor./samp_per_symb); + b = ( cos((1+rollof_factor).*%pi.*nid) + sin((1-rollof_factor).*%pi.*nid) ./ (4.*rollof_factor.*nid) ); + c = (%pi .* ((4.*rollof_factor.*nid).^2 - 1)); + + for idx = 1:length(id) + filt_resp(id(idx)) = a*b(idx)/c(idx); + idx + end + + + end + + filt_resp = filt_resp / sqrt(sum(filt_resp.^2)); + + h = filt_resp'; + +endfunction + +function checkNArgin(min_argin, max_argin, num_of_argin) + if num_of_argin < min_argin then + error('Not enough input arguments') + end + + if num_of_argin > max_argin then + error('Too many input arguments') + end +endfunction + + +function checkIpValidity(variable, valid_class, properties) +// Function to check the validity of the input variable +// Inputs: +// valid_class: vector of valid classes for the input variable +// properties: vector of necessary properties of the input variable + + for idx = 1:length(length(valid_class)) + if ~strcmpi(valid_class(idx), 'double') | ~strcmpi(valid_class(idx), 'single') then + if type(variable) ~= 1 then + error('input variable should be of type double '); + end + end + + end + + for jdx = 1:length(length(properties)) + if ~strcmpi(properties(jdx), 'scalar') then + if length(variable) > 1 then + error('Input variable should be of type scalar'); + end + end + + if ~strcmpi(properties(jdx), 'nonempty') then + if isempty(variable) then + error('Input variable is empty. It is invalid'); + end + end + + if ~strcmpi(properties(jdx), 'nonNan') then + if isnan(variable) then + error('Input variable is not a number (Nan). It is invalid'); + end + end + + if ~strcmpi(properties(jdx), 'real') then + if ~isreal(variable) then + error('Input should be real'); + end + end + + if ~strcmpi(properties(jdx), 'positive') then + if variable <= 0 then + error('Input should be positive'); + end + end + + if ~strcmpi(properties(jdx), 'integer') then + if (int(variable)-variable) ~= 0 then + error('Input should be an integer'); + end + end + + if ~strcmpi(properties(jdx), 'nonNegative') then + if variable < 0 then + error('Input should be non-negative'); + end + end + + if ~strcmpi(properties(jdx), 'finite') then + if ~(abs(variable) < %inf) then + error('Input should be finite'); + end + end + + end + +endfunction + + +function checkStringValidity(variable, valid_strings) + if ~strcmpi(valid_strings(1), variable) | ~strcmpi(valid_strings(2), variable) then + + else + error('Input string is not recognized') + end + +endfunction diff --git a/macros/rectpuls.bin b/macros/rectpuls.bin Binary files differnew file mode 100644 index 0000000..a61a830 --- /dev/null +++ b/macros/rectpuls.bin diff --git a/macros/rectpuls.sci b/macros/rectpuls.sci new file mode 100644 index 0000000..2796ef0 --- /dev/null +++ b/macros/rectpuls.sci @@ -0,0 +1,28 @@ +function [y]=rectpuls(t,w) + +// Generates a Rectangular pulse based on the width and sampling times. +// Calling Sequence +// [y]=rectpuls(t) +// [y]=rectpuls(t,w) +// Parameters +// t: Real or complex valued vector or matrix +// w: Real or complex valued vector or matrix +// Description +// This is an Octave function +// y = rectpuls(t) returns a continuous, aperiodic, unity-height rectangular pulse depending upon input t, centered about t=0 and having default width of 1. +// y = rectpuls(t,w) generates a rectangle of width w. +// Examples +// 1. rectpuls([10 100 1000 13 839],27) +// ans = 1 0 0 1 0 +// 2. rectpuls([1000 1000 100 100]) +// ans = 0 0 0 0 + +funcprot(0); +rhs=argn(2); +if (rhs<1) then + error ("Wrong number of input arguments.") +elseif (rhs==1) + y=callOctave("rectpuls",t) +else y=callOctave("rectpuls",t,w) +end +endfunction diff --git a/macros/rectwin.bin b/macros/rectwin.bin Binary files differnew file mode 100644 index 0000000..88d68f5 --- /dev/null +++ b/macros/rectwin.bin diff --git a/macros/rectwin.sci b/macros/rectwin.sci new file mode 100644 index 0000000..c296d42 --- /dev/null +++ b/macros/rectwin.sci @@ -0,0 +1,25 @@ +function [y] = rectwin (m) +//This function returns the filter coefficients of a rectangular window. +//Calling Sequence +//y = rectwin (m) +//Parameters +//m: positive integer value +//y: output variable, vector of real numbers +//Description +//This is an Octave function. +//This function returns the filter coefficients of a rectangular window of length m supplied as input, to the output vector y. +//Examples +//rectwin(3) +//ans = +// 1. +// 1. +// 1. +rhs = argn(2) + +if(rhs~=1) +error("Wrong number of input arguments.") +end + +y = callOctave("rectwin",m) + +endfunction diff --git a/macros/resample.bin b/macros/resample.bin Binary files differnew file mode 100644 index 0000000..d70f8df --- /dev/null +++ b/macros/resample.bin diff --git a/macros/resample.sci b/macros/resample.sci new file mode 100644 index 0000000..3e0e878 --- /dev/null +++ b/macros/resample.sci @@ -0,0 +1,44 @@ +function [y, h] = resample( x, p, q, h ) +//This function resamples in the input sequence x supplied by a factor of p/q. +//Calling Sequence +//y = resample(x, p, q) +//y = resample(x, p, q, h) +//[y, h] = resample(...) +//Parameters +//x: scalar, vector or matrix of real or complex numbers +//p: positive integer value +//q: positive integer value +//h: scalar, vector or matrix of real or complex numbers +//Description +//This is an Octave function. +//This function resamples in the input sequence x supplied by a factor of p/q. If x is a matrix, then every column is resampled.hange the sample rate of x by a factor of p/q. +//This is performed using a polyphase algorithm. The impulse response h, given as parameter 4, of the antialiasing filter is either specified or designed with a Kaiser-windowed sinecard. +//Examples +//resample(1,2,3) +//ans = 0.66667 + +funcprot(0); +rhs = argn(2) +lhs = argn(1) +if(rhs<3 | rhs>4) +error("Wrong number of input arguments.") +end + + select(rhs) + case 3 then + if(lhs==1) + y = callOctave("resample",x,p,q) + elseif(lhs==2) + [y,h] = callOctave("resample",x,p,q) + end + case 4 then + if(lhs==1) + y = callOctave("resample",x,p,q,h) + elseif(lhs==2) + [y,h] = callOctave("resample",x,p,q,h) + end + end +endfunction + + + diff --git a/macros/residued.bin b/macros/residued.bin Binary files differnew file mode 100644 index 0000000..222dc28 --- /dev/null +++ b/macros/residued.bin diff --git a/macros/residued.sci b/macros/residued.sci new file mode 100644 index 0000000..182b9ca --- /dev/null +++ b/macros/residued.sci @@ -0,0 +1,25 @@ +function [r,p,f,m]=residued(b,a) + +// Finds the partial fraction expansion of filter H(z)= B(z)/A(z). +// Calling Sequence +// [r,p,f,m]=residued(b,a) +// Parameters +// b: Real or complex valued vector or matrix +// a: Real or complex valued vector or matrix +// Description +// This is an Octave function. +// Similar to the "residuez" function. The difference being in the function "residuez", the IIR part (poles p and residues r) is driven in parallel with the FIR part(f) whereas in the function "residued", the IIR part is driven by the output of the FIR part. In signal modeling applications, this structure can be more accurate. +// Examples +// 1. [a,b,c,d]=residued([1 i;3 -4],[1 2; 3 4]) +// a = [ 0.19405 - 1.31377i; 0.08329 + 0.99163i; -0.27734 + 0.32215i] +// b = [ -0.10184 - 1.19167i; -0.10184 + 1.19167i; -2.79632 - 0.00000i] +// c = 1 +// d = [ 1 ; 1 ; 1] + +funcprot(0); +rhs=argn(2); +if (rhs<2) then + error ("Wrong number of input arguments.") +else [r,p,f,m]=callOctave("residued",b,a) +end +endfunction diff --git a/macros/residuez.bin b/macros/residuez.bin Binary files differnew file mode 100644 index 0000000..5a04712 --- /dev/null +++ b/macros/residuez.bin diff --git a/macros/residuez.sci b/macros/residuez.sci new file mode 100644 index 0000000..ee67a21 --- /dev/null +++ b/macros/residuez.sci @@ -0,0 +1,25 @@ +function [r,p,f,m]=residuez(b,a) + +// Compute the partial fraction expansion(PFE) of filter H(z) = B(z)/A(z). +// Calling Sequence +// [r,p,f,m]=residuez(b,a) +// Parameters +// b: Real or complex valued vector or matrix +// a: Real or complex valued vector or matrix +// Description +// This is an Octave function +// It compute the PFE of filter H(z)= B(z)/A(z) where inputs b and a are vectors specifying the digital filter. +// Examples +// 1. [a,b,c,d]=residuez([i 2i 3i; -4 1 4i],[1 2 3]) +// a = [0.6262 - 1.4412i; -0.4039 + 1.4658i] +// b = [-1.0000 - 1.4142i; -1.0000 + 1.4142i] +// c = [-0.22222 - 0.97531i 0.33333 + 0.51852i 0.00000 - 0.11111i; 0.00000 - 1.33333i] +// d = 1 + +funcprot(0); +rhs=argn(2); +if (rhs<2) then + error ("Wrong number of input arguments.") +else [r,p,f,m]=callOctave("residuez",b,a) +end +endfunction diff --git a/macros/risetime.bin b/macros/risetime.bin Binary files differnew file mode 100644 index 0000000..d8af143 --- /dev/null +++ b/macros/risetime.bin diff --git a/macros/risetime.sci b/macros/risetime.sci new file mode 100644 index 0000000..e39396f --- /dev/null +++ b/macros/risetime.sci @@ -0,0 +1,375 @@ +function [r, lowercrossvalue, uppercrossvalue, lowerreference, upperreference]=risetime(x, varargin) + + + // This function estimate risetime values of real vector X. + // Calling Sequence + // r=risetime(x) + // r=risetime(x, Fs) + // r=risetime(x, t) + // r=risetime(x, t, 'PercentReferenceLevels', N ) + // r=risetime(x, t, 'Tolerance', M) + // r=risetime(x, t,'StateLevels', O) + // [r lowercrossvalue uppercrossvalue lowerreference upperreference]=risetime(x) + // [r lowercrossvalue uppercrossvalue lowerreference upperreference]=risetime(x, Fs) + // [r lowercrossvalue uppercrossvalue lowerreference upperreference]=risetime(x, t) + // [r lowercrossvalue uppercrossvalue lowerreference upperreference]=risetime(x, t, 'PercentReferenceLevels', N ) + // [r lowercrossvalue uppercrossvalue lowerreference upperreference]= risetime(x, t, 'Tolerance', M) + // [r lowercrossvalue uppercrossvalue lowerreference upperreference]= risetime(x, t,'StateLevels', O) + // // [r lowercrossvalue uppercrossvalue lowerreference upperreference]= risetime(x, t,'StateLevels', O, 'fig', on or off) + // + // Parameters + // x: real vector. + // Fs: specifies the sample rate, Fs, as a positive scalar, where the first sample instant corresponds to a time of zero. + // t: defiene instant sample time t as vector with same length of x, or specifies the sample rate, t, as a positive scalar. + // PercentReferenceLevels: specify the percentreferenceleves as a percentage, default value of N is [10 90]. + // Tolerance: define the tolerance value as real scaler value, where default value of M is 2.0. + // StateLevels: define the lower and upper state levels as two element real vector. + // fig: specify the logical input value to display figure as one of 'on' or 'off', where the default input in 'off'. + // r: return rise time of positive-going bilevel waveform transitions X. + // lowercrossvalue: return the lowerc cross value. + // uppercrossvalue: return the upper cross value. + // lowerreference: return lower reference value corrosponding to lower percenr reference value. + // upperreference: return lower reference value corrosponding to upper percenr reference value. + + // Examples + // x=[1.2, 5, 10, -20, 12] + //t=1:length(x) + //r=risetime(x, t) + // See also + // Authors + // Jitendra Singh + + + + // run statelevels and midcross function before running risetime function. + + if or(type(x)==10) then + error ('Input arguments must be double.') +end + + if length(varargin)==0 then // if the no of input is 0, then specify the default values to input parameter. + [levels hist]=statelevels(x); + Lvarargin=list(1:length(x), 'StateLevels', levels(1), 'MidPercentReferenceLevel', 10, 'Tolerance', 2, 'fig', 'off') + Uvarargin=list(1:length(x), 'StateLevels', levels(2), 'MidPercentReferenceLevel', 90, 'Tolerance', 2, 'fig', 'off') + end + +if length(varargin)>=1 & type(varargin(1))==1 then + if length(varargin(1))==1 then + t=(0:(length(x)-1)); + + elseif length(varargin(1))==length(x) then + t=varargin(1); + + else + error('T must be a same length as X.') + end +else + t=1:length(x); +end + + +if length(varargin)>=2 & type(varargin(1))==1 & type(varargin(2))==1 then + error ("Too many leading numeric arguments (at most 2 expected)."); +end + + + + +sindex=[]; +if length(varargin)>=1 then +a=1; + +for i=1:length(varargin) + if type(varargin(i))==10 then + sindex(a)=i; + a=a+1; + end +end +end + + +if length(sindex)>5 then + error('Unexpected argument.') +end + +if length(varargin)==1 & (isempty(sindex)) then + + [levels hist]=statelevels(x); + Lvarargin=list(t, 'StateLevels', levels(1), 'MidPercentReferenceLevel', 10, 'Tolerance', 2, 'fig', 'off') + Uvarargin=list(t, 'StateLevels', levels(2), 'MidPercentReferenceLevel', 90, 'Tolerance', 2, 'fig', 'off') + +end + +fig='OFF'; +////////////////////////////////// + +if (~isempty(sindex)) then + for j=1:length(sindex) + + select convstr(varargin(sindex(j)),'u') + + case {'STATELEVELS'} + ////// + if length(varargin) <=sindex(j) then + error(strcat(['parameter StateLevels required a value'])); + end + + if type(varargin(sindex(j)+1))==1 then + levels=varargin(sindex(j)+1); + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='PERCENTREFERENCELEVELS' | convstr(varargin(sindex(j)+1),'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='FIG' then + + error('parameter StateLevels required a value.') + + + elseif type(varargin(sindex(j)+1))==10 then + + error('Expected STATELEVELS to be one of these types: double, Instead its type was char.') + end + + + case {'PERCENTREFERENCELEVELS'} + if length(varargin) <=sindex(j) then + error(strcat(['parameter MidPercentRefernceLevel required a value.'])); + end + + if type(varargin(sindex(j)+1))==1 then + midpercentval= varargin(sindex(j)+1); + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='STATELEVELS' | convstr(varargin(sindex(j)+1),'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='FIG' then + error('parameter MidPercentRefernceLevel required a value.') + + elseif type(varargin(sindex(j)+1))==10 then + error('Expected MidPercentRefernceLevel to be one of these types: double, Instead its type was char.') + end + + if length( midpercentval)~=2 then + error ('Expected MidPercentRefernceLevel to be of size 1x2') + end + ///////////////////////////////// + + perval=varargin(sindex(j)+1); + disp(perval) + if perval(2)<= perval(1) then + error('The PercentReferenceLevels must be in increasing order.') + end + + varargin(sindex(j))='MidPercentReferenceLevel'; + varargin(sindex(j)+1)=perval(1); + Lvarargin= varargin; + + varargin(sindex(j)+1)=perval(2); + Uvarargin=varargin; + + + case {'FIG'} + + if length(varargin) <=sindex(j) then + error(strcat(['parameter fig required a value.'])); + end + + if type(varargin(sindex(j)+1))==1 then + error ('Expected fig to match one of these strings: on or off'); + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='STATELEVELS' | convstr(varargin(sindex(j)+1), 'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='PERCENTREFERENCELEVELS' then + error('parameter fig required a value.') + else + fig= convstr(varargin(sindex(j)+1), 'u'); + + end + + + if fig == 'OFF' | fig == 'ON' then + else + error('Expected fig to match one of these strings: on or off'); + end + + + + case{'ON'} + + + + case{'OFF'} + + case {'TOLERANCE'} + //disp('jitend') + if length(varargin) <=sindex(j) then + error(strcat(['parameter Tolerance required a value"])); + + elseif type(varargin(sindex(j)+1))==1 then + tolerance= varargin(sindex(j)+1); + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')== 'STATELEVELS' | convstr(varargin(sindex(j)+1), 'u')== 'PERCENTREFERENCELEVELS' | convstr(varargin(sindex(j)+1), 'u')=='FIG' then + + error('parameter Tolerance required a value.'); + elseif type(varargin(sindex(j)+1))==10 then + + error('Expected Tolerance to be one of these types: double, Instead its type was char.'); + end + + + + else + error(strcat(['Invalid optional argument'," ", varargin(sindex(j))])); + end // switch + end // for + end // if + + + indexx=[]; +if length(sindex)>=1 then +a=1; +for i=1:length(sindex) + + indexx(a)=find(convstr(varargin(sindex(i)), 'u')=='MIDPERCENTREFERENCELEVEL') + a=a+1; +end +end + + +if sum(indexx)==0 then + + varargin(length(varargin)+1)='MIDPERCENTREFERENCELEVEL'; + varargin(length(varargin)+1)=10; + Lvarargin= varargin; + + varargin(length(varargin))=90; + Uvarargin=varargin; +end + +index_on=[]; + +if length(sindex)>=1 then +a=1; + +for i=1:length(sindex) + + index_on(a)=find(convstr(varargin(sindex(i)), 'u')=='ON') + + a=a+1; + +end +end + +if sum(index_on)>0 then + Lvarargin(sindex(find(index_on>0)))='OFF'; + Uvarargin(sindex(find(index_on>0)))='OFF'; +end + + + + + [lcrossval lref levels t tolerance]= midcross(x, Lvarargin(:)); // calling midcross function to get lower cross values + + [ucrossval uref]=midcross(x, Uvarargin(:)); // calling midcross function to get upper cross values + + + if length(lcrossval)==length(ucrossval) then + dff=ucrossval-lcrossval + r=dff(dff>0) + elseif length(lcrossval)>length(ucrossval) + n=length(ucrossval); + dff=ucrossval-lcrossval(1:n); + r=dff(dff>0) + else + n=length(lcrossval); + dff=ucrossval(1:n)-lcrossval; + r=dff(dff>0) + + end + + difference=ucrossval-lcrossval; + Pindex=find(difference>0); + + + + uppercrossvalue=ucrossval(Pindex); + lowercrossvalue=lcrossval(Pindex); + + lowerreference=lref; + upperreference=uref; + + + upperbound= levels(2)- (tolerance/100)*(levels(2)-levels(1)); // estimating bounds + mostupperbound=levels(2)+ (tolerance/100)*(levels(2)-levels(1)); + lowerbound= levels(1)+ (tolerance/100)*(levels(2)-levels(1)); + mostlowerbound=levels(1)- (tolerance/100)*(levels(2)-levels(1)); + + + + + + if fig=='ON' then // if the defined output is only 1, the it will provide the graphical representation of //levels + + if length(r)==0 then + + plot(t,x, 'LineWidth',1, 'color', 'black') + + plot(t,upperreference * ones(1, length(t)),'-r', 'LineWidth',0.5) + + plot(t,lowerreference * ones(1, length(t)),'-g', 'LineWidth',0.5) + + + plot(t,mostupperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + plot(t,levels(2) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,upperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + + + plot(t,lowerbound *ones(1, length(t)),'--g', 'LineWidth',0.5) + + plot(t,levels(1) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,mostlowerbound * ones(1, length(t)),'--g', 'LineWidth',0.5) + + xlabel("Time (second)", "fontsize",3, "color", "black" ) + ylabel("Level (Volts)", "fontsize",3, "color", "black" ) + + + legends(["Signal"; "upper boundary"; "upper state"; "lower boundary"; "upper reference"; "lower reference"; "upper boundary"; "lower state"; "lower boundary"], [[1;1], [5;2], [1;2], [5;2], [5;1], [3;1], [3;2], [1;2], [3;2]], opt='?') + + else + + plot(t,x, 'LineWidth',1, 'color', 'black') + + plot(t,upperreference * ones(1, length(t)),'-r', 'LineWidth',0.5) + + plot(t,lowerreference * ones(1, length(t)),'-g', 'LineWidth',0.5) + + rects=[lowercrossvalue; upperreference*ones(lowercrossvalue); r; (upperreference-lowerreference)*ones(r)] + + col=-10*ones(r); + + xrects(rects, col); + + plot(uppercrossvalue, upperreference*ones(uppercrossvalue), "r*", 'MarkerSize',15); + + plot(lowercrossvalue, lowerreference*ones(lowercrossvalue), "g*", 'MarkerSize',15); + + plot(t,mostupperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + plot(t,levels(2) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,upperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + + + plot(t,lowerbound *ones(1, length(t)),'--g', 'LineWidth',0.5) + + plot(t,levels(1) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,mostlowerbound * ones(1, length(t)),'--g', 'LineWidth',0.5) + + xlabel("Time (second)", "fontsize",3, "color", "black" ) + ylabel("Level (Volts)", "fontsize",3, "color", "black" ) + + + legends(["risetime"; "Signal"; "upper cross"; "lower cross"; "upper boundary"; "upper state"; "lower boundary"; "upper reference"; "lower reference"; "upper boundary"; "lower state"; "lower boundary"], [[-11; 2] , [1;1], [-10;5], [-10;3], [5;2], [1;2], [5;2], [5;1], [3;1], [3;2],[1;2], [3;2]], opt='?') + + end + end + + +endfunction diff --git a/macros/rlevinson.bin b/macros/rlevinson.bin Binary files differnew file mode 100644 index 0000000..864f1db --- /dev/null +++ b/macros/rlevinson.bin diff --git a/macros/rlevinson.sci b/macros/rlevinson.sci new file mode 100644 index 0000000..3007234 --- /dev/null +++ b/macros/rlevinson.sci @@ -0,0 +1,127 @@ +function [R, U, kr, e] = rlevinson(a, efinal) + +//rlevinson function computes the autocorrelation coefficients using prediction polynomial. +// Calling Sequence +// a = rlevinson(a, efinal) +// [a, U] = rlevinson(a, efinal) +// [a, U, kr] = rlevinson(a, efinal) +// [a, U, kr, e] = rlevinson(a, efinal) + +// Parameters +// a: input argument prediction polynomial. +// efinal: input argument 'final prediction error'. +// R: returns the autocorrelation coefficients. +// U: return a upper triangular matrox of order (length(a)*length(a)) +// kr: return refelection coefficient. +// e: Return the vector of prediction error. + + +// Examples +//X = [7 6 5 8 3 6] +// R = rlevinson(X, 0.3) +// +// See also +// +// Author +// Jitendra Singh +// + + + if or(type(a)==10) then + error ('Input arguments must be numeric.') +end + + + + if argn(2)<2 then // checking of number of input arguments, if argn(2)<2 execute error. + error ('Not enough input argument, define final prediction error.') + end + + a=a(:); + if a(1)~=1 then + warning('First coefficient of the prediction polynomial was not unity.') + end + + if a(1)==0 then + R=repmat(%nan,[length(a),1]) + xx=length(a); + l=tril(zeros(xx,xx),-1); + d=diag(ones(1,xx)); + u=triu(repmat(%nan,[xx,xx]),1); + U=l+d+u; + U(xx,xx)=%nan; + U(1:xx-1,xx)=(repmat(%inf,[1,xx-1]))' + kr=repmat(%nan,[xx-2,1]); + kr=[kr',%inf] + kr=kr' + else + + + + a=a/a(1); + + n=length(a); + + if n<2 then // execute the error if the length of input vector in less than 2 + error ('Polynomial should have at least two coefficients.') +end + +if type(a)==1 then // checking for argument type + U=zeros(n,n); +end + + U(:,n)=conj(a($:-1:1)); // store prediction coefficient of order p + + n=n-1; + e(n)=efinal; + Kr(n)=a($); // defining the input required for next step i.e. levinson down + + a=a' + for i=n-1:-1:1 // start levinson down + + ee=a($) + + a = (a-Kr(i+1)*flipdim(a,2,1))/(1-Kr(i+1)^2); + + a=a(1:$-1) + + + Kr(i)=a($); + + econj=conj(ee) //conjugate + econj=econj' + e(i) = e(i+1)/(1.-(econj.*ee)); + + + + U(:,i+1)=[conj(a($:-1:1).'); zeros(n-i,1)]; //conjugate + + end // end of levinson down estimation + e=e'; + + if abs(a(2))==1 then + e1=%nan + else + e1=e(1)/(1-abs(a(2)^2)); + end + + + + U(1,1)=1; + kr=conj(U(1,2:$)) + kr=kr'; + + R1=e1; + R(1)=-conj(U(1,2))*R1; //conjugate + + for j=2:n + R(j)=-sum(conj(U(j-1:-1:1,j)).*R($:-1:1))- kr(j)*e(j-1); + R=R(:); + + end + + R=[R1; R]; + end + + +endfunction diff --git a/macros/rms.bin b/macros/rms.bin Binary files differnew file mode 100644 index 0000000..c757115 --- /dev/null +++ b/macros/rms.bin diff --git a/macros/rms.sci b/macros/rms.sci new file mode 100644 index 0000000..39abd44 --- /dev/null +++ b/macros/rms.sci @@ -0,0 +1,36 @@ +//Root mean squared value \ +//Y=rms(X); +//Y=rms(X,dim); +//For vectors, RMS(X) is the root mean squared value in X. For matrices, +// RMS(X) is a row vector containing the RMS value from each column. For +// N-D arrays, RMS(X) operates along the first non-singleton dimension. +// +// Y = RMS(X,DIM) operates along the dimension DIM. +// +// When X is complex, the RMS is computed using the magnitude +// RMS(ABS(X)). +//Author Debdeep Dey + +function y = rms(x, dim) +//convert i/p values to their ascii values if they are of type char +if(type(x)==10) then + xa=x; + x=ascii(x); + x=matrix(x,size(xa)); +end + +if argn(2)==1 + [rm,cm]=size(x); + if(rm>1) then + y = sqrt(mean((x .* conj(x)),'r')); + else + y=sqrt(mean((x.*conj(x)))); + end +else + if(dim==1) + y = sqrt(mean((x .* conj(x)),'r')); + else + y = sqrt(mean((x .* conj(x)),'c')); + end +end +endfunction diff --git a/macros/rooteig.bin b/macros/rooteig.bin Binary files differnew file mode 100644 index 0000000..a07e660 --- /dev/null +++ b/macros/rooteig.bin diff --git a/macros/rooteig.sci b/macros/rooteig.sci new file mode 100644 index 0000000..e4f59c0 --- /dev/null +++ b/macros/rooteig.sci @@ -0,0 +1,350 @@ + +// Date of creation: 20 Jan, 2016 +function [w,pow] = rooteig(x,p,varargin) + // Frequencies and power of sinusoids using eigenvector algorithm + // + // Calling Sequence + // w = rooteig(x,p) + // [w,pow] = rooteig(x,p) + // [f,pow] = rooteig(...,fs) + // [w,pow] = rooteig(...,'corr') + // + // Parameters + // x - int|double - vector|matrix + // Input signal. + // If x is a vector, then it reprsenets one realization of the signal. + // If x is a matrix, then each row represents a separate observation of + // the signal. + // p - int|double - scalar|2 element vector + // p(1) is the signal subspace dimension and hence the number of + // complex exponentials in x. + // p(2), if specified, represents a threshold that is multiplied by + // the smallest estimated eigenvalue of the signal's correlation + // matrix. + // fs - int|double - scalar + // Sampling frequency (in Hz) + // If fs is specified by an empty vector or unspecified, it defaults + // to 1 Hz + // 'corr' flag + // If specified, x is interpreted as a correlation matrix rather than + // a matrix of the signal data. For x to be a correlation matrix, + // x must be a square matrix and all its eigenvalues must be + // nonnegative + // + // Examples: + // 1) 3 complex exponentials: + // + // n=0:99; + // s=exp(1i*pi/2*n)+2*exp(1i*pi/4*n)+exp(1i*pi/3*n)+randn(1,100); + // [W,P] = rooteig(s,3); + // + // Author + // Ayush + // + // See also + // corrmtx | peig | pmusic | rootmusic + // + // References + // 1) Stoica, P. and R. Moses, INTRODUCTION TO SPECTRAL ANALYSIS, + // Prentice-Hall + // + // + // Output arguments + // w - double - vector + // Estimated frequencies of the complex sinusoids + // pow - double - vector + // estimated absolute value squared amplitudes of the sinusoids at + // the frequencies w + // + + funcprot(0); + + exec('musicBase.sci',-1); + exec('nnls.sci',-1); + + + // **** checking the number of input and output arguments **** + + [numOutArgs, numInArgs] = argn(0); + + if numOutArgs~=1 & numOutArgs~=2 then + error(78,"rooteig"); + end + + if numInArgs<1 | numInArgs>4 then + error(77,"rooteig"); + end + + + // **** parsing the input arguments **** + isFsSpecified = %F; + fs = []; + + varargLength = length(varargin); + // searching for the 'corr' flag + isCorrFlag = %F; + + if varargLength==0 then + stringIndices = []; + else + stringIndices = find(type(varargin(1:varargLength))==10); + end + + if ~isempty(stringIndices) then + // ignoring all other strings except the corr flag + isCorrFlag = or(strcmpi(varargin(stringIndices),"corr")==0); + varargin(stringIndices) = []; + end + + // varargin can have only an entry for fs + if length(varargin)==1 then + fs = varargin(1); + if length(fs)==1 then + if ~IsIntOrDouble(fs, %T) then + msg = "rooteig: Wrong type for argument #4 (fs); Positive scalar expected"; + error(msg,10084); + end + fs = double(fs); + isFsSpecified = %T; + elseif length(fs)>1 then + msg = "rooteig: Wrong type for argument #4 (fs); Positive scalar expected"; + error(msg,10084); + end + elseif length(varargin)>1 then + msg = "rooteig: Wrong type for argument #4 (fs); Positive scalar expected"; + error(msg,10084); + end + + // extracting primary input x/R + primaryInput = x; + + if ndims(primaryInput)<1 | ndims(primaryInput)>2 then + msg = "rooteig: Wrong dimension for argument #1; Vector or a matrix expected"; + error(msg,10053); + end + if ~IsIntOrDouble(primaryInput, %F) then + msg = "rooteig: Wrong type for argument #1; Numeric vector or a matrix expected"; + error(msg,10053); + end + // covert to a column vector + if ndims(primaryInput)==1 then + primaryInput = primaryInput(:); + end + // casting to double + primaryInput = double(primaryInput); + + + //****extracting p**** + // p must be either scalar or a 2-element vector + if length(p)~=1 & length(p)~=2 then + msg = "rooteig: Wrong type for argument #2 (p); " + ... + "A scalar or a 2-element vector expected"; + error(msg,10053); + end + // first argument of p must be an integer + if ~IsIntOrDouble(p(1),%T) then + msg = "rooteig: Wrong input argument #2 p(1); " + ... + "positive integer expected"; + error(msg,10036); + return + end + p(1) = int(p(1)); + // TODO: check if positive required + // 2nd argument, if exists, must be a positive integer' + if length(p)==2 then + if ~IsIntOrDouble(p(2),%F) then + msg = "rooteig: Wrong type for argument #2 p(2); must be a scalar"; + error(msg,10053); + end + end + + isXReal = isreal(x) + if ~isCorrFlag then + // check that p(1) should be even if x is real + if isXReal & modulo(p(1),2)~=0 then + msg = "rooteig: Wrong input argument #2 p(1); " + ... + " An even value expected for real input x"; + error(msg,10036); + end + end + + + + // **** calling pmusic **** + data= struct(); + data.x = primaryInput; + data.p = p; + data.nfft = 256; + data.w = []; + data.fs = fs; + data.isWindowSpecified = %F; + data.windowLength = 2*p(1); + data.windowVector = []; + data.noverlap = []; + data.isCorrFlag = isCorrFlag; + data.isFsSpecified = isFsSpecified; + data.freqrange = "twosided"; + + + + [outData,msg] = musicBase(data); + if length(msg)~=0 then + // throw error + msg = "rooteig: "+msg + error(msg); + end + + pEffective = outData.pEffective; + eigenvals = outData.eigenvals; + + w = computeFreqs(outData.noiseEigenvects,pEffective,%t,eigenvals); + + if isempty(w) then + // assign all frequency and powers as -nan + w = %nan*(1:pEffective)'; + pow = w; + return; + end + + + // **** Estimating the variance of the noise **** + // Estimate is the mean of the eigenvalues belonging to the noise subspace + sigma_noise = mean(eigenvals(pEffective+1:$)); + + pow = computePower(outData.signalEigenvects,eigenvals,w,pEffective,... + sigma_noise,isXReal); + + + // is fs is specified, convert normailized frequencies to actual frequencies + if isFsSpecified then + w = w*fs/(2*%pi); + end + + +endfunction + +function w = computeFreqs(noiseEigenvects,pEffective,EVFlag,eigenvals) + // Computes the frequencies of the complex sinusoids using the roots of + // the polynomial formed with the noise eigenvectors + // + // Parameters + // noiseEigenvects - + // A matrix where noise eigenvectors are represented by each column + // pEffective - + // The effective dimension of the signal subspace + // EVFlag - + // Flag to indicate weighting to be used for rooteig + // eigenvals - + // Eigenvals of the correlation matrix + // + // Output arguments + // w - + // A vector with frequencies of the complex sinusoids + + + numOfNoiseEigenvects = size(noiseEigenvects,2); + if EVFlag then + // weights are the eigenvalues in the noise subspace + weights = eigenvals($-numOfNoiseEigenvects+1:$); + else + weights = ones(numOfNoiseEigenvects,1); + end + + // Form a polynomial consisting of a sum of polynomials given by the + // product of the noise subspace eigenvectors and the reversed and + // conjugated version. (eq 8.163 from [1]) + D = 0; + for i=1:numOfNoiseEigenvects + eigenvect = noiseEigenvects(:,i); + D = D + conv(eigenvect,conj(eigenvect($:-1:1)))./weights(i); + end + + roots = roots(D); + + // selecting the roots inside the unit circle + rootsSelected = roots(abs(roots)<1); + + // sort the roots in order of increasing distance from the unit circle + [dist,indices] = gsort(abs(rootsSelected)-1); + + sortedRoots = rootsSelected(indices); + + if isempty(sortedRoots) then + w = []; + else + w = atan(imag(sortedRoots(1:pEffective)),real(sortedRoots(1:pEffective))); + end + + +endfunction + + +function power = computePower(signalEigenvects,eigenvals,w,pEffective,... + sigma_noise,isXReal) + + if isXReal then + // removing the negative frequencies as sinusoids will be present in + // complex conjugate pairs + w = w(w>=0); + pEffective = length(w); + end + + // Solving eq. 8.160 from [1] (Ap = b) where p is the power matrix + + A = zeros(length(w),pEffective); + + for i=1:pEffective + A(:,i) = computeFreqResponseByPolyEval(signalEigenvects(:,i), ... + w,1,%F); + end + + A = (abs(A).^2)'; + b = eigenvals(1:pEffective) - sigma_noise; + + // Solving Ap=b with the constraint that all elements of p >=0 + power = nnls(A,b+A*sqrt(%eps)*ones(pEffective,1)); + + +endfunction + +function h = computeFreqResponseByPolyEval(b,f,fs,isFsSpecified) + // returns the frequency response (h) for a digital filter with numerator b. + // The evaluation of the frequency response is done at frequency values f + + f = f(:); + b = b(:); + if isFsSpecified then + // normalizing the f vector + w = f*2*%pi/fs; + else + w = f; + end + + n = length(b); + powerMatrix = zeros(length(f),n); + powerMatrix(:,1) = 1; + for i=2:n + powerMatrix(:,i) = exp(w*(-i+1)*%i); + end + + h = powerMatrix*b; + +endfunction + + +function result = IsIntOrDouble(inputNum, isPositiveCheck) + // Checks if The Input Is Integer Or Double + // Also Checks if It Is Greater Than 0 For IsPositiveCheck = True + + if ~(type(inputNum)==1 | type(inputNum)==8) then + result = %F; + return + end + if isPositiveCheck & or(inputNum<=0) then + result = %F; + return + end + + result = %T; + return +endfunction diff --git a/macros/rootmusic.bin b/macros/rootmusic.bin Binary files differnew file mode 100644 index 0000000..8d40df3 --- /dev/null +++ b/macros/rootmusic.bin diff --git a/macros/rootmusic.sci b/macros/rootmusic.sci new file mode 100644 index 0000000..34c3ff6 --- /dev/null +++ b/macros/rootmusic.sci @@ -0,0 +1,349 @@ +// Date of creation: 20 Jan, 2016 +function [w,pow] = rootmusic(x,p,varargin) + // Frequencies and power of sinusoids using the root MUSIC algorithm + // + // Calling Sequence + // w = rootmusic(x,p) + // [w,pow] = rootmusic(x,p) + // [f,pow] = rootmusc(...,fs) + // [w,pow] = rootmusic(...,'corr') + // + // Parameters + // x - int|double - vector|matrix + // Input signal. + // If x is a vector, then it reprsenets one realization of the signal. + // If x is a matrix, then each row represents a separate observation of + // the signal. + // p - int|double - scalar|2 element vector + // p(1) is the signal subspace dimension and hence the number of + // complex exponentials in x. + // p(2), if specified, represents a threshold that is multiplied by + // the smallest estimated eigenvalue of the signal's correlation + // matrix. + // fs - int|double - scalar + // Sampling frequency (in Hz) + // If fs is specified by an empty vector or unspecified, it defaults + // to 1 Hz + // 'corr' flag + // If specified, x is interpreted as a correlation matrix rather than + // a matrix of the signal data. For x to be a correlation matrix, + // x must be a square matrix and all its eigenvalues must be + // nonnegative + // + // Examples: + // 1) 3 complex exponentials: + // + // n=0:99; + // s=exp(1i*pi/2*n)+2*exp(1i*pi/4*n)+exp(1i*pi/3*n)+randn(1,100); + // [W,P] = rootmusic(s,3); + // + // Author + // Ayush + // + // See also + // corrmtx | peig | pmusic | rooteig + // + // References + // 1) Monson H. Hayes, Statistical Digital Signal Processing And Modeling, + // Wiley & Sons, Inc, [Section 8.6.3] + // + // + // Output arguments + // w - double - vector + // Estimated frequencies of the complex sinusoids + // pow - double - vector + // estimated absolute value squared amplitudes of the sinusoids at + // the frequencies w + // + + funcprot(0); + + exec('musicBase.sci',-1); + exec('nnls.sci',-1); + + + // **** checking the number of input and output arguments **** + + [numOutArgs, numInArgs] = argn(0); + + if numOutArgs~=1 & numOutArgs~=2 then + error(78,"rootmusic"); + end + + if numInArgs<1 | numInArgs>4 then + error(77,"rootmusic"); + end + + + // **** parsing the input arguments **** + isFsSpecified = %F; + fs = []; + + varargLength = length(varargin); + // searching for the 'corr' flag + isCorrFlag = %F; + + if varargLength==0 then + stringIndices = []; + else + stringIndices = find(type(varargin(1:varargLength))==10); + end + + if ~isempty(stringIndices) then + // ignoring all other strings except the corr flag + isCorrFlag = or(strcmpi(varargin(stringIndices),"corr")==0); + varargin(stringIndices) = []; + end + + // varargin can have only an entry for fs + if length(varargin)==1 then + fs = varargin(1); + if length(fs)==1 then + if ~IsIntOrDouble(fs, %T) then + msg = "rootmusic: Wrong type for argument #4 (fs); Positive scalar expected"; + error(msg,10084); + end + fs = double(fs); + isFsSpecified = %T; + elseif length(fs)>1 then + msg = "rootmusic: Wrong type for argument #4 (fs); Positive scalar expected"; + error(msg,10084); + end + elseif length(varargin)>1 then + msg = "rootmusic: Wrong type for argument #4 (fs); Positive scalar expected"; + error(msg,10084); + end + + // extracting primary input x/R + primaryInput = x; + + if ndims(primaryInput)<1 | ndims(primaryInput)>2 then + msg = "rootmusic: Wrong dimension for argument #1; Vector or a matrix expected"; + error(msg,10053); + end + if ~IsIntOrDouble(primaryInput, %F) then + msg = "rootmusic: Wrong type for argument #1; Numeric vector or a matrix expected"; + error(msg,10053); + end + // covert to a column vector + if ndims(primaryInput)==1 then + primaryInput = primaryInput(:); + end + // casting to double + primaryInput = double(primaryInput); + + + //****extracting p**** + // p must be either scalar or a 2-element vector + if length(p)~=1 & length(p)~=2 then + msg = "rootmusic: Wrong type for argument #2 (p); " + ... + "A scalar or a 2-element vector expected"; + error(msg,10053); + end + // first argument of p must be an integer + if ~IsIntOrDouble(p(1),%T) then + msg = "rootmusic: Wrong input argument #2 p(1); " + ... + "positive integer expected"; + error(msg,10036); + return + end + p(1) = int(p(1)); + // TODO: check if positive required + // 2nd argument, if exists, must be a positive integer' + if length(p)==2 then + if ~IsIntOrDouble(p(2),%F) then + msg = "rootmusic: Wrong type for argument #2 p(2); must be a scalar"; + error(msg,10053); + end + end + + isXReal = isreal(x) + if ~isCorrFlag then + // check that p(1) should be even if x is real + if isXReal & modulo(p(1),2)~=0 then + msg = "rootmusic: Wrong input argument #2 p(1); " + ... + " An even value expected for real input x"; + error(msg,10036); + end + end + + + + // **** calling pmusic **** + data= struct(); + data.x = primaryInput; + data.p = p; + data.nfft = 256; + data.w = []; + data.fs = fs; + data.isWindowSpecified = %F; + data.windowLength = 2*p(1); + data.windowVector = []; + data.noverlap = []; + data.isCorrFlag = isCorrFlag; + data.isFsSpecified = isFsSpecified; + data.freqrange = "twosided"; + + + + [outData,msg] = musicBase(data); + if length(msg)~=0 then + // throw error + msg = "rootmusic: "+msg + error(msg); + end + + pEffective = outData.pEffective; + eigenvals = outData.eigenvals; + + w = computeFreqs(outData.noiseEigenvects,pEffective,%f,eigenvals); + + if isempty(w) then + // assign all frequency and powers as -nan + w = %nan*(1:pEffective)'; + pow = w; + return; + end + + + // **** Estimating the variance of the noise **** + // Estimate is the mean of the eigenvalues belonging to the noise subspace + sigma_noise = mean(eigenvals(pEffective+1:$)); + + pow = computePower(outData.signalEigenvects,eigenvals,w,pEffective,... + sigma_noise,isXReal); + + + // is fs is specified, convert normailized frequencies to actual frequencies + if isFsSpecified then + w = w*fs/(2*%pi); + end + + +endfunction + +function w = computeFreqs(noiseEigenvects,pEffective,EVFlag,eigenvals) + // Computes the frequencies of the complex sinusoids using the roots of + // the polynomial formed with the noise eigenvectors + // + // Parameters + // noiseEigenvects - + // A matrix where noise eigenvectors are represented by each column + // pEffective - + // The effective dimension of the signal subspace + // EVFlag - + // Flag to indicate weighting to be used for rooteig + // eigenvals - + // Eigenvals of the correlation matrix + // + // Output arguments + // w - + // A vector with frequencies of the complex sinusoids + + + numOfNoiseEigenvects = size(noiseEigenvects,2); + if EVFlag then + // weights are the eigenvalues in the noise subspace + weights = eigenvals($-numOfNoiseEigenvects+1:$); + else + weights = ones(numOfNoiseEigenvects,1); + end + + // Form a polynomial consisting of a sum of polynomials given by the + // product of the noise subspace eigenvectors and the reversed and + // conjugated version. (eq 8.163 from [1]) + D = 0; + for i=1:numOfNoiseEigenvects + eigenvect = noiseEigenvects(:,i); + D = D + conv(eigenvect,conj(eigenvect($:-1:1)))./weights(i); + end + + roots = roots(D); + + // selecting the roots inside the unit circle + rootsSelected = roots(abs(roots)<1); + + // sort the roots in order of increasing distance from the unit circle + [dist,indices] = gsort(abs(rootsSelected)-1); + + sortedRoots = rootsSelected(indices); + + if isempty(sortedRoots) then + w = []; + else + w = atan(imag(sortedRoots(1:pEffective)),real(sortedRoots(1:pEffective))); + end + + +endfunction + + +function power = computePower(signalEigenvects,eigenvals,w,pEffective,... + sigma_noise,isXReal) + + if isXReal then + // removing the negative frequencies as sinusoids will be present in + // complex conjugate pairs + w = w(w>=0); + pEffective = length(w); + end + + // Solving eq. 8.160 from [1] (Ap = b) where p is the power matrix + + A = zeros(length(w),pEffective); + + for i=1:pEffective + A(:,i) = computeFreqResponseByPolyEval(signalEigenvects(:,i), ... + w,1,%F); + end + + A = (abs(A).^2)'; + b = eigenvals(1:pEffective) - sigma_noise; + + // Solving Ap=b with the constraint that all elements of p >=0 + power = nnls(A,b+A*sqrt(%eps)*ones(pEffective,1)); + + +endfunction + +function h = computeFreqResponseByPolyEval(b,f,fs,isFsSpecified) + // returns the frequency response (h) for a digital filter with numerator b. + // The evaluation of the frequency response is done at frequency values f + + f = f(:); + b = b(:); + if isFsSpecified then + // normalizing the f vector + w = f*2*%pi/fs; + else + w = f; + end + + n = length(b); + powerMatrix = zeros(length(f),n); + powerMatrix(:,1) = 1; + for i=2:n + powerMatrix(:,i) = exp(w*(-i+1)*%i); + end + + h = powerMatrix*b; + +endfunction + + +function result = IsIntOrDouble(inputNum, isPositiveCheck) + // Checks if The Input Is Integer Or Double + // Also Checks if It Is Greater Than 0 For IsPositiveCheck = True + + if ~(type(inputNum)==1 | type(inputNum)==8) then + result = %F; + return + end + if isPositiveCheck & or(inputNum<=0) then + result = %F; + return + end + + result = %T; + return +endfunction diff --git a/macros/rssq.bin b/macros/rssq.bin Binary files differnew file mode 100644 index 0000000..3401b22 --- /dev/null +++ b/macros/rssq.bin diff --git a/macros/rssq.sci b/macros/rssq.sci new file mode 100644 index 0000000..e04050e --- /dev/null +++ b/macros/rssq.sci @@ -0,0 +1,72 @@ + +function out = rssq(in, orientation) +//This function calculates the square root of the sum of values of input vector IN. +// +//Calling Sequence +//OUT=rssq(IN) +//OUT=rssq(IN,orientation) +// +//Parameters +//in:Vector or Matrix of real or complex elements. +//orientation: A string with possible values "r", "c" or "m" or numericals such as '1' or '2',giving the dimension along which the rssq value is to be calculated. +//out:A scalar with real value when input is a vector.When input is a matrix, out is the root sum squared value along the orientation specified or the default one when not specified. +// +//Description +//For vector as input, the output is real valued scalar containing the rssq value. The rssq value can be calculated by taking the square root of the squared sum of the elements. +//If the input IN is a matrix, the output of function is rssq value of each column stored in a row vector OUT. +// +//When the elements of IN are COMPLEX, the absolute value of the element is used to calculate the output. +//When the orientation is not specified for N dimensional array, it is taken as the index of the first dimension of IN that is greater than 1 and calculation is done along that orientation. +// +//When the orientation is specified the output is calculated along that dimension. +//The orientation can be specified as 1 for rssq value of columns of matrix IN or as r. +//For rssq value of rows of matrix orientation should be 2 or c. +// +//Examples +//To calculate rssq of a vector: +//IN=[2 4 6] +//OUT=rssq(IN) +//The output is 7.4833148 +// +//Examples +//To calculate rssq of rows of matrix: +//IN=[1 3 5;2 4 6;7 8 9] +//OUT=rssq(IN,2) +//The output should be OUT= + //5.9160798 + //7.4833148 + //13.928388 +// +//Examples +//To calculate rssq of a columns of complex matrix: +// +//IN=[5+%i*3 2+%i*4; 3+%i*6 1+%i*2] +//OUT=rssq(IN,1) +//The output should be OUT= 8.8881944 5. +//See also +//abs +//mean +//sqrt +//isempty +// +//Authors +//Indira Askaukar +// +//Bibliography +//Matlab help document. + + +if argn(2)==1//when the orienatation is not specified + a=abs(in)//This calculates the absolute value of complex numbers + a=a.^2 + s=sum(a,"m") + out=sqrt(s) + +else + a=abs(in) + a=a.^2 + s=sum(a,orientation) + out=sqrt(s) + +end +endfunction diff --git a/macros/sampled2continuous.bin b/macros/sampled2continuous.bin Binary files differnew file mode 100644 index 0000000..49a325a --- /dev/null +++ b/macros/sampled2continuous.bin diff --git a/macros/sampled2continuous.sci b/macros/sampled2continuous.sci new file mode 100644 index 0000000..25738c4 --- /dev/null +++ b/macros/sampled2continuous.sci @@ -0,0 +1,24 @@ +function x = sampled2continuous (n, s, t) +//This function calculates the output reconstructed from the samples n supplied as input, at a rate of 1/s samples per unit time. +//Calling Sequence +//x = sampled2continuous (n, s, t) +//Parameters +//n: +//s: +//t: +//Description +//This is an Octave function. +//This function calculates the output reconstructed from the samples n supplied as input, at a rate of 1/s samples per unit time. +//The third parameter t is all the instants where output x is needed from intput n and this time is relative to x(0). +//Examples +//sampled2continuous([1,2,3],5,6) +//ans = +// 2.4166806 +funcprot(0); +rhs = argn(2) +if(rhs<3) +error("Wrong number of input arguments.") +end +x = callOctave("sampled2continuous", n, s, t) + +endfunction diff --git a/macros/sawtooth.bin b/macros/sawtooth.bin Binary files differnew file mode 100644 index 0000000..19e5aeb --- /dev/null +++ b/macros/sawtooth.bin diff --git a/macros/sawtooth.sci b/macros/sawtooth.sci new file mode 100644 index 0000000..50d093d --- /dev/null +++ b/macros/sawtooth.sci @@ -0,0 +1,27 @@ +function [y]=sawtooth (t,width) + +// Generates a Sawtooth wave +// Calling Sequence +// [y]=sawtooth(t) +// [y]=sawtooth(t,width) +// Parameters +// t: Real valued vector or matrix +// width: Real number between 0 and 1 +// Description +// This is an Octave function +// This function returns a sawtooth wave with period 2*pi with +1/-1 as the maximum and minimum values for elements of t. If width is specified, it determines where the maximum is in the interval [0,2*pi]. +// Examples +// 1. sawtooth([1 2 3 4 5],0.5) +// ans = [-0.36338 0.27324 0.90986 0.45352 -0.18310] +// 2. sawtooth([1 2; 4 5]) +// ans = [-0.68169 -0.36338; 0.27324 0.59155] + +funcprot(0); +rhs=argn(2); +if (rhs<1) then + error ("Wrong number of input arguments.") +elseif (rhs==1) + y=callOctave("sawtooth",t) +else y=callOctave("sawtooth",t,width) +end +endfunction diff --git a/macros/schtrig.bin b/macros/schtrig.bin Binary files differnew file mode 100644 index 0000000..d89c725 --- /dev/null +++ b/macros/schtrig.bin diff --git a/macros/schtrig.sci b/macros/schtrig.sci new file mode 100644 index 0000000..90286e2 --- /dev/null +++ b/macros/schtrig.sci @@ -0,0 +1,30 @@ +function v = schtrig (x, lev, rs) +//This function implements a multisignal Schmitt triggers with lev levels supplied as input. +//Calling Sequence +//v = schtrig (x, lev) +//v = schtrig (x, lev, rs) +//Parameters +//x: vector or matrix of real numbers +//lev: real number +//rs: default value 1 +//Description +//This is an Octave function. +//This function implements a multisignal Schmitt triggers with lev levels supplied as input. +//The argument 1 is a matrix (or a vector) and this trigger works along its first dimension. +//Examples +//schtrig([0.2,-3,5],-4) +//ans = +// 0. 0. 1. + +funcprot(0); +rhs = argn(2) +if(rhs<2 | rhs>3) +error("Wrong number of input arguments.") +end +if(rhs==2) +v = callOctave("schtrig", x, lev) +elseif(rhs==3) +v = callOctave("schtrig",x, lev, rs) +end + +endfunction diff --git a/macros/schurrc.bin b/macros/schurrc.bin Binary files differnew file mode 100644 index 0000000..c484ac0 --- /dev/null +++ b/macros/schurrc.bin diff --git a/macros/schurrc.sci b/macros/schurrc.sci new file mode 100644 index 0000000..0a5e6ce --- /dev/null +++ b/macros/schurrc.sci @@ -0,0 +1,50 @@ +//schurrc - Schur algorithm. +//K = SCHURRC(R) computes the reflection coefficients from autocorrelation vector R. If R is a matrix, SCHURRC finds coefficients for each column of R, and returns them in the columns of K. +//[K,E] = SCHURRC(R) returns the prediction error variance E. If R is a matrix, SCHURRC finds the error for each column of R, and returns them in the rows of E. +//Modified to match matlab i/p and o/p and handle exceptions +//Fixed bugs +//by Debdeep Dey +function [k,e] = schurrc(R) + narginchk(1,1,argn(2)); +if(type(R)==10) then + w=R; + [nr,nc]=size(R); + if(nr==1 & nc==1) then + R=ascii(R); + R=matrix(R,length(w)); + else + + R=ascii(R); + R=matrix(R,size(w)); + end + +end +if(type(R) > 1) then + error('Input R is not a matrix') +end +if (min(size(R)) == 1) then + R = R(:); +end +[m,n] = size(R); +// Compute reflection coefficients for each column of the input matrix +for j = 1:n + X = R(:,j).'; + // Schur's iterative algorithm on a row vector of autocorrelation values + U = [0 X(2:m); X(1:m)]; + + for i = 2:m, + U(2,:) = [0 U(2,1:m-1)]; + k(i-1,j) = -U(1,i)/U(2,i); + U = [1 k(i-1,j); conj(k(i-1,j)) 1]*U; + end + + e(j,1) = U(2,$); +end +endfunction +function narginchk(l,h,t) + if t<l then + error("Too few input arguments"); + elseif t>l then + error("Too many input arguments"); + end +endfunction diff --git a/macros/schurrc.sci~ b/macros/schurrc.sci~ new file mode 100644 index 0000000..71beb39 --- /dev/null +++ b/macros/schurrc.sci~ @@ -0,0 +1,49 @@ +//schurrc - Schur algorithm. +//K = SCHURRC(R) computes the reflection coefficients from autocorrelation vector R. If R is a matrix, SCHURRC finds coefficients for each column of R, and returns them in the columns of K. +//[K,E] = SCHURRC(R) returns the prediction error variance E. If R is a matrix, SCHURRC finds the error for each column of R, and returns them in the rows of E. +//Modified to match matlab i/p and o/p and handle exceptions +//Fixed bugs +//by Debdeep Dey +function [k,e] = schurrc(R) + narginchk(1,1,argn(2)); +if(type(R)==10) then + w=R; + [nr,nc]=size(R); + if(nr==1 & nc==1) then + R=ascii(R); + R=matrix(R,length(w)); + else + + R=ascii(R); + R=matrix(R,size(w)); + end + +end +if(type(R) > 1) then + error('Input R is not a matrix') +end +if (min(size(R)) == 1) then + R = R(:); +end +[m,n] = size(R); +// Compute reflection coefficients for each column of the input matrix +for j = 1:n + X = R(:,j).'; + // Schur's iterative algorithm on a row vector of autocorrelation values + U = [0 X(2:m); X(1:m)]; + + for i = 2:m, + U(2,:) = [0 U(2,1:m-1)]; + k(i-1,j) = -U(1,i)/U(2,i); + U = [1 k(i-1,j); conj(k(i-1,j)) 1]*U; + end + + e(j,1) = U(2,$); +end +endfunction +function narginchk(l,h,t) + if t<l then + error("Too few input arguments"); + elseif t>l then + error("Too many i/p arguments"); + end diff --git a/macros/seqperiod.bin b/macros/seqperiod.bin Binary files differnew file mode 100644 index 0000000..8c9af6f --- /dev/null +++ b/macros/seqperiod.bin diff --git a/macros/seqperiod.sci b/macros/seqperiod.sci new file mode 100644 index 0000000..aa51d06 --- /dev/null +++ b/macros/seqperiod.sci @@ -0,0 +1,81 @@ +function [p,num]=seqperiod(x) +//Calculates the period of a sequence +//Calling Sequence +//[p,num]=seqperiod(x) +//Parameters +//x: A vector matrix or n-dimensional array +//Description +//[p,num]=seqperiod(x) +//Returns an integer p such that x(1:p) is the smallest subsequence that repeats in x +//The number of times the subsequence repeats is returned in num (may not be an integer) +//Repetitions may be incomplete at the end of the sequence but no breaks are permitted between repetitions +//If there is no subsequence that repeats in x then p=length(x) +//If x is a matrix or n-dimesnional array, the function operates along the first non-singleton dimension of x +//Examples +//x = [4 0 1 5; +// 1 1 2 5; +// 2 0 3 5; +// 3 1 1 5]; +//p = seqperiod(x) +//p = +// +// 4. 2. 3. 1. +//A=zeros(4,1,4); +//A(:,1,:)=x; +//p1=seqperiod(A); +//p1 = +// +//(:,:,1) +// +//4. +//(:,:,2) +// +//2. +//(:,:,3) +// +//3. +//(:,:,4) +// +//1. +//Authors +//Ankur Mallick + funcprot(0); + if(argn(2)~=1) + error('Incorrect number of input arguments.'); + else + S=size(x); + S1=S(S>1); + if(length(S1)==1) + u=0,v=0; + x=matrix(x,S1,1); + for i=1:S1 + if(S1>=2*i) + L=ceil((S1-i)/i); + v=matrix(x(1:i)*ones(1,L),i*L,1); + u=x(i+1:S1); + v=v(1:length(u)); + else + u=x(i+1:S1); + v=x(1:length(u)); + end + if(v==u|i==S1) + p=i; + num=S1/p; + break; + end + end + else + x1=squeeze(x); + S2=size(x1); + p=zeros(sum(x1,1)); //summing x along first dimension gives p a leading singleton dimensionn + num=zeros(p); + for i=1:prod(S2(2:length(S2))) + [p1,num1]=seqperiod(x1(:,i)); + p(i)=p1; //Linear indexing + num(i)=num1; //Linear indexing + end + p=matrix(p,[1,S(2:length(S))]); + num1=matrix(num,[1,S(2:length(S))]); + end + end +endfunction diff --git a/macros/sgolay.bin b/macros/sgolay.bin Binary files differnew file mode 100644 index 0000000..14ab743 --- /dev/null +++ b/macros/sgolay.bin diff --git a/macros/sgolay.sci b/macros/sgolay.sci new file mode 100644 index 0000000..1156d40 --- /dev/null +++ b/macros/sgolay.sci @@ -0,0 +1,40 @@ +function F = sgolay (p, n, m, ts) +//This function computes the filter coefficients for all Savitzsky-Golay smoothing filters. +//Calling Sequence +//F = sgolay (p, n) +//F = sgolay (p, n, m) +//F = sgolay (p, n, m, ts) +//Parameters +//p: polynomial +//n: odd integer value, larger than polynomial p +//m: positive integer less than 2^31 or logical +//ts: real or complex value +//Description +//This is an Octave function. +//This function computes the filter coefficients for all Savitzsky-Golay smoothing filters of order p for length n (odd). +//m can be used in order to get directly the mth derivative; ts is a scaling factor. +//Examples +//y = sgolay(1,3,0) +//y = +// 0.83333 0.33333 -0.16667 +// 0.33333 0.33333 0.33333 +// -0.16667 0.33333 0.83333 + +funcprot(0); +rhs = argn(2) + +if(rhs<2 | rhs>4) +error("Wrong number of input arguments.") +end + + select(rhs) + case 2 then + F = callOctave("sgolay",p,n) + case 3 then + F = callOctave("sgolay",p,n,m) + case 4 then + F = callOctave("sgolay",p,n,m,ts) + end +endfunction + + diff --git a/macros/sgolayfilt.bin b/macros/sgolayfilt.bin Binary files differnew file mode 100644 index 0000000..a834dab --- /dev/null +++ b/macros/sgolayfilt.bin diff --git a/macros/sgolayfilt.sci b/macros/sgolayfilt.sci new file mode 100644 index 0000000..8f58f5f --- /dev/null +++ b/macros/sgolayfilt.sci @@ -0,0 +1,54 @@ +function y = sgolayfilt (x, p, n, m, ts) + +//This function applies a Savitzky-Golay FIR smoothing filter to the data +//Calling Sequence +//y = sgolayfilt (x) +//y = sgolayfilt (x, p) +//y = sgolayfilt (x, p, n) +//y = sgolayfilt (x, p, n, m) +//y = sgolayfilt (x, p, n, m, ts) +//Parameters +//x: vector or matrix of real or complex numbers +//p: polynomial order, real number less than n, default value 3 +//n: integer, odd number greater than p +//m: vector of real positive valued numbers, length n +//ts: real number, default value 1 +//Description +//This function applies a Savitzky-Golay FIR smoothing filter to the data given in the vector x; if x is a matrix, this function operates +//on each column. +//The polynomial order p should be real, less than the size of the frame given by n. +//m is a weighting vector with default value identity matrix. +//ts is the dimenstion along which the filter operates. If not specified, the function operates along the first non singleton dimension. +//Examples +//sgolayfilt([1;2;i;4;7], 0.3, 3, 0, 0) +//ans = +// 1.0000 + 0.3333i +// 1.0000 + 0.3333i +// 2.0000 + 0.3333i +// 3.6667 + 0.3333i +// 3.6667 + 0.3333i +//This function is being called from Octave + + + + +funcprot(0); +rhs = argn(2) +if(rhs<1 | rhs>5) +error("Wrong number of input arguments.") +end + + +select(rhs) +case 1 then +y = callOctave("sgolayfilt",x) +case 2 then +y = callOctave("sgolayfilt",x, p) +case 3 then +y = callOctave("sgolayfilt",x, p, n) +case 4 then +y = callOctave("sgolayfilt",x, p, n, m) +case 5 then +y = callOctave("sgolayfilt",x, p, n, m, ts) +end +endfunction diff --git a/macros/shanwavf.bin b/macros/shanwavf.bin Binary files differnew file mode 100644 index 0000000..300bc07 --- /dev/null +++ b/macros/shanwavf.bin diff --git a/macros/shanwavf.sci b/macros/shanwavf.sci new file mode 100644 index 0000000..a597214 --- /dev/null +++ b/macros/shanwavf.sci @@ -0,0 +1,30 @@ +function [psi,x]=shanwavf(lb,ub,n,fb,fc) + +// Complex Shannon Wavelet +// Calling Sequence +// [psi,x]=shanwavf(lb,ub,n,fb,fc) +// Parameters +// lb: Real or complex valued vector or matrix +// ub: Real or complex valued vector or matrix +// n: Real valued integer strictly positive +// fb: Real or complex valued vector or matrix, strictly positive value for scalar input +// fc: Real or complex valued vector or matrix, strictly positive value for scalar input +// Description +// This is an Octave function +// This function implements the complex Shannon wavelet function and returns the value obtained. The complex Shannon wavelet is defined by a bandwidth parameter FB, a wavelet center frequency FC on an N point regular grid in the interval [LB,UB]. +// Examples +// 1. [a,b]=shanwavf (2,8,3,1,6) +// a = [-3.8982e-17 + 1.1457e-31i 3.8982e-17 - 8.4040e-31i -3.8982e-17 + 4.5829e-31i] +// b = [2 5 8] +// 2. [a,b]=shanwavf(1,2,1,[2,2;i,2],[-1,2;-i,i]) +// a = [-5.5128e-17 - 2.7005e-32i -5.5128e-17 + 5.4010e-32i; +// 8.6404e+06 + 8.6404e+06i -1.9225e-22 - 0.0000e+00i] +// b = 2 + +funcprot(0); +rhs=argn(2); +if (rhs~=5) then + error ("Wrong number of input arguments.") +else [psi,x]=callOctave("shanwavf",lb,ub,n,fb,fc) +end +endfunction diff --git a/macros/shiftdata.bin b/macros/shiftdata.bin Binary files differnew file mode 100644 index 0000000..ef78b01 --- /dev/null +++ b/macros/shiftdata.bin diff --git a/macros/shiftdata.sci b/macros/shiftdata.sci new file mode 100644 index 0000000..8817e24 --- /dev/null +++ b/macros/shiftdata.sci @@ -0,0 +1,77 @@ +function [y,perm,nshifts] = shiftdata(x,dim) +//Shifts data by rearranging dimensions +//Calling sequence +//[y,perm,nshifts]=shiftdata(x,dim) +//[y,perm,nshifts]=shiftdata(x) +//Parameters +//x +//A vector matrix or n-dimensional array +//dim +//The dimension to be shifted to the first column +//Description +//[y,perm,nshifts]=shiftdata(x,dim) +//Shifts the entries along dimension dim in x to the first column and returns the permutation vector in perm +//[y,perm,nshifts]=shiftdata(x) +//Shifts the entries along dimension dim in x to the first column and returns the number of shifts in nshifts +//Examples +// //When dim is specified: +//x=testmatrix('magi',3) +//x = +// +// 8. 1. 6. +// 3. 5. 7. +// 4. 9. 2. +//[y,perm,nshifts] = shiftdata(x,2) +//nshifts = +// +// [] +// perm = +// +// 2. 1. +// y = +// +// 8. 3. 4. +// 1. 5. 9. +// 6. 7. 2. +// //When dim is not specified: +//x=1:5 +//x = +// +// 1. 2. 3. 4. 5. +// [y,perm,nshifts] = shiftdata(x) +//nshifts = +// +// 1. +// perm = +// +// [] +// y = +// +// 1. +// 2. +// 3. +// 4. +// 5. +//See also +//permute +//unshiftdata +//Author +//Ankur Mallick + funcprot(0); + if(argn(2)<1|argn(2)>2) + error('Incorrect number of input arguments.'); + elseif(argn(2)==1|size(dim)==0) + perm=[]; + S=size(x); + v=find(S>1,1); + y=matrix(x,S(v:length(S))); + nshifts=v-1; + else + S=size(x); + perm=1:1:length(S); + perm(dim)=[]; + perm=[dim perm]; + y=permute(x,perm); + nshifts=[]; + end +endfunction diff --git a/macros/slewrate.bin b/macros/slewrate.bin Binary files differnew file mode 100644 index 0000000..55c9162 --- /dev/null +++ b/macros/slewrate.bin diff --git a/macros/slewrate.sci b/macros/slewrate.sci new file mode 100644 index 0000000..5b83327 --- /dev/null +++ b/macros/slewrate.sci @@ -0,0 +1,387 @@ +function [s, lowercrossvalue, uppercrossvalue, lowerreference, upperreference]=slewrate(x, varargin) + + + // This function estimate slew rate of bilevel waveform transitions + // Calling Sequence + // s=slewrate(x) + // s=slewrate(x, t) + // s=slewrate(x, Fs) + // s=slewrate(x, t, 'PercentReferenceLevels', N ) + // s=slewrate(x, t, 'Tolerance', M) + // s=slewrate(x, t,'StateLevels', O) + + // [s lowercrossvalue uppercrossvalue lowerreference upperreference]=slewrate(x) + // [s lowercrossvalue uppercrossvalue lowerreference upperreference]=slewrate(x, t) + // // [s lowercrossvalue uppercrossvalue lowerreference upperreference]=slewrate(x, Fs) + // [s lowercrossvalue uppercrossvalue lowerreference upperreference]=slewrate(x, t, 'PercentReferenceLevels', N ) + // [s lowercrossvalue uppercrossvalue lowerreference upperreference]= slewrate(x, t, 'Tolerance', M) + // [s lowercrossvalue uppercrossvalue lowerreference upperreference]= slewrate(x, t,'StateLevels', O) + // [s lowercrossvalue uppercrossvalue lowerreference upperreference]= slewrate(x, t,'StateLevels', O, 'fig', on or off) + // + // Parameters + // x: real vector. + // Fs: specifies the sample rate, Fs, as a positive scalar, where the first sample instant corresponds to a time of zero. + // t: defiene instant sample time t as vector with same length of x, or specifies the sample rate, t, as a positive scalar. + // PercentReferenceLevels: specify the mid percent reference leves as a percentage, default value of N is [10 90]. + // Tolerance: define the tolerance value as real scaler value, where default value of M is 2.0. + // StateLevels: define the lower and upper state levels as two element real vector. + // fig: specify the logical input value to display figure as one of 'on' or 'off', where the default input in 'off'. + // s: returns a vector of the ratios of the level difference to the time duration between the points where each transition crosses the 10% and 90% reference levels. + // lowercrossvalue: return the lowerc cross value of bilevel waveform transitions X + // uppercrossvalue: return the upper cross value of bilevel waveform transitions X + // lowerreference: return lower reference value corrosponding to lower percent reference value. + // upperreference: return upper reference value corrosponding to upper percent reference value. + + // Examples + // x=[1.2, 5, 10, -20, 12] + //t=1:length(x) + //s=slewrate(x, t) + // See also + // Authors + // Jitendra Singh + + + // run statelevels and midcross function before running risetime function. + + if or(type(x)==10) then + error ('Input arguments must be double.') +end + +if size(x,1)==1 | size (x,2)==1 then + else + error ('Argument X must be vector.') +end + + + + if length(varargin)==0 then // if the no of input is 0, then specify the default values to input parameter. + [levels hist]=statelevels(x); + Lvarargin=list(1:length(x), 'StateLevels', levels(1), 'MidPercentReferenceLevel', 10, 'Tolerance', 2, 'fig', 'off') + Uvarargin=list(1:length(x), 'StateLevels', levels(2), 'MidPercentReferenceLevel', 90, 'Tolerance', 2, 'fig', 'off') + end + +if length(varargin)>=1 & type(varargin(1))==1 then + if length(varargin(1))==1 then + t=(0:(length(x)-1)); + + elseif length(varargin(1))==length(x) then + t=varargin(1); + + else + error('T must be a same length as X.') + end +else + t=1:length(x); +end + + +if length(varargin)>=2 & type(varargin(1))==1 & type(varargin(2))==1 then + error ("Too many leading numeric arguments (at most 2 expected)."); +end + + + + +sindex=[]; +if length(varargin)>=1 then +a=1; + +for i=1:length(varargin) + if type(varargin(i))==10 then + sindex(a)=i; + a=a+1; + end +end +end + + +if length(sindex)>5 then + error('Unexpected argument.') +end + +if length(varargin)==1 & (isempty(sindex)) then + + [levels hist]=statelevels(x); + Lvarargin=list(t, 'StateLevels', levels(1), 'MidPercentReferenceLevel', 10, 'Tolerance', 2, 'fig', 'off') + Uvarargin=list(t, 'StateLevels', levels(2), 'MidPercentReferenceLevel', 90, 'Tolerance', 2, 'fig', 'off') + +end + +fig='OFF'; +////////////////////////////////// + +if (~isempty(sindex)) then + for j=1:length(sindex) + + select convstr(varargin(sindex(j)),'u') + + case {'STATELEVELS'} + //// + if length(varargin) <=sindex(j) then + error(strcat(['parameter StateLevels required a value'])); + end + + if type(varargin(sindex(j)+1))==1 then + levels=varargin(sindex(j)+1); + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='PERCENTREFERENCELEVELS' | convstr(varargin(sindex(j)+1),'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='FIG' then + + error('parameter StateLevels required a value.') + + + elseif type(varargin(sindex(j)+1))==10 then + + error('Expected STATELEVELS to be one of these types: double, Instead its type was char.') + end + + + case {'PERCENTREFERENCELEVELS'} + if length(varargin) <=sindex(j) then + error(strcat(['parameter MidPercentRefernceLevel required a value.'])); + end + + if type(varargin(sindex(j)+1))==1 then + midpercentval= varargin(sindex(j)+1); + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='STATELEVELS' | convstr(varargin(sindex(j)+1),'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='FIG' then + error('parameter MidPercentRefernceLevel required a value.') + + elseif type(varargin(sindex(j)+1))==10 then + error('Expected MidPercentRefernceLevel to be one of these types: double, Instead its type was char.') + end + + if length( midpercentval)~=2 then + error ('Expected MidPercentRefernceLevel to be of size 1x2') + end + ///////////////////////////////// + + perval=varargin(sindex(j)+1); + disp(perval) + if perval(2)<= perval(1) then + error('The PercentReferenceLevels must be in increasing order.') + end + + varargin(sindex(j))='MidPercentReferenceLevel'; + varargin(sindex(j)+1)=perval(1); + Lvarargin= varargin; + + varargin(sindex(j)+1)=perval(2); + Uvarargin=varargin; + + + + case {'FIG'} + + if length(varargin) <=sindex(j) then + error(strcat(['parameter fig required a value.'])); + end + + if type(varargin(sindex(j)+1))==1 then + error ('Expected fig to match one of these strings: on or off'); + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')=='STATELEVELS' | convstr(varargin(sindex(j)+1), 'u')== 'TOLERANCE' | convstr(varargin(sindex(j)+1), 'u')=='PERCENTREFERENCELEVELS' then + error('parameter fig required a value.') + else + fig= convstr(varargin(sindex(j)+1), 'u'); + + end + + + if fig == 'OFF' | fig == 'ON' then + else + error('Expected fig to match one of these strings: on or off'); + end + + + + case{'ON'} + + + + case{'OFF'} + + + case {'TOLERANCE'} + + if length(varargin) <=sindex(j) then + error(strcat(['parameter Tolerance required a value"])); + + elseif type(varargin(sindex(j)+1))==1 then + tolerance= varargin(sindex(j)+1); + + elseif type(varargin(sindex(j)+1))==10 & convstr(varargin(sindex(j)+1), 'u')== 'STATELEVELS' | convstr(varargin(sindex(j)+1), 'u')== 'PERCENTREFERENCELEVELs' | convstr(varargin(sindex(j)+1), 'u')=='FIG' then + + error('parameter Tolerance required a value.'); + + elseif type(varargin(sindex(j)+1))==10 then + + error('Expected Tolerance to be one of these types: double, Instead its type was char.'); + end + + + else + error(strcat(['Invalid optional argument'," ", varargin(sindex(j))])); + end // switch + end // for + end // if + +///////////////////////////////////////////// + + + + indexx=[]; +if length(sindex)>=1 then +a=1; +for i=1:length(sindex) + + indexx(a)=find(convstr(varargin(sindex(i)), 'u')=='MIDPERCENTREFERENCELEVEL') + a=a+1; +end +end + + +if sum(indexx)==0 then + + varargin(length(varargin)+1)='MIDPERCENTREFERENCELEVEL'; + varargin(length(varargin)+1)=10; + Lvarargin= varargin; + + varargin(length(varargin))=90; + Uvarargin=varargin; +end + +index_on=[]; + +if length(sindex)>=1 then +a=1; + +for i=1:length(sindex) + + index_on(a)=find(convstr(varargin(sindex(i)), 'u')=='ON') + + a=a+1; + +end +end + +if sum(index_on)>0 then + Lvarargin(sindex(find(index_on>0)))='OFF'; + Uvarargin(sindex(find(index_on>0)))='OFF'; +end + + + + + [lcrossval lref levels t tolerance]= midcross(x, Lvarargin(:)); + + [ucrossval uref]=midcross(x, Uvarargin(:)); + + + if length(lcrossval)==length(ucrossval) then + ss=ucrossval-lcrossval + + elseif length(lcrossval)>length(ucrossval) + n=length(ucrossval); + ss=ucrossval-lcrossval(1:n); + + else + n=length(lcrossval); + ss=ucrossval(1:n)-lcrossval; + + + end + + + s=(uref-lref)./ss; + + + uppercrossvalue=ucrossval; + lowercrossvalue=lcrossval; + + lowerreference=lref; + upperreference=uref; + + upperbound= levels(2)- (tolerance/100)*(levels(2)-levels(1)); + mostupperbound=levels(2)+ (tolerance/100)*(levels(2)-levels(1)); + lowerbound= levels(1)+ (tolerance/100)*(levels(2)-levels(1)); + mostlowerbound=levels(1)- (tolerance/100)*(levels(2)-levels(1)); + + + + + + if fig=='ON' then // if the defined output is only 1, the it will provide the graphical representation of //levels + + if length(s)==0 then + + plot(t,x, 'LineWidth',1, 'color', 'black') + + plot(t,upperreference * ones(1, length(t)),'-r', 'LineWidth',0.5) + + plot(t,lowerreference * ones(1, length(t)),'-g', 'LineWidth',0.5) + + + plot(t,mostupperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + plot(t,levels(2) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,upperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + + + plot(t,lowerbound *ones(1, length(t)),'--g', 'LineWidth',0.5) + + plot(t,levels(1) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,mostlowerbound * ones(1, length(t)),'--g', 'LineWidth',0.5) + + xlabel("Time (second)", "fontsize",3, "color", "black" ) + ylabel("Level (Volts)", "fontsize",3, "color", "black" ) + + + legends(["Signal"; "upper boundary"; "upper state"; "lower boundary"; "upper reference"; "lower reference"; "upper boundary"; "lower state"; "lower boundary"], [[1;1], [5;2], [1;2], [5;2], [5;1], [3;1], [3;2], [1;2], [3;2]], opt='?') + + + else + + + plot(t,x, 'LineWidth',1, 'color', 'black') + + plot(t,upperreference * ones(1, length(t)),'-r', 'LineWidth',0.5) + + plot(t,lowerreference * ones(1, length(t)),'-g', 'LineWidth',0.5) + + rects=[lowercrossvalue; upperreference*ones(lowercrossvalue); ss; (upperreference-lowerreference)*ones(s)] + + col=-10*ones(s); + + xrects(rects, col); + + plot(uppercrossvalue, upperreference*ones(uppercrossvalue), "r*", 'MarkerSize',15); + + plot(lowercrossvalue, lowerreference*ones(lowercrossvalue), "g*", 'MarkerSize',15); + + plot(t,mostupperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + plot(t,levels(2) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,upperbound * ones(1, length(t)),'--r', 'LineWidth',0.5) + + + + plot(t,lowerbound *ones(1, length(t)),'--g', 'LineWidth',0.5) + + plot(t,levels(1) * ones(1, length(t)),'--k', 'LineWidth',0.5) + + plot(t,mostlowerbound * ones(1, length(t)),'--g', 'LineWidth',0.5) +// + xlabel("Time (second)", "fontsize",3, "color", "black" ) + ylabel("Level (Volts)", "fontsize",3, "color", "black" ) + + + legends(["slewrate"; "Signal"; "upper cross"; "lower cross"; "upper boundary"; "upper state"; "lower boundary"; "upper reference"; "lower reference"; "upper boundary"; "lower state"; "lower boundary"], [[-11; 2] , [1;1], [-10;5], [-10;3], [5;2], [1;2], [5;2], [5;1], [3;1], [3;2],[1;2], [3;2]], opt='?') + + end + end + + +endfunction diff --git a/macros/sos2cell.bin b/macros/sos2cell.bin Binary files differnew file mode 100644 index 0000000..924a4b6 --- /dev/null +++ b/macros/sos2cell.bin diff --git a/macros/sos2cell.sci b/macros/sos2cell.sci new file mode 100644 index 0000000..be40667 --- /dev/null +++ b/macros/sos2cell.sci @@ -0,0 +1,93 @@ +function c = sos2cell(s,g) +//Converts a second order section matrix to a cell array +//Calling Sequences +//c=sos2cell(s) +//c=sos2cell(s,g) +//Parameters +//s +//An L-by-6 matrix where L is the number of sections +//g +//The scalar gain +//Description +//c=sos2cell(s) converts an L-by-6 second-order-section matrix s given by: +// s = [B1 A1 +// B2 A2 +// ... +// BL AL] +//to a cell array c = { {B1},{A1}, {B2},{A2}, ... {BL},{AL}} where each +//numerator vector Bi and denominator vector Ai contains the coefficients of a +//linear or quadratic polynomial. If the polynomial is linear, the coefficients +//zero-padded on the right +//c=sos2cell(s,g) adds a leading gain term to the start of the cell array as: +//c={ {[g,1]},{B1},{A1}, {B2},{A2}, ... {BL},{AL}} +//Example +//s=rand(2,6) +// s = +// +// +// column 1 to 5 +// +// 0.0437334 0.2639556 0.2806498 0.7783129 0.1121355 +// 0.4818509 0.4148104 0.1280058 0.2119030 0.6856896 +// +// column 6 +// +// 0.1531217 +// 0.6970851 +// +//sos2cell(s,2) +// ans = +// +// +// +// column 1 to 3 +// +//![2,1] [0.0437334,0.2639556,0.2806498] [0.7783129,0.1121355,0.1531217] ! +// +// column 4 to 5 +// +//![0.4818509,0.4148104,0.1280058] [0.2119030,0.6856896,0.6970851] ! +//Author +//Ankur Mallick + if(argn(2)<2) + g=[]; + end + if g==1 + g=[]; + end + if(~or(type(s)==[1 5 8])|ndims(s)~=2|size(s,2)~=6) + error('Invalid Entry'); + end + L=size(s,1); + if ((L==1)&(~isempty(g))&(s==[1, 0, 0, 1, 0, 0])) + s=g*s; + g=[]; + end + c=cell(1,2*L); + k=0; + if(~isempty(g)) + c=cell(1,2*L+1); + c(1,1).entries=[g, 1]; + k=1; + end + for i=1:2:2*L + j=ceil(i/2); + sa=s(j,1:3); + ma=max(find(sa~=0)); + sb=s(j,4:6); + mb=max(find(sb~=0)); + cs=cell(1,2); + if(~isempty(ma)) + cs(1,1).entries=sa(1:ma); + else + cs(1,1).entries=[]; + end + if(~isempty(mb)) + cs(1,2).entries=sb(1:mb); + else + cs(1,2).entries=[]; + end + c(k+i)=cs(1,1); + c(k+i+1)=cs(1,2); + end +endfunction diff --git a/macros/sos2ss.bin b/macros/sos2ss.bin Binary files differnew file mode 100644 index 0000000..03d1147 --- /dev/null +++ b/macros/sos2ss.bin diff --git a/macros/sos2ss.sci b/macros/sos2ss.sci new file mode 100644 index 0000000..c13f688 --- /dev/null +++ b/macros/sos2ss.sci @@ -0,0 +1,44 @@ +//Author: Parthasarathi Panda +//parthasarathipanda314@gmail.com +function [A,B,C,D]=sos2ss(sos,g) + [nargout,nargin]=argn(); + if nargin==1 then + g=1; + end + if type(sos)~=1 | type(g)~=1 then + error('check the data type of input'); //to check if the inputs are real/complex arrays + end + if size(g)~=[1,1] then + error('check the data type of input'); //to check that n is single dimensional + end + //checking if sos is a 6 column matrix + [d,j]=size(sos); + if j~=6 then + error('sos should be a 6-column matrix'); + end + + num=[1]; + den=[1]; + //convolving the numerator and denominator to get the coefficient of the numerator and the denominator at the top and bottom + for i=[1:d] + num=convol(num,sos(i,1:3)); + den=convol(den,sos(i,4:6)); + end + + if den(t)==0 then + error('improper transfer function check input'); + end + + t=2*d+1; //polynomial degree + A=zeros(t-1,t-1); + if t>2 then + A(2:(t-1),1:(t-2))=eye(t-2,t-2); + end + A(1,:)=-1*den(2:t)/den(1); + B=zeros(t,1); + B(1)=1/den(1); //constructing (A,B) in canonical controllable form + + C=g*(num(2:t)-den(2:t)*num(1)/den(1));//appropiate C and D + D=g*num(1)/den(1); + +endfunction diff --git a/macros/sos2tf.bin b/macros/sos2tf.bin Binary files differnew file mode 100644 index 0000000..31a8c0e --- /dev/null +++ b/macros/sos2tf.bin diff --git a/macros/sos2tf.sci b/macros/sos2tf.sci new file mode 100644 index 0000000..0ee0d3e --- /dev/null +++ b/macros/sos2tf.sci @@ -0,0 +1,35 @@ +function [B,A] = sos2tf(sos, g) +//This function converts series second-order sections to direct H(z) = B(z)/A(z) form. +//Calling Sequence +//[B] = sos2tf(sos) +//[B] = sos2tf(sos, g) +//[B,A] = sos2tf(...) +//Parameters +//sos: matrix of real or complex numbers +//g: real or complex value, default value is 1 +//Description +//This is an Octave function. +//This function converts series second-order sections to direct H(z) = B(z)/A(z) form. +//The input is the sos matrix and the second parameter is the overall gain, default value of which is 1. +//The output is a vector. +//Examples +//[a,b]=sos2tf([1,2,3,4,5,6]) +//a = +// 1 2 3 +//b = +// 4 5 6 +funcprot(0); +rhs = argn(2) +if(rhs<1 | rhs>2) +error("Wrong number of input arguments.") +end + + + + select(rhs) + case 1 then + [B,A] = callOctave("sos2tf",sos) + case 2 then + [B,A] = callOctave("sos2tf",sos,g) + end +endfunction diff --git a/macros/sos2zp.bin b/macros/sos2zp.bin Binary files differnew file mode 100644 index 0000000..34e81b4 --- /dev/null +++ b/macros/sos2zp.bin diff --git a/macros/sos2zp.sci b/macros/sos2zp.sci new file mode 100644 index 0000000..98abc36 --- /dev/null +++ b/macros/sos2zp.sci @@ -0,0 +1,41 @@ +function [z,p,k] = sos2zp (sos, g) +//This function converts series second-order sections to zeros, poles, and gains (pole residues). +//Calling Sequence +//z = sos2zp (sos) +//z = sos2zp (sos, g) +//[z, p] = sos2zp (...) +//[z, p, k] = sos2zp (...) +//Parameters +//sos: matrix of real or complex numbers +//g: real or complex value, default value is 1 +//z: column vector +//p: column vector +//Description +//This is an Octave function. +//This function converts series second-order sections to zeros, poles, and gains (pole residues). +//The input is the sos matrix and the second parameter is the overall gain, default value of which is 1. +//The outputs are z, p, k. z and p are column vectors containing zeros and poles respectively, and k is the overall gain. +//Examples +//[a,b,c]=sos2zp([1,2,3,4,5,6]) +//a = +// -1.0000 + 1.4142i +// -1.0000 - 1.4142i +//b = +// -0.6250 + 1.0533i +// -0.6250 - 1.0533i +//c = 1 + +funcprot(0); +rhs = argn(2) +if(rhs<1 | rhs>2) +error("Wrong number of input arguments.") +end + + select(rhs) + case 1 then + [z,p,k] = callOctave("sos2zp",sos) + case 2 then + [z,p,k] = callOctave("sos2zp",sos,g) + end +endfunction + diff --git a/macros/sosbreak.bin b/macros/sosbreak.bin Binary files differnew file mode 100644 index 0000000..de8d621 --- /dev/null +++ b/macros/sosbreak.bin diff --git a/macros/sosbreak.sci b/macros/sosbreak.sci new file mode 100644 index 0000000..dc78f95 --- /dev/null +++ b/macros/sosbreak.sci @@ -0,0 +1,34 @@ +//Author: Parthasarathi Panda +//parthasarathipanda314@gmail.com +function [zerosort,g]=sosbreak(p) +//function for breaking a polynomial in second order polynomials (and an extra linear) + [zero,g]=factors(p);//factorising into real coefficient polynomials + degn=degree(p); + zerosort=list(); + //to segregate linear and quadratic factors + for i=[1:length(zero)] + q=zero(i); + //putting the quadratic factor at the front + if degree(q)==2 then + zerosort(0)=q; + //putting the linear factor at the end + else + zerosort($+1)=q; + end + end + + if (modulo(degn,2))==0 then + e=length(zerosort); + //leave the last linear element if an odd degree polynomial + else + e=length(zerosort)-1; + end + for i=[e:-2:1] + q=zerosort(i); + if degree(q)==2 then + break; + end + zerosort(i)=q*zerosort(i-1);//combining 2 linear polynomial into one quadratic polynomial + zerosort(i-1)=null();//removing leftover linear polynomial + end +endfunction diff --git a/macros/sosfilt.bin b/macros/sosfilt.bin Binary files differnew file mode 100644 index 0000000..3d70709 --- /dev/null +++ b/macros/sosfilt.bin diff --git a/macros/sosfilt.sci b/macros/sosfilt.sci new file mode 100644 index 0000000..cff4d58 --- /dev/null +++ b/macros/sosfilt.sci @@ -0,0 +1,20 @@ +function [y]=sosfilt(sos,x) + +// Second order section IIR filtering of x. +// Calling Sequence +// [y]=sosfilt(sos,x) +// Parameters +// sos: Real or complex valued Lx6 vector or matrix +// x: Real or complex valued vector or matrix +// Description +// This is an Octave function +// Second order section digital filter sos is applied to the input vector and the output vector obtained is of the same length. +// Examples +// 1. sosfilt([1 2 3 4 5 6],[-1 10i;1 2]) +// ans =[ -0.25000 0.00000; 0.06250 0.50000] +// 2. sosfilt([32 28 84 47 2 29],-1) +// ans = -0.68085 + +funcprot(0); +y=callOctave("sosfilt",sos,x) +endfunction diff --git a/macros/specgram.bin b/macros/specgram.bin Binary files differnew file mode 100644 index 0000000..9ce781f --- /dev/null +++ b/macros/specgram.bin diff --git a/macros/specgram.sci b/macros/specgram.sci new file mode 100644 index 0000000..3af24f1 --- /dev/null +++ b/macros/specgram.sci @@ -0,0 +1,21 @@ +function [S_r, f_r, t_r] = specgram(x,n,fs,window,overlap) + +funcprot(0); +rhs = argn(2) + +if(rhs<1 | rhs>5) +error("Wrong number of input arguments.") +end + select(rhs) + case 1 then + [S_r, f_r, t_r] = callOctave("specgram",x) + case 2 then + [S_r, f_r, t_r] = callOctave("specgram",x,n) + case 3 then + [S_r, f_r, t_r] = callOctave("specgram",x,n,fs) + case 4 then + [S_r, f_r, t_r] = callOctave("specgram",x,n,fs,window) + case 5 then + [S_r, f_r, t_r] = callOctave("specgram",x,n,fs,window,overlap) + end +endfunction diff --git a/macros/ss2sos.bin b/macros/ss2sos.bin Binary files differnew file mode 100644 index 0000000..9dd7ba3 --- /dev/null +++ b/macros/ss2sos.bin diff --git a/macros/ss2sos.sci b/macros/ss2sos.sci new file mode 100644 index 0000000..caf2def --- /dev/null +++ b/macros/ss2sos.sci @@ -0,0 +1,63 @@ +//Author: Parthasarathi Panda +//parthasarathipanda314@gmail.com +function [sos,g]=ss2sos(A,B,C,D) +//not taking if, order and scale as input since they do not seem useful + if (type(A)~=1 | type(B)~=1 | type(C)~=1 | type(D)~=1) then + error('check input types'); + end + if (length(size(A))~=2 | length(size(B))~=2 | length(size(C))~=2 | length(size(D))~=2) then + error('input must be 2d matrices'); + end + if (norm(imag(A))~=0 | norm(imag(B))~=0 | norm(imag(C))~=0 | norm(imag(D))~=0) then + error('input must be real matrices'); + end + //cross checking dimensions of matrix + if size(D)~=[1,1] then + error('for single input single output, D must be 1 by 1'); + end + [n,k]=size(B); + if k~=1 then + error('for single input single output, B must be column matrix'); + end + [n,k]=size(C); + if n~=1 then + error('for single input single output, C must be row matrix'); + end + if size(A)~=[1,1] then + error('A must be square matrix'); + end + //obtaining the transfer function(continuous) + tf=ss2tf(syslin('c',A,B,C,D)); + //factorising the numerator and the denominator into second order systems + [zero,gn]=sosbreak(numer(tf));//function is defined in the same folder + [pole,gd]=sosbreak(denom(tf)); + //reducing each pair of second order in the necessary form + sos=[]; + for i=[1:length(pole)] + den=pole(i); + // if no polynomial is left in the numerator + if i>length(zero) then + //z^(-1) is in the numerator if the denominator in linear + if degree(den)==1 then + b=[0,1,0]; + //z^(-2) is in the numerator if the denominator is quadratic + else + b=[0,0,1]; + end + //if polynomial is left + else + b=coeff(zero(i));//obtain coefficient of the polynomial + b=[b,zeros(1,degree(den)+1-length(b))];//add a zero in the end if the numerator is linear and denominator is quadratic + b=b($:-1:1);//reverse the coefficients + b=[b,zeros(1,3-length(b))];//add a zero if both numerator and denominator are linear + end + a=coeff(den);//coefficient of the denominator + a=a($:-1:1);//reversing the coefficients + a=[a,zeros(1,3-length(a))];//adding zeros if the denominator is linear + v=[b,a]; + sos=[sos;v]//adding the second order sub-system + end + + g=gn/gd;//computing the gain + +endfunction diff --git a/macros/statelevels.bin b/macros/statelevels.bin Binary files differnew file mode 100644 index 0000000..acdb468 --- /dev/null +++ b/macros/statelevels.bin diff --git a/macros/statelevels.sci b/macros/statelevels.sci new file mode 100755 index 0000000..d21a4f8 --- /dev/null +++ b/macros/statelevels.sci @@ -0,0 +1,310 @@ +function [levels, histogram, bins] = statelevels (x, varargin) // defining function + + // This function estimate statelevels of real vector X via histogram. + // Calling Sequence + // levels=statelevels(x, nbins, method, bounds) + // [levels histogram]=statelevels(x, nbins, method, bounds) + // [levels histogram bins]=statelevels(x, nbins, method, bounds) + // [levels histogram bins]=statelevels(x, nbins, method, bounds, 'fig', On or Off) + // Parameters + // x: real vector + // nbins: number of histogram bins to use in the histogram as a positive scalar, where the default value is 100 + // method: method to estimate the statelevels using specified METHOD as one of 'mean' or 'mode', where the default value is 'mode' + // bounds: specify the lower and upper bound for the histogram as a two-element row vector + // fig: specify the logical input value to display figure as one of 'on' or 'off', where the default input in 'off'. + // levels: return lower and upper level values + // histogram: return histogram values + // bins: return binlevels values + // Examples + // x=[1.2, 5, 10, -20, 12] + // nbins=10 + // method='mode' + // bounds=[1 10] + // levels=statelevels(x, nbins, method, bounds) + // See also + // Authors + // Jitendra Singh + + + + + + if or(type(x)==10) then + error ('Input arguments must be double.') +end +if size(x,2)==1 | size(x,1)==1 then +else + error("Input x should be a vector"); +end +if length(x) < 2 then // checking the length of input datasat + error('X must be a vector with more than one element.'); // if length of X is less 2, it will give error +end + +if length(varargin)>5 then + error('Wrong number on input arguments.') +end + +if length(varargin)==0 then + nbins=100; // defining the default value of no of bins + method='mode'; // defing the defualt method 'mode' + bounds=[min(x) max(x)]; + fig='off'; +end + + +if length(varargin)==1 then + + if varargin(1) =='fig' then + error('input argument fig required a values.') + else + nbins=varargin(1); + method='mode'; // defing the defualt method 'mode' + bounds=[min(x) max(x)]; + fig='off'; + + end +end + + +if length(varargin)==2 then + nbins=100; + fig='off'; + bounds=[min(x) max(x)]; + method='mode'; + if varargin(1)=='fig' + fig=varargin(2) + elseif varargin(2)=='fig' then + nbins=varargin(1); + error ('input argument fig required a values.') + +elseif varargin(1)~='fig' & varargin(2)~='on' | varargin(2)~='off' then + nbins=varargin(1); + method=varargin(2); + +end + +end + + +if length(varargin)==3 then + nbins=varargin(1); + method='mode'; + bounds=[min(x) max(x)]; + fig='off'; + if varargin(2)== 'fig' then + fig=varargin(3) + elseif varargin(3)=='fig' then + error ('input argument fig required a values.') + else + method=varargin(2); + bounds=varargin(3); + end + + + end + + +if length(varargin)==4 then + nbins=varargin(1); + method=varargin(2); + bounds=[min(x) max(x)]; + fig='off'; + + if varargin(3)=='fig' then + fig=varargin(4) + elseif varargin(4)=='fig' then + error ('input argument fig required a values.') + elseif varargin(4)~='fig' then + error('Unexpected input argument.') + else + bounds=varargin(3); + end + +end + + +if length(varargin)==5 then + nbins=varargin(1); + method=varargin(2); + bounds=varargin(3); + if varargin(4)=='fig' then + fig=varargin(5); + else + error('Wrong input argument.') + end + +end + + + if and(x==0) then + levels=zeros(1,2) + histogram1=13; + xx=zeros(1, (nbins-1)); + histogram=[histogram1,xx]; + bins=zeros(1,nbins); + + else + + if type(nbins)==10 then // checking, if nbins if numeric aur charactr + error ('Expected NBINS to be one of these types: double, Instead its type was char.'); + end +if pmodulo(nbins,1)==0 then // checking, if nbins is integert or not +else + error ('Size inputs must be integers.') +end + +if length(nbins)~=1 then + error('Expected NBINS to be a scalar.') +end + + + + if method == 'mode' | method == 'mean' then // method should be either mean or mode + else + error('Expected METHOD to match one of these strings: mean or mode'); + end + + + + + if type(bounds)==10 then // checking, if nbins if numeric aur charactr + error ('Expected BOUNDS to be one of these types: double, Instead its type was char.'); +end + +if length(bounds)~=2 then + s=size(bounds); + error(strcat(["Expected BOUNDS to be of size 1x2 when it is actually size", " ", string(s(1)), "x", string(s(2))])) +end + + +//if bounds(2)>0 | bounds (1)>0 then +// +//if bounds(2)>bounds(1) then +// lower=bounds(1) +// upper=bounds(2); +// else +// error('BOUNDS must be strictly increasing.') +//end +//end + +if bounds(2)<=bounds(1) then + error('BOUNDS must be strictly increasing.') +else + lower=bounds(1); + upper=bounds(2); +end + +if bounds(2)==0 & bounds (1)==0 then + lower=0; + upper=0; +end + + if fig == 'off' | fig == 'on' then // method should be either mean or mode + else + error('Expected fig to match one of these strings: on or off'); + end + + denomm = upper-lower; + if denomm==0 then + denomm = 2.220D-16 ; + end + + idx = nbins * (x-lower)/denomm; + idx = ceil(idx) + (idx==0); + idx = idx(idx>=1 & idx<=nbins); + histo = zeros(nbins, 1); + for i=1:length(idx) + histo(idx(i)) = histo(idx(i)) + 1; // calculationf histogram + end + + + + +dy = (upper - lower) / length(histo); +index=find(histo>0); + +if isempty(index) then + iLowerRegion=[] + iUpperRegion=[] + +else + nn=length(index); + iLowerRegion = index(1); + + iUpperRegion = index(nn); +end + + if isempty(iLowerRegion) | isempty(iUpperRegion) then + levels = ['NaN' 'NaN']; + else + + + iLow = iLowerRegion(1); + iHigh = iUpperRegion(1); + + // define the lower and upper histogram regions halfway + //between the lowest and highest nonzero bins. + lLow = iLow; + lHigh = iLow + floor((iHigh - iLow)/2); + uLow = iLow + floor((iHigh - iLow)/2); + uHigh = iHigh; + + lHist = histo(lLow:lHigh); // defing lower and upper histogram + uHist = histo(uLow:uHigh); + + levels = zeros(1,2); + if (method == 'mode') then // if method is mode, calculate upper and lower levels + [j iMax] = max(lHist); + [k iMin] = max(uHist); + levels(1) = lower + dy * (lLow + iMax(1) - 1.5); + levels(2) = lower + dy * (uLow + iMin(1) - 1.5); + elseif (method=='mean') then // if method is mean, calculate lower and upper levels + levels(1) = lower + dy * sum(((lLow:lHigh)-0.5).* (lHist)') / sum(lHist); + levels(2) = lower + dy * sum(((uLow:uHigh)-0.5).* (uHist)') / sum(uHist); + end + + // calculation bins + + end + + histogram=histo; + bins = lower + ((1:nbins) - 0.5)' * (upper - lower) / nbins; + + + + if fig=='on' then // if the defined output is only 1, the it will provide the graphical representation of //levels + + if levels(1)=='NaN' | levels(2)=='NaN' then + subplot(2,1,1) + plot(x, '-k', 'LineWidth',2) + xlabel("Samples", "fontsize",3, "color", "black" ) + ylabel("Level (Volts)", "fontsize",3, "color", "black" ) + title("Signal", "fontsize",3) + + subplot(2,1,2) + plot(bins,histogram, '-k', 'LineWidth',2) + xlabel("Level (Volts)", "fontsize",3, "color", "black" ) + ylabel("Count", "fontsize",3, "color", "black" ) + title("Histogram of the signal levels", "fontsize",3) + + else + subplot(2,1,1) + plot(x, '-k', 'LineWidth',2) + plot([1 length(x)],levels(1) * [1 1],'-.r', 'LineWidth',2) + plot([1 length(x)],levels(2) * [1 1],'-.r', 'LineWidth',2) + xlabel("Samples", "fontsize",3, "color", "black" ) + ylabel("Level (Volts)", "fontsize",3, "color", "black" ) + title("Signal", "fontsize",3) + + subplot(2,1,2) + plot(bins,histogram, '-k', 'LineWidth',2) + xlabel("Level (Volts)", "fontsize",3, "color", "black" ) + ylabel("Count", "fontsize",3, "color", "black" ) + + title("Histogram of the signal levels", "fontsize",3) + end + end + end + + + endfunction diff --git a/macros/stmcb.bin b/macros/stmcb.bin Binary files differnew file mode 100644 index 0000000..3fecc2b --- /dev/null +++ b/macros/stmcb.bin diff --git a/macros/stmcb.sci b/macros/stmcb.sci new file mode 100644 index 0000000..938bc77 --- /dev/null +++ b/macros/stmcb.sci @@ -0,0 +1,92 @@ +//Compute linear model using Steiglitz-McBride iteration +//calling syntax +//[b,a] = stmcb(h,nb,na) +//[b,a] = stmcb(y,x,nb,na) +//[b,a] = stmcb(h,nb,na,niter) +//[b,a] = stmcb(y,x,nb,na,niter) +//[b,a] = stmcb(h,nb,na,niter,ai) +//[b,a] = stmcb(y,x,nb,na,niter,ai) +//b,a : coefficients of the system b(z)/a(z) +//h:impulse response of the system +//x,y: input and output of same length given to the system +//niter: no of iterations +//ai:initial estimate of the denominator coefficients +//Accepts only real i/ps , imaginary i/ps are not accepted due to limitations of the 'filter' function in Scilab +function [b,a] = stmcb( x, u_in, q, p, niter, a_in ) + + narginchk(3, 6, argn(2)); + //modify stmcb to handle exceptions when i/p is char + if(type(x)==10 | type(u_in)==10) then + error("Input in stmcb must be double/single, instead it was char"); + end + if length(u_in) == 1 then + if argn(2) == 3 then + niter = 5; + p = q; + q = u_in; + a_in = prony(x, 0, p); + + elseif argn(2) == 4 + niter = p; + p = q; + q = u_in; + a_in = prony(x, 0, p); + + elseif argn(2) == 5 + a_in = niter; + niter = p; + p = q; + q = u_in; + + end + [x_row, x_col] = size(x); + u_in = zeros(x_row, x_col); + u_in(1) = 1; + + else + if length(u_in) ~= length(x) then + error('Input Signal x and Output Signal Y must have the same length'); + end + + if argn(2) < 6 then + [b, a_in] = prony(x, 0, p); + end + + if argn(2) < 5 then + niter = 5; + end + + end + + a = a_in; + N = length(x); + + for i = 1:niter + u = filter(1, a, x); + v = filter(1, a, u_in); + C1 = convmtx(u(:),p+1); + C2 = convmtx(v(:),q+1); + T = [ -C1(1:N,:) C2(1:N,:)]; + c = T(:,2:p+q+2)\(-T(:,1)); + a = [1; c(1:p)]; + b = c(p+1:p+q+1); + + end + + a = a.'; + b = b.'; + + + +endfunction + +function narginchk(min_argin, max_argin, num_of_argin) + if num_of_argin < min_argin then + error('Not enough input arguments') + end + + if num_of_argin > max_argin then + error('Too many input arguments') + end + +endfunction diff --git a/macros/strips.bin b/macros/strips.bin Binary files differnew file mode 100644 index 0000000..45199f3 --- /dev/null +++ b/macros/strips.bin diff --git a/macros/strips.sci b/macros/strips.sci new file mode 100644 index 0000000..007787a --- /dev/null +++ b/macros/strips.sci @@ -0,0 +1,113 @@ +function strips(x,sd,Fs,scale) +//Plots vector or matrix in strips +//Calling Sequence +//strips(x); +//strips(x,sd); +//strips(x,sd,fs); +//strips(x,sd,fs,scale); +//Parameters +//x +//A vector or a matrix +//sd +//Strip duration +//fs +//Sampling frequency +//scale +//Scaling parameter for vertical axis +//Description +//strips(x) +//Plots a vector x in horizontal strips of length 250 +//If x is a matrix, it plots each column of x on a separate strip with the leftmost +//column as the topmost strip +//strips(x,sd) +//Plots x in strips of length sd samples each +//strips(x,sd,fs) +//Plots x in strips of duration sd seconds with sampling frequency fs (in Hz) +//strips(x,sd,fs,scale) +//Plots x in strips as above, and scales the vertical axis by scale +//If x is a matrix, strips uses a column vector of all the elements of x for the strip plot +//If x has complex entries, only the real part of those entries are considered +//Author +//Ankur Mallick + funcprot(0); + if(argn(2)<1|argn(2)>4) + error('Incorrect number of input arguments.'); + else + if(or(imag(x)~=0)) + warning('Only real parts will be considered'); + x=real(x); + end + S=size(x); + if(min(S)==1) + x=x(:); + S=size(x); + end + if(argn(2)<4) + scale=1 + end + if(argn(2)<3) + Fs=1; + end + if(argn(2)<2) + if(min(S)==1) + sd=250; + else + sd=S(1); + end + end + Lstrip=ceil(sd*Fs); //Length of each strip + if(pmodulo(S(1),Lstrip)==1) + x=x(1:S(1)-1,:); //If only 1 point is left in each row, then it is discarded + S=size(x); + end + Nstrip=ceil(S(1)/Lstrip); + x1=x(~isnan(x)); + xmin=min(x1(:)); + xmax=max(x1(:)); + x0=(xmin+xmax)/2; + x=scale*x; + //adding NaNs + if (Lstrip*Nstrip>S(1)) + x(S(1)+1:Lstrip*Nstrip,:)=%nan*ones(Lstrip*Nstrip-S(1),S(2)); + end + //Computing vertical deviations to add to x + del=(xmax-xmin)/4 + sep =5*(xmax-xmin)/4; + if(sep == 0) + sep = 1; + end + dev=(Nstrip-1:-1:0)*sep; + y=zeros((Lstrip+1)*Nstrip,S(2)); + for i = 1:S(2) + y1=[matrix(x(:,i),Lstrip,Nstrip); %nan*ones(1,Nstrip)]; + //Adding vertical deviation to x + y1=y1-x0+dev(ones(Lstrip+1,1),:); + y(:,i) = y1(:); + end + //Computing horizontal (time) axis + t=[((0:Lstrip-1)'/Fs)*ones(1,Nstrip); %nan*ones(1,Nstrip)]; + t = t(:); + //Computing yticks and yticklabels + yt=((0:Nstrip-1)*sep)'; //yticks + width=32; + s1=ones(Nstrip, width)*ascii(' '); + s=matrix(char(s1(:)),Nstrip,width); + col=width+1; + for i=1:Nstrip + str=string((i-1)*sd); + str1=(strsplit(str))' + s(i,width-length(str)+1:width)=str1; + col=min(col,width-length(str)+1); + end + s=s($:-1:1,:) + s=char(s(:,col:width)); //yticklabels + //Plotting and setting axes properties + figure + plot(t,y) + a=gca(); + a.y_ticks=tlist(['ticks','locations','labels'],yt,s) + a.data_bounds=[0,xmin-x0-del;sd,xmin-x0+sep*Nstrip]; + a.tight_limits='on'; + a.grid=[-1,1] + end +endfunction diff --git a/macros/subspaceMethodsInputParser.bin b/macros/subspaceMethodsInputParser.bin Binary files differnew file mode 100644 index 0000000..e2ae41b --- /dev/null +++ b/macros/subspaceMethodsInputParser.bin diff --git a/macros/subspaceMethodsInputParser.sci b/macros/subspaceMethodsInputParser.sci new file mode 100644 index 0000000..1396c86 --- /dev/null +++ b/macros/subspaceMethodsInputParser.sci @@ -0,0 +1,396 @@ +// Date of creation: 17 Dec, 2015 +function [data, msg, err_num] = subspaceMethodsInputParser(inputArgsList) + // Input parser to be used by pmusic and peig + + // primaryInput, p, w, nfft, fs, nwin, noverlap, freqrange, isCorrFlag + + // NOTE: not accepting <x,p,w,nfft> as it is indistinguishable from <x,p,f,fs> + + // Input combinations + // x, p + // x, p, w + // x, p, nfft + // x, p, nfft, fs + // x, p, f, fs + // x, p, nfft, fs, nwin, noverlap + + // 'corr' flag with everyone + // freqrange string + + + + // Output arguments description: + // data - struct with the following arguments + // x - input signal or correlation matrix + // p - scalar|2-element vector - signal subspace parameters + // w/f - vector + // nfft - positive scalar + // fs - positive scalar + // isWindowSpecified - boolean indicating if window specified in the + // input params + // windowLength - positive scalar + // windowVector - vector + // noverlap - scalar + // freqrange - string + // isCorrFlag - boolean + // isFsSpecified - boolean indicating if fs argument is present + // (fs can be empty) + // + // msg - error message (if any) + // err_num - error number (if any; otherwise -1) + + + msg = ""; + err_num = -1; + data = struct(); + + numOfInputArgs = length(inputArgsList); + + // ****getting indices of all string input arguments**** + stringIndices = list(); + for i=1:numOfInputArgs + e = inputArgsList(i); + if type(e)==10 then + stringIndices($+1)=i; + end + end + + + isCorrFlag = %F; + isOneSided = %F; + isTwoSided = %F; + isCentered = %F; + + if ~isempty(stringIndices) then + // ****checking for corr flag**** + isCorrFlag = or(strcmpi(inputArgsList(stringIndices),"corr")==0); + + // ****checking for freqrange**** + isOneSided = or(strcmpi(inputArgsList(stringIndices),"onesided")==0); + isTwoSided = or(strcmpi(inputArgsList(stringIndices),"twosided")==0 ... + | strcmpi(inputArgsList(stringIndices),"whole")==0); + isCentered = or(strcmpi(inputArgsList(stringIndices),"centered")==0); + end + + freqrange = ""; + if isTwoSided then + freqrange = "twosided"; + elseif isCentered then + freqrange = "centered"; + else + freqrange = "onesided"; + end + + // deleting the string arguments from inputArgsList + for index=stringIndices + inputArgsList(index) = null(); + end + + + L = length(inputArgsList); + if L<2 then + msg = "Input arguments must have x (signal) or R (corr. matrix)" + ... + "as 1st argument and p as 2nd argument"; + err_num = 72; + return + elseif L>6 then + msg = "Atmost 6 numeric arguments expected"; + err_num = 72; + return + end + + + // **** extracting x/R (signal/corr. matrix) + primaryInput = inputArgsList(1); + + if ndims(primaryInput)<1 | ndims(primaryInput)>2 then + msg = "Wrong dimensions for argument #1; must be a vector or a matrix"; + err_num = 60; + return + end + if ~IsIntOrDouble(primaryInput, %F) then + msg = "Wrong type for argument #1; int or double expected"; + err_num = 84; + return + end + // covert to a column vector + if ndims(primaryInput)==1 then + primaryInput = primaryInput(:); + end + // casting to double + primaryInput = double(primaryInput); + + + //****extracting p**** + p = inputArgsList(2); + + // p must be either scalar or a 2-element vector + if length(p)~=1 & length(p)~=2 then + msg = "Wrong size of argument #2 (p); " + ... + "must be a scalar or a 2-element vector"; + err_num = 60; + return + end + // first argument of p must be an integer + if ~IsIntOrDouble(p(1),%T) then + msg = "Wrong type for p(1); must be a positive integer"; + err_num = 84; + return + end + p(1) = int(p(1)); + // TODO: check if positive required + // 2nd argument, if exists, must be a positive integer' + if length(p)==2 then + if ~IsIntOrDouble(p(2),%F) then + msg = "Wrong type for p(2); must be a scalar"; + err_num = 84; + return + end + end + + // ****extracting the remaining arguments**** + + // assigning default values + w = []; + fs = 1; + isFsSpecified = %F; + nfft = 256; + windowLength = 2*p(1); + isWindowSpecified = %F; + windowVector = []; + if windowLength==%inf then + windowLength=[]; + end + + noverlap = []; + + + if L==3 then + // (x,p,w), and (x,p,nfft) are candidates + temp3 = inputArgsList(3); + + + // should be a vector or a scalar + if size(temp3, 1)~=1 & size(temp3, 2)~=1 then + msg = "Wrong dimension for argument #3; must be a scalar|vector"; + err_num = 60; + return + end + + if isempty(temp3) then + nfft = 256; + elseif length(temp3)==1 then + // must be nfft + + // positive integer check + if ~type(temp3)==8 | temp3<=0 then + msg = "Wrong type for argument #3 (nfft); must be a positive integer"; + err_num = 84; + return + end + + nfft = temp3; + else + // must be w + + // numeric type check + if ~IsIntOrDouble(temp3, %F) & or(temp3<0) then + msg = "Wrong type for argument #3 (w); must be int or double"; + err_num = 82; + return + end + w = double(temp3(:)); // converting to column vector + end + + elseif L==4 then + // (x, p, nfft, fs), and (x, p, f, fs) are candidates + temp3 = inputArgsList(3); + temp4 = inputArgsList(4); + + // should be a vector + if size(temp3, 1)~=1 & size(temp3, 2)~=1 then + msg = "Wrong dimension for argument #3; must be a scalar/vector"; + err_num = 60; + return + end + + + if isempty(temp3) then + // nfft and fs + nfft = 256; + + if length(temp4)==1 then + if ~IsIntOrDouble(temp4, %T) then + msg = "Wrong type for argument #4 (fs); must be a positive scalar"; + err_num = 84; + return + end + fs = double(temp4); + isFsSpecified = %T; + end + elseif length(temp3)==1 then + // nfft, fs + + // positive integer check + if ~(type(temp3)==1 | type(temp3)==8) | temp3<=0 then + msg = "Wrong type for argument #3 (nfft); must be a positive integer"; + err_num = 84; + return + end + nfft = temp3; + + if length(temp4)==1 then + if ~IsIntOrDouble(temp4, %T) then + msg = "Wrong type for argument #4 (fs); must be a positive scalar"; + err_num = 84; + return + end + fs = double(temp4); + isFsSpecified = %T; + end + else + // (f,fs) + + // numeric type check + if ~IsIntOrDouble(temp3, %F) & or(temp3<0) then + msg = "Wrong type for argument #3 (f); must be int or double"; + err_num = 82; + return + end + w = double(temp3(:)); + + if length(temp4)~=1 then + msg = "Wrong dimension for argument #4 (fs); must be a positive scalar"; + err_num = 84; + return + else + if ~IsIntOrDouble(temp4, %F) then + msg = "Wrong type for argument #4 (fs); must be a positive scalar"; + err_num = 84; + return + end + fs = double(temp4); + isFsSpecified = %T; + end + end + + elseif L>=5 then + // nfft, fs, nwin, noverlap + nfft = inputArgsList(3); + fs = inputArgsList(4); + temp5 = inputArgsList(5); + if L==6 then + noverlap = inputArgsList(6); + end + + if isempty(nfft) then + nfft = 256; + elseif ~length(nfft)==1 | ~IsIntOrDouble(nfft,%T) then + msg = "Wrong type for argument #3 (nfft); must be a positive integer"; + err_num = 84; + return + end + + if isempty(fs) then + fs = 1; + elseif ~length(fs)==1 | ~IsIntOrDouble(fs, %T) then + msg = "Wrong type for argument #4 (fs); must be a positive scalar"; + err_num = 84; + return + else + isFsSpecified = %T; + end + + // parsing window paramater + if length(temp5)==1 then + // window length is specified + if ~IsIntOrDouble(temp5,%T) then + msg = "Wrong type for argument #5 (nwin); must be a positive integer or a numeric vector"; + err_num = 40; + return + end + windowLength = int(temp5); + isWindowSpecified = %T; + // windowVector = window('re',windowLength); + elseif ndims(temp5)==1 then + // window is specified + if ~IsIntOrDouble(temp5, %F) then + msg = "Wrong type for argument #5 (nwin); must be a positive integer or a numeric vector"; + err_num = 40; + return + end + windowVector = double(temp5(:)); + windowLength = length(windowVector); + isWindowSpecified = %T; + elseif ~isempty(temp5) then + msg = "Wrong type for argument #5 (nwin); must be a positive integer or a numeric vector"; + err_num = 40; + return + end + + + // noverlap + if isempty(noverlap) then + noverlap = windowLength-1; + elseif length(noverlap)==1 then + if ~(type(noverlap)==8 | type(noverlap)==1)| noverlap<0 then + msg = "Wrong type for argument #6 (noverlap); must be a non-negative integer"; + err_num = 84; + return; + end + noverlap = int(noverlap); + else + msg = "Wrong type for argument #6 (noverlap); must be a non-negative integer"; + err_num = 84; + return; + end + end + + // assigning default value for freqrange if not already specified + if length(freqrange)==0 then + if isreal(x) then + freqrange = "onesided"; + else + freqrange = "twosided"; + end + end + + + // normalizing w if it exists + if ~isempty(w) & isFsSpecified then + w = w*2*%pi/fs; + end + + + data.x = primaryInput; + data.p = p; + data.w = w; + data.nfft = nfft; + data.fs = fs; + data.isWindowSpecified = isWindowSpecified; + data.windowLength = windowLength; + data.windowVector = windowVector; + data.noverlap = noverlap; + data.freqrange = freqrange; + data.isCorrFlag = isCorrFlag; + data.isFsSpecified = isFsSpecified; + + +endfunction + +function result = IsIntOrDouble(inputNum, isPositiveCheck) + // Checks if The Input Is Integer Or Double + // Also Checks if It Is Greater Than 0 For IsPositiveCheck = True + + if ~(type(inputNum)==1 | type(inputNum)==8) then + result = %F; + return + end + if isPositiveCheck & or(inputNum<=0) then + result = %F; + return + end + + result = %T; + return +endfunction diff --git a/macros/taylorwin.sci~ b/macros/taylorwin.sci~ new file mode 100644 index 0000000..85ab015 --- /dev/null +++ b/macros/taylorwin.sci~ @@ -0,0 +1,83 @@ +//Taylor Window +TAYLORWIN(N) returns an N-point Taylor window in a column vector. +// +// TAYLORWIN(N,NBAR) returns an N-point Taylor window with NBAR nearly +// constant-level sidelobes adjacent to the mainlobe. NBAR must be an +// integer greater than or equal to one. +// +// TAYLORWIN(N,NBAR,SLL) returns an N-point Taylor window with SLL maximum +// sidelobe level in dB relative to the mainlobe peak. SLL must be a +// negative value, e.g., -30 dB. +// +//NBAR should satisfy NBAR >= 2*A^2+0.5, where A is equal to +//acosh(10^(-SLL/20))/pi, otherwise the sidelobe level specified is not +//guaranteed. If NBAR is not specified it defaults to 4. SLL defaults to +//-30 dB if not specified. + +//Author: Parthasarathi Panda +//parthasarathipanda314@gmail.com +//the function is for application on vectors only +//Modified function to reject negative window length and no of constant level sidelobes with appropriate error messages +function [w]=taylorwin(n,nbar,sll) + [nargout,nargin]=argn(); + if nargin<1 then + error("Not enough input arguments") + end + if nargin==1 then + nbar=4; + sll=-30; + elseif nargin==2 + sll=-30; + end + if type(n)~=1 | type(nbar)~=1 | type(sll)~=1 then + error('check the data type of input'); //to check if the inputs are real/complex arrays + end + + if size(n)~=[1,1] then + error('check the data type of input'); //to check that n is single dimensional + end + if floor(n)~=n | imag(n)~=0 then + error('check that n is an integer');//to check if n is an integer + end + + if size(nbar)~=[1,1] then + error('check the data type of input'); //to check that nbar is single dimensional + end + if floor(nbar)~=nbar | imag(nbar)~=0 then + error('check that nbar is an integer');//to check if nbar is an integer + end + + if size(sll)~=[1,1] then + error('check the data type of input'); //to check that sll is single dimensional + end + if sll>0 | imag(sll)~=0 then + error('The sidelobe level SLL must be a negative number.');//to check if sll is a negative no. + end + //check if window length is positive + if(n<0) then + error("The window length must be a positive integer"); + end + //check if no of constant level sidelobes is positive + if (nbar<=0) then + error("The number of nearly constant-level sidelobes NBAR must be a positive integer greater than 0."); + end + B=10^(-sll/20); + A=log(B+sqrt(B*B-1))/%pi; + sig=nbar*nbar/(A*A+(nbar-0.5)*(nbar-0.5)); + //computing Fm (the coefficients for the cosines + m=ones(nbar-1,1)*[1:nbar-1]; + i=([1:nbar-1])'*ones(1,nbar-1); + M=((1-((m.*m/sig)./(A*A+(i-0.5).*(i-0.5)))));//./(1-(m.*m)./(i.*i))); + m=[1:nbar-1]; + F=prod(M,1).*((-1)^(m+1)); + for m=1:nbar-1 + j=[[1:m-1],[m+1:nbar-1]]; + F(m)=F(m)/prod((1-(m.*m)./(j.*j))); + end + //computing the window + nv=ones(nbar-1,1)*([0:n-1]); + m=([1:nbar-1])'*ones(1,n); + M=cos(2*%pi*m.*(nv-(n-1)/2)/n); + w=ones(1,n)+F*M; + w=w'; +endfunction diff --git a/macros/tf2sos.bin b/macros/tf2sos.bin Binary files differnew file mode 100644 index 0000000..e0e70a9 --- /dev/null +++ b/macros/tf2sos.bin diff --git a/macros/tf2sos.sci b/macros/tf2sos.sci new file mode 100644 index 0000000..7570707 --- /dev/null +++ b/macros/tf2sos.sci @@ -0,0 +1,35 @@ +function [sos,varargout] = tf2sos (b, a) +//This function converts direct-form filter coefficients to series second-order sections. +//Calling Sequence +//[sos] = tf2sos (b, a) +//[sos, g] = tf2sos (b, a) +//Parameters +//b: matrix of real numbers +//a: matrix of real numbers +//Description +//This is an Octave function. +//This function converts direct-form filter coefficients to series second-order sections. +//The input parameters b and a are vectors specifying the digital filter H(z) = B(z)/A(z). +//The output is the sos matrix and the overall gain. +//If there is only one output argument, the overall filter gain is applied to the first second-order section in the sos matrix. +//Examples +//tf2sos([1,2,3,4,5,6],2) +//ans = +// 0.50000 0.80579 1.07239 1.00000 0.00000 0.00000 +// 1.00000 -1.10337 1.87524 1.00000 0.00000 0.00000 +// 1.00000 1.49180 -0.00000 1.00000 0.00000 0.00000 + +funcprot(0); +rhs = argn(2) +lhs = argn(1) + +if(rhs~=2) +error("Wrong number of input arguments.") +end + select(lhs) + case 1 then + sos = callOctave("tf2sos",b,a) + case 2 then + [sos,g] = callOctave("tf2sos",b,a) + end +endfunction diff --git a/macros/tf2zp.bin b/macros/tf2zp.bin Binary files differnew file mode 100644 index 0000000..2cfc2ce --- /dev/null +++ b/macros/tf2zp.bin diff --git a/macros/tf2zp.sci b/macros/tf2zp.sci new file mode 100644 index 0000000..7c482d5 --- /dev/null +++ b/macros/tf2zp.sci @@ -0,0 +1,72 @@ +// Transfer function to zero pole conversion +//[z,p,k]= tf2zp(b,a); +//z=zeros of the corrsponding tf +//p=poles of the corresponding tf +//k=gain of the tf +//b=vector containing the numerator coefficients of the transfer function in descending powers of s +//a=vector containing the denominator coefficients of the transfer function in descending powers of s +//For discrete-time transfer functions, it is highly recommended to +//make the length of the numerator and denominator equal to ensure +//correct results. You can do this using the function EQTFLENGTH in +//the Signal Processing Toolbox. +// +// +//Author +//Debdeep Dey + +function [z,p,k]=tf2zp(num,den) +numop=argn(1); +//take only the first row of numerator into consideration +num=num(1,:); +//remove leading columns of zeros from numerator +if ~isempty(num) then + while(num(:,1)==0 & length(num)>1) + num(:,1)=[]; + end +end +[rd,cod]=size(den); +[ny,np]=size(num); + +if(rd>1) then + error("Denominator must be row vector"); +elseif np>cod then + error("Improper transfer function"); +end +if (~isempty(den)) then + coef=den(1); +else + coef=1; +end +if coef ==0 then + error("Denominator must have non zero leading coefficient"); +end +//remove leading columns of zeros from numerator +if ~isempty(num) then + while(num(:,1)==0 & length(num)>1) + num(:,1)=[]; + end +end + +if (find(den==%inf) ~= [] | find(num==%inf) ~= []) then + error("Input to ROOTS must not contain NaN or Inf") +end +//poles + +p=roots(den); +//zeros and gain + +k=zeros(ny,1); +linf=%inf; + +z=linf(ones(np-1,1),ones(ny,1)); +for i=1:ny + zz=roots(num(i,:)); + if ~isempty(zz), z(1:length(zz), i) = zz; end + ndx = find(num(i,:)~=0); + if ~isempty(ndx), k(i,1) = num(i,ndx(1))./coef; end +end +z=roots(num); +endfunction + + + diff --git a/macros/tf2zpk.bin b/macros/tf2zpk.bin Binary files differnew file mode 100644 index 0000000..ed110d1 --- /dev/null +++ b/macros/tf2zpk.bin diff --git a/macros/tf2zpk.sci b/macros/tf2zpk.sci new file mode 100644 index 0000000..f919316 --- /dev/null +++ b/macros/tf2zpk.sci @@ -0,0 +1,20 @@ +//tf2zpk Convert transfer function filter parameters to zero-pole-gain +//form +//Calling Syntax : +// [z,p,k] = tf2zpk(b,a) +//where +//z=zeros of the corrsponding tf +//p=poles of the corresponding tf +//k=gain of the tf +//b=vector containing the numerator coefficients of the transfer function in descending powers of s +//a=vector containing the denominator coefficients of the transfer function in descending powers of s + +function [zero, pole, gain] = tf2zpk(num, den) + + if argn(2)< 2 | isempty(den) then + den = 1; + end + [num, den] = eqtflength(num, den); + [zero, pole, gain] = tf2zp(num, den); + +endfunction diff --git a/macros/transpose.bin b/macros/transpose.bin Binary files differnew file mode 100644 index 0000000..4531927 --- /dev/null +++ b/macros/transpose.bin diff --git a/macros/transpose.sci b/macros/transpose.sci new file mode 100644 index 0000000..53b2d4a --- /dev/null +++ b/macros/transpose.sci @@ -0,0 +1,6 @@ +function [y] = transpose(x) +funcprot(0); + +y = callOctave("transpose",x) + +endfunction diff --git a/macros/trial_iirlp2mb.bin b/macros/trial_iirlp2mb.bin Binary files differnew file mode 100644 index 0000000..89171e5 --- /dev/null +++ b/macros/trial_iirlp2mb.bin diff --git a/macros/trial_iirlp2mb.sci b/macros/trial_iirlp2mb.sci new file mode 100644 index 0000000..9419184 --- /dev/null +++ b/macros/trial_iirlp2mb.sci @@ -0,0 +1,44 @@ +function [Num,Den,AllpassNum,AllpassDen] = iirlp2mb(varargin) +B = varargin(1) +A = varargin(2) +Wo = varargin(3) +Wt = varargin(4) +rhs = argn(2) +lhs = argn(1) +if(rhs < 4 | rhs > 5) +error("Wrong number of input arguments.") +end +if(rhs == 5) +Pass = varargin(5); + if(Pass == 'pass') + pass_stop = -1 + elseif(Pass == 'stop') + pass_stop = 1 + else + error("Pass must be pass or stop.") + end +else +pass_stop = -1 +end +if(Wo <= 0) +error("Wo is <= 0.") +end +if(Wo >= 1) +error("Wo is >= 1."); +end +oWt = 0; +for i = 1 : length(Wt) + if(Wt(i) <= 0) + error("Wt is <= 0."); + end + if(Wt(i) >= 1) + error("Wt is >= 1."); + end + if(Wt(i) <= oWt) + error("Wt not monotonically increasing."); + else + oWt = Wt(i); + end +end +endfunction + diff --git a/macros/triang.bin b/macros/triang.bin Binary files differnew file mode 100644 index 0000000..67e8d99 --- /dev/null +++ b/macros/triang.bin diff --git a/macros/triang.sci b/macros/triang.sci new file mode 100644 index 0000000..6bbca69 --- /dev/null +++ b/macros/triang.sci @@ -0,0 +1,28 @@ +function [y] = triang (m) +//This function returns the filter coefficients of a triangular window. +//Calling Sequence +//y = triang (m) +//Parameters +//m: positive integer value +//y: output variable, vector of real numbers +//Description +//This is an Octave function. +//This function returns the filter coefficients of a triangular window of length m supplied as input, to the output vector y. +//Examples +//triang(5) +//ans = +// 0.3333333 +// 0.6666667 +// 1. +// 0.6666667 +// 0.3333333 + +funcprot(0); +rhs = argn(2) +if(rhs~=1) +error("Wrong number of input arguments.") +end + +y = callOctave("triang",m) + +endfunction diff --git a/macros/tripuls.bin b/macros/tripuls.bin Binary files differnew file mode 100644 index 0000000..644e9f3 --- /dev/null +++ b/macros/tripuls.bin diff --git a/macros/tripuls.sci b/macros/tripuls.sci new file mode 100644 index 0000000..498160b --- /dev/null +++ b/macros/tripuls.sci @@ -0,0 +1,44 @@ +function [y] = tripuls(t,w,skew) + +//This function generates a triangular pulse over the interval [-w/2,w/2] sampled at times t +//Calling Sequence +//[y] = tripuls(t) +//[y] = tripuls(t,w) +//[y] = tripuls(t,w,skew) +//Parameters +//t: vector of real or complex numbers +//w: real or complex number +//skew: real number, -1 <= s <= 1 +//Description +//This function generates a triangular pulse which is sampled at times t over the interval [-w/2,w/2]. The value of skew lies between -1 +//and 1. +//The value of skew represents the relative placement of the peak in the given width. +//Examples +//tripuls([0, .5, .6, 1], 0.9) +//ans = +// 1 0 0 0 +//This function is being called from Octave + +funcprot(0); + +rhs = argn(2) + +if(rhs<1 | rhs>3) +error("Wrong number of input arguments.") +end + select(rhs) + case 1 then + y = callOctave("tripuls",t) + case 2 then + y = callOctave("tripuls",t,w) + case 3 then + //tip = type(skew) + //if(tip==1) + y = callOctave("tripuls",t,w,skew) + //else + //error("Wrong arguments.") + //end + end +endfunction + + diff --git a/macros/truth.bin b/macros/truth.bin Binary files differnew file mode 100644 index 0000000..492d7d9 --- /dev/null +++ b/macros/truth.bin diff --git a/macros/truth.sci b/macros/truth.sci new file mode 100644 index 0000000..e4e967e --- /dev/null +++ b/macros/truth.sci @@ -0,0 +1,4 @@ +function f = truth() +y = %t +f = y +endfunction diff --git a/macros/tukeywin.bin b/macros/tukeywin.bin Binary files differnew file mode 100644 index 0000000..f625c8b --- /dev/null +++ b/macros/tukeywin.bin diff --git a/macros/tukeywin.sci b/macros/tukeywin.sci new file mode 100644 index 0000000..7ac8641 --- /dev/null +++ b/macros/tukeywin.sci @@ -0,0 +1,34 @@ +function w = tukeywin (m, r) +//This function returns the filter coefficients of a Tukey window. +//Calling Sequence +//w = tukeywin (m) +//w = tukeywin (m, r) +//Parameters +//m: positive integer +//r: positive real number, between 0 and 1 +//Description +//This is an Octave function. +//This function returns the filter coefficients of a Tukey window of length m supplied as input, to the output vector w. +//The second parameter r defines the ratio between the constant and cosine section and its value has to be between 0 and 1, with default value 0.5. +//Examples +//tukeywin(5, 2) +//ans = +// 0. +// 0.5 +// 1. +// 0.5 +// 0. + +funcprot(0); +rhs = argn(2) +if(rhs<1 | rhs>2) +error("Wrong number of input arguments.") +end + select(rhs) + case 1 then + w = callOctave("tukeywin",m) + case 2 then + w = callOctave("tukeywin",m,r) + end +endfunction + diff --git a/macros/udecode.bin b/macros/udecode.bin Binary files differnew file mode 100644 index 0000000..10ee70d --- /dev/null +++ b/macros/udecode.bin diff --git a/macros/udecode.sci b/macros/udecode.sci new file mode 100644 index 0000000..323cd8e --- /dev/null +++ b/macros/udecode.sci @@ -0,0 +1,64 @@ +function y=udecode(u,n,v,saturatemode) +//Decodes the input uniformly quantized values +//Calling Sequence +//y=uencode(u,n,v,'saturatemode') +//Parameters +//u +//A vector, matrix or n-dimensional array of integers +//n +//An integer between 2 and 32 +//v +//A positive real scalar +//'saturatemode' +//A string which can take only 2 values 'saturate' or 'wrap' +//Description +//Uniformly decodes the input vector or n-dimensional array of integers u with peak values +/- v +//If u has only positive values, the range of integers is assumed to be [0,2^n-1] +//If u has positive and negative values the range of integers is assumed to be [-2^(n-1),2^(n-1)-1] +//If v is not specified, its default value is 1 +//If saturatemode='wrap' the output is wrapped using modulo arithmetic if overflow occurs +//If saturatemode='saturate' the output is saturated if overflow accors +//Example +//u = int8([-1 1 2 -5]); +//ysat = udecode(u,3) +//ysat = +// +// - 0.25 0.25 0.5 - 1. +//Author +//Ankur Mallick +//[1] International Telecommunication Union. General Aspects of Digital Transmission Systems: Vocabulary of Digital Transmission and Multiplexing, and Pulse Code Modulation (PCM) Terms. ITU-T Recommendation G.701. March, 1993. +//See also +//uencode +//floor + funcprot(0); + if(argn(2)<4) + saturatemode='saturate'; + if(argn(2)<3) + v=1; + end + end + if(argn(2)>4|argn(2)<2) + error('Incorrect number of input arguments.'); + elseif(saturatemode~='saturate'&saturatemode~='wrap') + error('Saturate mode must be saturate or wrap'); + elseif(~isscalar(v)|abs(v)~=v) + error('Peak value must be a positive real scalar'); + elseif(~isscalar(n)|round(n)~=n|n<2|n>32) + error('n must be an integer between 2 and 32') + elseif(type(u)~=8) + error('Input value must be an integer'); + else + if(inttype(u)==1|inttype(u)==2|inttype(u)==4) + u=u+2^(n-1); //Converting signed to unsigned + end + if(saturatemode=='wrap') + u=pmodulo(double(u),2^n); + end + u(u<0)=0; + u(u>(2^n-1))=2^n-1; + L=2*v/(2^n); + y=L*double(u)-v; +// y(y<-v)=-v; +// y(y>v)=v; + end +endfunction diff --git a/macros/uencode.bin b/macros/uencode.bin Binary files differnew file mode 100644 index 0000000..3edffa8 --- /dev/null +++ b/macros/uencode.bin diff --git a/macros/uencode.sci b/macros/uencode.sci new file mode 100644 index 0000000..4814998 --- /dev/null +++ b/macros/uencode.sci @@ -0,0 +1,85 @@ +function y=uencode(u,n,v,signflag) + //Performs uniform quantization of the input into 2^n levels + //Calling Sequence + //y=uencode(u,n,v,'signflag') + //Parameters + //u + //A vector, matrix or n-dimensional array + //n + //An integer between 2 and 32 + //v + //A positive real scalar + //'signflag' + //A string which can take only 2 values 'signed' or 'unsigned' + //Description + //Uniformly quantizes the input vector or n-dimensional array u into 2^n levels in the interval [-v,v] + //If v is not specified, its default value is 1 + //'signflag' is a string that determines the nature of the quantization + //If signflag='unsigned' then y contains unsigned integers in the range [0,2^n-1] corresponding to the 2^n levels + //If signflag='unsigned' then y contains signed integers in the range [-2^(n-1),2^(n-1)-1] corresponding to the 2^n levels + //The size of the integers in y in bits(8,16, or 32) depends on the value of n + //If the input lies beyond +/- v it is saturated + //Example + //y=uencode(-1:0.5:1,3) + // y = + // + // 0 2 4 6 7 + //Author + //Ankur Mallick + //References + //[1] International Telecommunication Union. General Aspects of Digital Transmission Systems: Vocabulary of Digital Transmission and Multiplexing, and Pulse Code Modulation (PCM) Terms. ITU-T Recommendation G.701. March, 1993. + //See also + //udecode + //floor + funcprot(0); + if(argn(2)<4) + signflag='unsigned'; + if(argn(2)<3) + v=1; + end + end + if(argn(2)>4|argn(2)<2) + error('Incorrect number of input arguments.'); + elseif(signflag~='signed'&signflag~='unsigned') + error('Sign flag must be signed or unsigned'); + elseif(~isscalar(v)|abs(v)~=v) + error('Peak value must be a positive real scalar'); + elseif(~isscalar(n)|round(n)~=n|n<2|n>32) + error('n must be an integer between 2 and 32') + else + if(or(imag(u(:))~=0)) + //Complex Number + u_real=real(u); + y_real=uencode(u_real,n,v,signflag); + disp(type(y_real)); + u_imag=imag(u); + y_imag=uencode(u_imag,n,v,signflag); + y=double(y_real)+%i*double(y_imag); + else + //Real Numbers + y=zeros(u); + L=2*v/(2^n); + y=floor((u+v)/L); + y(y<0)=0; + y(y>(2^n-1))=2^n-1; + if(signflag=='signed') + y=y-2^(n-1); + if(n>=2&n<=8) + y=int8(y); + elseif(n>=9&n<=16) + y=int16(y); + else + y=int32(y); + end + else + if(n>=2&n<=8) + y=uint8(y); + elseif(n>=9&n<=16) + y=uint16(y); + else + y=uint32(y); + end + end + end + end +endfunction diff --git a/macros/ultrwin.bin b/macros/ultrwin.bin Binary files differnew file mode 100644 index 0000000..6bd2dbe --- /dev/null +++ b/macros/ultrwin.bin diff --git a/macros/ultrwin.sci b/macros/ultrwin.sci new file mode 100644 index 0000000..91119eb --- /dev/null +++ b/macros/ultrwin.sci @@ -0,0 +1,53 @@ +function [w, xmu] = ultrwin (m, mu, par, key, norm) +//This function returns the coefficients of an Ultraspherical window. +//Calling Sequence +//w = ultrwin (m, mu, par) +//w = ultrwin (m, mu, par, key) +//w = ultrwin (m, mu, par, key, norm) +//[w, xmu] = ultrwin (...) +//Parameters +//m: positive integer value +//mu: +//par: +//key: +//norm: +//Description +//This is an Octave function. +//This function returns the coefficients of an Ultraspherical window of length m supplied as input, to the output vector w. +//The second parameter controls the ratio between side lobe to side lobe of the window's Fourier transform. +//The third parameter controls the ratio between main lobe width to side lobe. The default value is beta. +//The value of xmu is also returned for given beta, att or latt. +//Examples +//ultrwin(3,-0.4,0.5) +//ans = +// - 1. +// 1. +// - 1. + +rhs = argn(2) +lhs = argn(1) +if(rhs<3 | rhs>5) +error("Wrong number of input arguments.") +end + + select(rhs) + case 3 then + if(lhs==1) + [w] = callOctave("ultrwin", m, mu, par) + elseif(lhs==2) + [w,xmu] = callOctave("ultrwin", m, mu, par) + end + case 4 then + if(lhs==1) + [w] = callOctave("ultrwin", m, mu, par, key) + elseif(lhs==2) + [w,xmu] = callOctave("ultrwin", m, mu, par, key) + end + case 5 then + if(lhs==1) + [w] = callOctave("ultrwin", m, mu, par, key, norm) + elseif(lhs==2) + [w,xmu] = callOctave("ultrwin", m, mu, par, key, norm) + end + end +endfunction diff --git a/macros/unshiftdata.bin b/macros/unshiftdata.bin Binary files differnew file mode 100644 index 0000000..08df42c --- /dev/null +++ b/macros/unshiftdata.bin diff --git a/macros/unshiftdata.sci b/macros/unshiftdata.sci new file mode 100644 index 0000000..46c3777 --- /dev/null +++ b/macros/unshiftdata.sci @@ -0,0 +1,81 @@ +function y = unshiftdata(x,perm,nshifts) +//Inverts the effect of shiftdata +//Calling sequence +//y=unshiftdata(x,perm,nshifts) +//Parameters +//x +//A vector matrix or n-dimensional array +//perm +//Permutation applied by shiftdata to obtain x +//nshifts +//The number of shifts applied by shiftdata to obtain x +//Description +//y=unshiftdata(x,perm,nshifts) +//Applies the permutation perm or number of shifts nshifts on x to invert shiftdata +//Examples +//x=testmatrix('magi',3) +//x = +// +// 8. 1. 6. +// 3. 5. 7. +// 4. 9. 2. +//[y,perm,nshifts] = shiftdata(x,2) //Shifts dimension 2 +//nshifts = +// +// [] +// perm = +// +// 2. 1. +// y = +// +// 8. 3. 4. +// 1. 5. 9. +// 6. 7. 2. +//z=unshiftdata(y,perm,nshifts) +//z = +// +// 8. 1. 6. +// 3. 5. 7. +// 4. 9. 2. +// +//x=1:5 +//x = +// +// 1. 2. 3. 4. 5. +// [y,perm,nshifts] = shiftdata(x) //Shifts first non-singleton dimension +//nshifts = +// +// 1. +// perm = +// +// [] +// y = +// +// 1. +// 2. +// 3. +// 4. +// 5. +////z=unshiftdata(y,perm,nshifts) +//z = +// +// 1. 2. 3. 4. 5. +//See Also +//permute +//shiftdata +//Author +//Ankur Mallick + funcprot(0); + if(argn(2)<1|argn(2)<2|(argn(2)<3&size(perm)==0)|argn(2)>3) + error('Incorrect number of input arguments.'); + else + if(size(perm)==0) + S=size(x); + S1=[ones(1,nshifts),S] + y=matrix(x,S1); + else + iperm(perm)=1:length(perm); + y=permute(x,iperm); + end + end +endfunction diff --git a/macros/upfirdn.bin b/macros/upfirdn.bin Binary files differnew file mode 100644 index 0000000..8d5a99d --- /dev/null +++ b/macros/upfirdn.bin diff --git a/macros/upfirdn.sci b/macros/upfirdn.sci new file mode 100644 index 0000000..7f0215d --- /dev/null +++ b/macros/upfirdn.sci @@ -0,0 +1,26 @@ +function y = upfirdn (x, h, p, q) +//This function upsamples the input data, applies the FIR filter and then downsamples it. +//Calling Sequence +//y = upfirdn (x, h, p, q) +//Parameters +//x: +//h: +//p: +//q: +//Description +//This is an Octave function. +//This function upsamples the input data in the matrix by a factor of n. Then the upsampled data is FIR filtered. After this, the resultant is downsampled. +//Examples +//upfirdn([1,2,3],2,3,5) +//ans = +// +// 2. 0. +funcprot(0); +rhs = argn(2) +if(rhs~=4) +error("Wrong number of input arguments.") +end + +y = callOctave("upfirdn",x, h, p, q) + +endfunction diff --git a/macros/upsample.bin b/macros/upsample.bin Binary files differnew file mode 100644 index 0000000..5195035 --- /dev/null +++ b/macros/upsample.bin diff --git a/macros/upsample.sci b/macros/upsample.sci new file mode 100644 index 0000000..cb5d7ae --- /dev/null +++ b/macros/upsample.sci @@ -0,0 +1,33 @@ +function y = upsample (x, n, phase) +//This function upsamples the signal, inserting n-1 zeros between every element. +//Calling Sequence +//y = upsample (x, n) +//y = upsample (x, n, phase) +//Parameters +//x: scalar, vector or matrix of real or complex numbers +//n: real number or vector +//phase: integer value, 0 <= phase <= (n - 1 ), default value 0, or logical +//Description +//This is an Octave function. +//This function upsamples the signal, inserting n-1 zeros between every element. If x is a matrix, every column is upsampled. +//The phase determines the position of the inserted sample in the block of zeros. The default value is 0. +//Examples +//upsample(4,5,2) +//ans = +// 0. 0. 4. 0. 0. + +funcprot(0); +rhs = argn(2) +if(rhs<2 | rhs>3) +error("Wrong number of input arguments.") +end + + select(rhs) + case 2 then + y = callOctave("upsample",x,n) + case 3 then + y = callOctave("upsample",x,n,phase) + end + +endfunction + diff --git a/macros/upsamplefill.bin b/macros/upsamplefill.bin Binary files differnew file mode 100644 index 0000000..b447000 --- /dev/null +++ b/macros/upsamplefill.bin diff --git a/macros/upsamplefill.sci b/macros/upsamplefill.sci new file mode 100644 index 0000000..60ca1da --- /dev/null +++ b/macros/upsamplefill.sci @@ -0,0 +1,32 @@ +function y = upsamplefill (x, w, cpy) +//This function upsamples a vector interleaving given values or copies of the vector elements. +//Calling Sequence +//y = upsamplefill (x, w) +//y = upsamplefill (x, w, cpy) +//Parameters +//x: scalar, vector or matrix of real or complex numbers +//w: scalar or vector of real or complex values +//cpy: can take in "true" or "false", default is false +//Description +//This is an Octave function. +//This function upsamples a vector interleaving given values or copies of the vector elements. +//The second argument has the values in the vector w that are placed in between the elements of x. +//The third argument, if true, means that w should be scalar and that each value in x repeated w times. +//Examples +//upsamplefill([0.4,0.5],7) +//ans = +// 0.4 7. 0.5 7. +funcprot(0); +rhs = argn(2) + +if(rhs<2 | rhs>3) +error("Wrong number of input arguments.") +end + + select(rhs) + case 2 then + y = callOctave("upsamplefill", x, w) + case 3 then + y = callOctave("upsamplefill", x, w, cpy) + end +endfunction diff --git a/macros/var.bin b/macros/var.bin Binary files differnew file mode 100644 index 0000000..ca8d571 --- /dev/null +++ b/macros/var.bin diff --git a/macros/var.sci b/macros/var.sci new file mode 100644 index 0000000..9496da1 --- /dev/null +++ b/macros/var.sci @@ -0,0 +1,173 @@ +function y = var(x,w,dim)
+
+ // This function var estimate the variance of the values in X.
+ // Calling Sequence
+ // y=var(x)
+ // y=var(x,w)
+ // y=var(x,w,dim)
+ // Parameters
+ // x: a vector or matrix.
+ // w: weight vector W of length X, or may take the value of 0 and 1. The default value is 0. Consider only non-negative values.
+ // dim: consider the variance along the dimension of X. 1 for clumun wise variamce and 2 for row wise variance.
+ // y: returns the variance of the values in X.
+
+ // Examples
+ // x=[1.2, 5, 10, -20, 12,10,5,20,32,20];
+ // w=1:10;
+ // dim=2;
+ // y=var(x, w, dim) ;
+ // See also
+ // Authors
+ // Jitendra Singh
+
+ if argn(2)==1 then
+
+ if type(x)==10 then
+ x=ascii(x)
+ end
+ if size(x,1)==1 |size(x,2)==1 then
+ sd=stdev(x)
+ else
+ sd=stdev(x,1)
+ end
+ y=sd.^2;
+ end
+
+ if argn(2)<=3 & argn(2)>1 then
+
+
+ if size(x,1)==1 |size(x,2)==1 then
+ sd=stdev(x);
+ n=length(x);
+ y1= sd.^2;
+ if length(w)==1 & w==0 then
+ y=y1;
+ elseif length(w)==1 & w==1 then
+ y=y1*((n-1)/n);
+ elseif length(w)==n & and(w>=0) then
+ if size(x,1)~=size(w,1) then
+ w=w';
+ end
+ wmean=sum(x.*w)/sum(w);
+ x1=(x-wmean).^2;
+
+ l=length(find(w>0));
+
+
+ sd=((sum(w.*x1))/(((l-1)/l)*sum(w)));
+ y=(sd)*((n-1)/n);
+ elseif length(w)~=size(x)& length(w)>1 then
+ error ('The length of W must be compatible with X.')
+
+ else
+ error('W must be a vector of nonnegative weights, or a scalar 0 or 1.')
+ end
+
+ else
+ n=size(x,1)
+ sd=stdev(x,1)
+ y1=sd.^2;
+ if length(w)==1 & w==0 then
+ y=y1;
+ elseif length(w)==1 & w==1 then
+ y=y1*((n-1)/n);
+ elseif length(w)==n & and(w>=0) then
+
+ for i=1:size(x,2)
+ xx=(x(:,i))
+ if size(xx,1)~=size(w,1) then
+ w=w';
+ end
+ wmean=sum(xx.*w)/sum(w);
+ x1=(x(:,i)-wmean).^2;
+ l=length(find(w>0));
+ sd(i)=sum((w.*x1)/(((l-1)/l)*sum(w)));
+ end
+ y=sd*((l-1)/l);
+
+elseif length(w)~=size(x,1) & length(w)>1 then
+ error ('The length of W must be compatible with X.')
+
+ else
+ error('W must be a vector of nonnegative weights, or a scalar 0 or 1.')
+
+ end
+ end
+
+end
+
+
+
+if argn(2)==3 then
+
+ if dim==2 then
+
+ if size(x,1)==1 | size(x,2)==1 then
+
+ if size(x,1)==1 then
+ y=y;
+ elseif size(x,2)==1 & length(w)== length(x) then
+ error ('The length of W must be compatible with X.')
+ else
+ y=zeros(size(x,1),size(x,2))
+ end
+ else
+ n=size(x,2)
+ sd=stdev(x,2)
+ y1=sd.^2;
+ if length(w)==1 & w==0 then
+ y=y1;
+ elseif length(w)==1 & w==1 then
+ y=y1*((n-1)/n);
+ elseif length(w)==n & and(w>=0) then
+ for i=1:size(x,1)
+ xx=(x(:,i))
+ if size(xx,1)~=size(w,1) then
+ w=w';
+ end
+ wmean=sum(xx.*w)/sum(w);
+ x1=(x(:,i)-wmean).^2;
+ l=length(find(w>0));
+ sd(i)=sum((w.*x1)/(((l-1)/l)*sum(w)));
+ end
+ y=sd*((l-1)/l);
+ else
+ error('The length of W must be compatible with X.')
+ end
+ end
+end
+
+ if dim==1 then
+
+
+ if size(x,1)==1 | size(x,2)==1 then
+
+ if size(x,2)==1 then
+
+ y=y;
+ elseif size(x,1)==1 & length(w)== length(x) then
+ error ('The length of W must be compatible with X.')
+ else
+ y=zeros(size(x,1),size(x,2))
+ end
+
+ end
+
+ end
+
+ if dim>2 then
+ if length(w)==1 & w==1 | w==0 then
+ y=zeros(size(x,1), size(x,2))
+ else
+ error ('The length of W must be compatible with X.')
+ end
+
+ end
+
+
+ if dim<=0 then
+ error('Dimension argument must be a positive integer scalar within indexing range.')
+ end
+ end
+
+ endfunction
diff --git a/macros/vco.bin b/macros/vco.bin Binary files differnew file mode 100644 index 0000000..5c063f2 --- /dev/null +++ b/macros/vco.bin diff --git a/macros/vco.sci b/macros/vco.sci new file mode 100644 index 0000000..36b704c --- /dev/null +++ b/macros/vco.sci @@ -0,0 +1,64 @@ +function y = vco(x,frange,fs) +//Voltage Controlled Oscillator +//Calling Sequence +//y=vco(x,fc,fs) +//y=vco(x,[fmin fmax],fs) +//Parameters +//x +//A vector or a matrix +//fc +//Carrier frequency +//fs +//fmin +//Minimum frequency of the frequency range +//fmax +//Maximum frequency of the frequency range +//Description +//y=vco(x,fc,fs) +//Creates a frequency modulated cosine wave y whose frequency varies as the magnitude of x +//x lies in [-1,1]. x=-1 corresponds to a frequency of 0, x=0 corresponds to a frequency of fc +//and x=1 corresponds to a frequency of 2fc. +//y=vco(x,[fmin fmax],fs) +//Scales the frequency range so that x=-1 corresponds to a frequency of fmin and +//x=1 corresponds to a frequency of fmax +//If x is a matrix the same operation is performed on the columns on x +//Size of y is the same as the size of x +//Example +//x=rand() +// x = +// +// 0.2113249 +// y=vco(x,2000,8000) +// y = +// +// 0.9454092 +//Author +//Ankur Mallick + funcprot(0); + if (argn(2)<3|argn(2)>5) then + error('Incorrect number of input arguments.'); + else + if(argn(2)<3) + fs=1; + end + if(argn(2)<2) + fc=fs/4; + frange=fc; + end + if(max(abs(x(:)))>1) + error('x must lie between -1 and 1'); + end + if(length(frange)==1) + fc = frange(1); + opt = (fc/fs)*2*%pi; + else + fc = mean(frange); + opt = (frange(2) - fc)/fs*2*%pi; + end + if (fc>fs/2) + error('The career frequency must be less than half the sampling frequency.') + else + y = modulate(x,fc,fs,'fm',opt); + end + end +endfunction diff --git a/macros/welchwin.bin b/macros/welchwin.bin Binary files differnew file mode 100644 index 0000000..3323c77 --- /dev/null +++ b/macros/welchwin.bin diff --git a/macros/welchwin.sci b/macros/welchwin.sci new file mode 100644 index 0000000..a871a59 --- /dev/null +++ b/macros/welchwin.sci @@ -0,0 +1,37 @@ +function w = welchwin (m, opt) +//This function returns the filter coefficients of a Welch window. +//Calling Sequence +//w = welchwin (m) +//w = welchwin (m, opt) +//Parameters +//m: positive integer value +//opt: string value, takes "periodic" or "symmetric" +//w: output variable, vector of real numbers +//Description +//This is an Octave function. +//This function returns the filter coefficients of a Welch window of length m supplied as input, to the output vector w. +//The second parameter can take the values "periodic" or "symmetric", depending on which the corresponding form of window is returned. The default is symmetric. +//For symmetric, the length should be an integer>2. For periodic, the length should be an integer>1. +//Examples +//welchwin(4,"symmetric") +//ans = +// 0. +// 0.8888889 +// 0.8888889 +// 0. + + + +rhs = argn(2) +if(rhs<1 | rhs>2) +error("Wrong number of input arguments.") +end + + select(rhs) + case 1 then + w = callOctave("welchwin",m) + case 2 then + w = callOctave("welchwin",m,opt) + end + +endfunction diff --git a/macros/window.bin b/macros/window.bin Binary files differnew file mode 100644 index 0000000..fe7e1ef --- /dev/null +++ b/macros/window.bin diff --git a/macros/window.sci b/macros/window.sci new file mode 100644 index 0000000..5bf3982 --- /dev/null +++ b/macros/window.sci @@ -0,0 +1,35 @@ +function [w] = window (f, m, varargin) +//This function creates an m-point window from the function f given as input. +//Calling Sequence +//w = window(f, m) +//w = window(f, m, opts) +//Parameters +//f: string value +//m: positive integer value +//opts: string value, takes in "periodic" or "symmetric" +//w: output variable, vector of real numbers +//Description +//This is an Octave function. +//This function creates an m-point window from the function f given as input, in the output vector w. +//f can take any valid function as a string, for example "blackmanharris". +//Examples +//window("hanning",5) +//ans = +// 0. +// 0.5 +// 1. +// 0.5 +// 0. +funcprot(0); +rhs = argn(2) +if(rhs<2) +error("Wrong number of input arguments.") +end + select(rhs) + case 2 then + [w] = callOctave("window",f,m) + case 3 then + [w] = callOctave("window",f,m,varargin(1)) + end +endfunction + diff --git a/macros/wkeep.bin b/macros/wkeep.bin Binary files differnew file mode 100644 index 0000000..a659931 --- /dev/null +++ b/macros/wkeep.bin diff --git a/macros/wkeep.sci b/macros/wkeep.sci new file mode 100644 index 0000000..e4e4506 --- /dev/null +++ b/macros/wkeep.sci @@ -0,0 +1,29 @@ +function [y] = wkeep(x,l,opt) + +// Extracts a vector from the given vector of length l +// Calling Sequence +// [y]=wkeep(x,l) +// [y]=wkeep(x,l,opt) +// Parameters +// x: Real, complex or string type input vector or matrix +// l: Length of matrix required +// opt: Character input to determine which side to extract from +// Description +// This is an Octave function +// [y]=wkeep(x,l) extracts a vector of length l from the centre of input vector x. +// [y]=wkeep(x,l,opt) extracts vector based on opt which could be 'l','r' or 'c' (left, right or central). +// Examples +// 1. [y]=wkeep([1 2 3;4 5 6],[2 2]) +// y= 1 2 +// 2. [y]=wkeep([1 2 3 4 5 6],3,'r') +// y= 4 5 6 + +funcprot(0); +rhs=argn(2); +if (rhs<2) then + error ("Wrong number of input arguments.") +elseif (rhs==2) + y=callOctave("wkeep",x,l) +else y=callOctave("wkeep",x,l,opt) +end +endfunction diff --git a/macros/wrev.bin b/macros/wrev.bin Binary files differnew file mode 100644 index 0000000..f4baf3d --- /dev/null +++ b/macros/wrev.bin diff --git a/macros/wrev.sci b/macros/wrev.sci new file mode 100644 index 0000000..a01ed77 --- /dev/null +++ b/macros/wrev.sci @@ -0,0 +1,23 @@ +function [y]= wrev(x) + +// Reverses order of elements of input vector +// Calling Sequence +// [y]=wrev(x) +// Parameters +// x: Input vector of string, real or complex values +// Description +// This is an Octave function. +// This function reverses the order of elements of the input vector x. +// Examples +// 1. wrev([1 2 3]) +// ans= 3 2 1 +// 2. wrev(['a','b','c']) +// ans= cba + +funcprot(0); +rhs=argn(2); +if (rhs~=1) then + error("Wrong number of input arguments.") +else y=callOctave("wrev",x) +end +endfunction diff --git a/macros/xcorr2.bin b/macros/xcorr2.bin Binary files differnew file mode 100644 index 0000000..795bfe4 --- /dev/null +++ b/macros/xcorr2.bin diff --git a/macros/xcorr2.sci b/macros/xcorr2.sci new file mode 100644 index 0000000..e73f00f --- /dev/null +++ b/macros/xcorr2.sci @@ -0,0 +1,36 @@ +function c = xcorr2 (a, b, biasflag) +// +//Calling Sequence +//c = xcorr2 (a) +//c = xcorr2 (a, b) +//c = xcorr2 (a, b, biasflag) + +//Parameters +//a: +//b: +//biasflag: + +//Description +//This is an Octave function. + +//Examples +//xcorr2(5,0.8,'coeff') +//ans = 1 + +funcprot(0); + +rhs = argn(2) +if(rhs<1 | rhs>3) +error("Wrong number of input arguments.") +end + + select(rhs) + case 1 then + c = callOctave("xcorr2",a) + case 2 then + c = callOctave("xcorr2",a,b) + case 3 then + c = callOctave("xcorr2",a,b,biasflag) + end +endfunction + diff --git a/macros/zerocrossing.bin b/macros/zerocrossing.bin Binary files differnew file mode 100644 index 0000000..d6b1655 --- /dev/null +++ b/macros/zerocrossing.bin diff --git a/macros/zerocrossing.sci b/macros/zerocrossing.sci new file mode 100644 index 0000000..41b51d6 --- /dev/null +++ b/macros/zerocrossing.sci @@ -0,0 +1,22 @@ +function x = zerocrossing (w, y) +//This function estimates the points at which a given waveform crosses the x-axis. +//Calling Sequence +//x = zerocrossing (w, y) +//Parameters +//w: +//y: +//x: +//Description +//This is an Octave function. +//This function estimates the points at which a given waveform y = y(w) crosses the x-axis. It uses linear interpolation. +//Examples + + +funcprot(0); +rhs = argn(2) +if(rhs~=2) +error("Wrong number of input arguments.") +end +x = callOctave("zerocrossing", w, y) + +endfunction diff --git a/macros/zp2sos.bin b/macros/zp2sos.bin Binary files differnew file mode 100644 index 0000000..08c8b1f --- /dev/null +++ b/macros/zp2sos.bin diff --git a/macros/zp2sos.sci b/macros/zp2sos.sci new file mode 100644 index 0000000..6bb9426 --- /dev/null +++ b/macros/zp2sos.sci @@ -0,0 +1,51 @@ +function [sos,g] = zp2sos(z,p,k) +//This function converts filter poles and zeros to second-order sections. +//Calling Sequence +//[sos] = zp2sos(z) +//[sos] = zp2sos(z, p) +//[sos] = zp2sos(z, p, k) +//[sos, g] = zp2sos(...) +//Parameters +//z: column vector +//p: column vector +//k: real or complex value, default value is 1 +//Description +//This is an Octave function. +//This function converts filter poles and zeros to second-order sections. +//The first and second parameters are column vectors containing zeros and poles. The third parameter is the overall filter gain, the default value of which is 1. +//The output is the sos matrix and the overall gain. +//If there is only one output argument, the overall filter gain is applied to the first second-order section in the sos matrix. +//Examples +//zp2sos([1, 2, 3], 2, 6) +//ans = +// 6 -18 12 1 -2 0 +// 1 -3 0 1 0 0 + + +funcprot(0); +rhs = argn(2) +lhs = argn(1) +if(rhs<1 | rhs>3) +error("Wrong number of input arguments.") +end + select(rhs) + case 1 then + if (lhs<2) + sos=callOctave("zp2sos",z) + else + [sos,g]=callOctave("zp2sos",z) + end + case 2 then + if(lhs<2) + [sos]=callOctave("zp2sos",z,p) + else + [sos,g]=callOctave("zp2sos",z,p) + end + case 3 then + if(lhs<2) + sos=callOctave("zp2sos",z,p,k) + else + [sos,g]=callOctave("zp2sos",z,p,k) + end + end +endfunction diff --git a/macros/zplane.bin b/macros/zplane.bin Binary files differnew file mode 100644 index 0000000..43396b8 --- /dev/null +++ b/macros/zplane.bin diff --git a/macros/zplane.sci b/macros/zplane.sci new file mode 100644 index 0000000..bfa9285 --- /dev/null +++ b/macros/zplane.sci @@ -0,0 +1,16 @@ +function [y] = zplane(z,p) +funcprot(0); + +rhs = argn(2) + +if(rhs<1 | rhs>2) +error("Wrong number of input arguments.") +end + select(rhs) + case 1 then + callOctave("zplane",z) + case 2 then + callOctave("zplane",z,p) + end +endfunction + diff --git a/sci_gateway/builder_gateway.sce~ b/sci_gateway/builder_gateway.sce~ new file mode 100644 index 0000000..2b192bb --- /dev/null +++ b/sci_gateway/builder_gateway.sce~ @@ -0,0 +1,18 @@ +// Copyright (C) 2015 - IIT Bombay - FOSSEE +// +// This file must be used under the terms of the BSD. +// This source file is licensed as described in the file LICENSE, which +// you should have received as part of this distribution. The terms +// are also available at +// https://opensource.org/licenses/BSD-3-Clause +// Author: Harpreet Singh +// Organization: FOSSEE, IIT Bombay +// Email: toolbox@scilab.in + +sci_gateway_dir = get_absolute_file_path('builder_gateway.sce'); + +tbx_builder_gateway_lang('cpp', sci_gateway_dir); +tbx_build_gateway_loader(['cpp'], sci_gateway_dir); + +clear tbx_builder_gateway_lang tbx_build_gateway_loader; +clear sci_gateway_dir; diff --git a/unloader.sce b/unloader.sce new file mode 100644 index 0000000..dea8f22 --- /dev/null +++ b/unloader.sce @@ -0,0 +1,14 @@ +// This file is released under the 3-clause BSD license. See COPYING-BSD. +// Generated by builder.sce: Please, do not edit this file + +try + getversion("scilab"); +catch + error("Scilab 5.4 or more is required."); +end; + +fileQuit = get_absolute_file_path("unloader.sce") + "etc/" + "FOSSEE_Signal_Processing_Toolbox.quit"; +if isfile(fileQuit) then + exec(fileQuit); +end + |