summaryrefslogtreecommitdiff
path: root/macros
diff options
context:
space:
mode:
authorrupak2020-01-21 19:05:09 +0530
committerrupak2020-01-21 19:05:09 +0530
commitd2f4d30ebcad7430e4f0495cae5c2b3a16be73ce (patch)
tree8987d169ad87e930f137122a450c02dc5d13dcc5 /macros
parent36aca8aaaee5cf8cb5452268fd07c0b558b000a3 (diff)
downloadFOSSEE-Communication-Systems-Toolbox-master.tar.gz
FOSSEE-Communication-Systems-Toolbox-master.tar.bz2
FOSSEE-Communication-Systems-Toolbox-master.zip
added help filesHEADmaster
Diffstat (limited to 'macros')
-rw-r--r--macros/alignsignals.binbin19752 -> 19636 bytes
-rw-r--r--macros/alignsignals.sci5
-rw-r--r--macros/arithdeco.binbin22733 -> 22427 bytes
-rw-r--r--macros/arithdeco.sci25
-rw-r--r--macros/arithenco.binbin22355 -> 22426 bytes
-rw-r--r--macros/arithenco.sci15
-rw-r--r--macros/cleanmacros.sce20
-rw-r--r--macros/finddelay.binbin26477 -> 26538 bytes
-rw-r--r--macros/finddelay.sci15
-rw-r--r--macros/gfcosets.binbin10350 -> 10336 bytes
-rw-r--r--macros/gfcosets.sci11
-rw-r--r--macros/gflineq.binbin19682 -> 19629 bytes
-rw-r--r--macros/gflineq.sci9
-rw-r--r--macros/gfrepcov.binbin5439 -> 5396 bytes
-rw-r--r--macros/gfrepcov.sci15
-rw-r--r--macros/gftrunc.binbin4631 -> 4635 bytes
-rw-r--r--macros/gftrunc.sci20
-rw-r--r--macros/iqcoef2imbal.binbin12452 -> 12380 bytes
-rw-r--r--macros/iqcoef2imbal.sci17
-rw-r--r--macros/iqimbal2coef.binbin9184 -> 9083 bytes
-rw-r--r--macros/iqimbal2coef.sci16
-rw-r--r--macros/iscatastrophic.binbin6927 -> 6842 bytes
-rw-r--r--macros/iscatastrophic.sci12
-rw-r--r--macros/istrellis.binbin16135 -> 16253 bytes
-rw-r--r--macros/istrellis.sci20
-rw-r--r--macros/lib29
-rw-r--r--macros/lteZadoffChuSeq.binbin6969 -> 7089 bytes
-rw-r--r--macros/lteZadoffChuSeq.sci12
-rw-r--r--macros/octave_functions.binbin0 -> 4686 bytes
-rw-r--r--macros/octave_functions.sci63
-rw-r--r--macros/ssbdemod.binbin18419 -> 18517 bytes
-rw-r--r--macros/ssbdemod.sci20
32 files changed, 174 insertions, 150 deletions
diff --git a/macros/alignsignals.bin b/macros/alignsignals.bin
index 48bdb7d..1a8f3ec 100644
--- a/macros/alignsignals.bin
+++ b/macros/alignsignals.bin
Binary files differ
diff --git a/macros/alignsignals.sci b/macros/alignsignals.sci
index 97bf596..6000b57 100644
--- a/macros/alignsignals.sci
+++ b/macros/alignsignals.sci
@@ -36,11 +36,8 @@ function varargout = alignsignals(x,y,varargin)
// Y = [1 2 3 ];
// [Xa,Ya] = alignsignals(X,Y,[],1)
//
-// See also
-// finddelay
-//
// Authors
-// Pola Lakshmi Priyanka, IIT Bombay//
+// Pola Lakshmi Priyanka, IIT Bombay
// Check number of input arguments
[out_a,inp_a]=argn(0)
diff --git a/macros/arithdeco.bin b/macros/arithdeco.bin
index 505f75b..307cf86 100644
--- a/macros/arithdeco.bin
+++ b/macros/arithdeco.bin
Binary files differ
diff --git a/macros/arithdeco.sci b/macros/arithdeco.sci
index 95a06b9..226c12d 100644
--- a/macros/arithdeco.sci
+++ b/macros/arithdeco.sci
@@ -1,18 +1,18 @@
function [seq] = arithdeco(code, count, len)
// This function decodes the given code using arithmetic coding
-
-// Calling sequence
+//
+// Syntax
// SEQ = ARITHDECO(CODE, COUNT, LEN)
//
// Description
// SEQ = ARITHDECO(CODE, COUNT, LEN) decodes the given received seq (CODE) to message using arithmetic coding.
-// COUNT is vector whihc gives information about the source statistics (i.e. frequency of each symbol in the source alphabet)
+// COUNT is vector which gives information about the source statistics (i.e. frequency of each symbol in the source alphabet)
// CODE is the binary arithmetic code
-
+//
// Source Alphabet is assumed to be {1,2,....N} where N is a positive integer
// Therefore, sequence should be finite and positive
// Length of the COUNT should match the length of the source alphabet
-
+//
// Examples
// counts = [40 1 9];
// len = 11;
@@ -22,20 +22,11 @@ function [seq] = arithdeco(code, count, len)
// dseq=arithdeco(code,counts,len)
// disp(dseq)
// disp(seq)
-
-// Bibliography
-// Sayood, K., Introduction to Data Compression, Morgan Kaufmann, 2000, Chapter 4, Section 4.4.3.
-
-// See also
-// arithenco
-
+//
// Authors
-// Pola Lakshmi Priyanka, IIT Bombay//
+// Pola Lakshmi Priyanka, IIT Bombay
-
-//*************************************************************************************************************************************//
-
- //Input argument check
+//Input argument check
[outa,inpa]=argn(0);
if(~inpa==3)
diff --git a/macros/arithenco.bin b/macros/arithenco.bin
index 429c26d..441c2ad 100644
--- a/macros/arithenco.bin
+++ b/macros/arithenco.bin
Binary files differ
diff --git a/macros/arithenco.sci b/macros/arithenco.sci
index b596924..adcd50b 100644
--- a/macros/arithenco.sci
+++ b/macros/arithenco.sci
@@ -1,9 +1,9 @@
function [code] = arithenco(seq, count)
// This function encodes the given sequence using aritmetic coding
-
+//
// Syntax
// CODE = ARITHENCO(SEQ, COUNT)
-
+//
// Description
// CODE = ARITHENCO(SEQ, COUNT) encodes the given sequence (SEQ) using arithmetic coding.
// COUNT is vector whihc gives information about the source statistics (i.e. frequency of each symbol in the source alphabet)
@@ -11,22 +11,19 @@ function [code] = arithenco(seq, count)
// Source Alphabet is assumed to be {1,2,....N} where N is a positive integer
// Therefore, sequence should be finite and positive
// Length of the COUNT should match the length of the source alphabet
-
+//
// Examples
// counts = [40 1 9];
// len = 4;
// seq = [1 3 2 1]
// code = arithenco(seq,counts);
// disp(code)
-
+//
// Bibliography
// Sayood, K., Introduction to Data Compression, Morgan Kaufmann, 2000, Chapter 4, Section 4.4.3.
-
-// See also
-// arithdeco
-
+//
// Authors
-// Pola Lakshmi Priyanka, IIT Bombay//
+// Pola Lakshmi Priyanka, IIT Bombay
//*************************************************************************************************************************************//
diff --git a/macros/cleanmacros.sce b/macros/cleanmacros.sce
new file mode 100644
index 0000000..a6428b2
--- /dev/null
+++ b/macros/cleanmacros.sce
@@ -0,0 +1,20 @@
+// ====================================================================
+// This file is released under the 3-clause BSD license. See COPYING-BSD.
+// ====================================================================
+function cleanmacros()
+
+ libpath = get_absolute_file_path("cleanmacros.sce");
+
+ binfiles = ls(libpath+"/*.bin");
+ for i = 1:size(binfiles,"*")
+ mdelete(binfiles(i));
+ end
+
+ mdelete(libpath+"/names");
+ mdelete(libpath+"/lib");
+endfunction
+
+cleanmacros();
+clear cleanmacros; // remove cleanmacros on stack
+
+// ====================================================================
diff --git a/macros/finddelay.bin b/macros/finddelay.bin
index 8a977dc..c5d32d5 100644
--- a/macros/finddelay.bin
+++ b/macros/finddelay.bin
Binary files differ
diff --git a/macros/finddelay.sci b/macros/finddelay.sci
index eb8e96a..00d6755 100644
--- a/macros/finddelay.sci
+++ b/macros/finddelay.sci
@@ -1,16 +1,16 @@
function d = finddelay(x,y,varargin)
// This function returns the estimated delay between two input signals using crosscorrelation.
// If signals are periodic, delay with least absolute value is returned.
-
+//
// Calling Sequence
// D = FINDDELAY(X,Y)
// D = FINDDELAY(...,MAXLAG)
-
+//
// Description
// D = FINDDELAY(X,Y), returns estimated Delay D between X
// and Y. D is positive implies Y is delayed with respect to X and vice versa.
// If X, Y are matrices, then D is a row vector corresponding to delay between columns of X and Y
-
+//
// D = FINDDELAY(...,MAXLAG), uses MAXLAG as the maximum correlation
// window size used to find the estimated delay(s) between X and Y:
//
@@ -29,7 +29,7 @@ function d = finddelay(x,y,varargin)
// -MAXLAG(J):MAXLAG(J).
//
// By default, MAXLAG is equal to MAX(LX,LY)-1 for vectors,
-
+//
// Examples
// X = [ 0 0 1 2 3 ];
// Y = [ 0 0 0 1 2 3];
@@ -39,12 +39,9 @@ function d = finddelay(x,y,varargin)
// Y = [ 0 0 1 0 ;1 0 0 2 ; 0 0 0 0 ];
// D = finddelay(X,Y)
// disp(D)
-
-// See also
-// alignsignals
-
+//
// Authors
-// Pola Lakshmi Priyanka, IIT Bombay//
+// Pola Lakshmi Priyanka, IIT Bombay
//*************************************************************************************************************************************//
diff --git a/macros/gfcosets.bin b/macros/gfcosets.bin
index 987d207..a0ec71a 100644
--- a/macros/gfcosets.bin
+++ b/macros/gfcosets.bin
Binary files differ
diff --git a/macros/gfcosets.sci b/macros/gfcosets.sci
index ed69f86..59de7b8 100644
--- a/macros/gfcosets.sci
+++ b/macros/gfcosets.sci
@@ -15,17 +15,14 @@ function gfcs = gfcosets(m, p)
// Because the length of the cosets varies in the complete set, %nan is used to
// fill out the extra space in order to make all variables have the same
// length in the output matrix GFCS.
-
-
+//
+//
// Examples
// c = gfcosets(2,3)
// disp(c)
-
-// See also
-// gfminpol, gfprimdf, gfroots
-
+//
// Authors
-// Pola Lakshmi Priyanka, IIT Bombay//
+// Pola Lakshmi Priyanka, IIT Bombay
//*************************************************************************************************************************************//
diff --git a/macros/gflineq.bin b/macros/gflineq.bin
index 957bee2..3525ba7 100644
--- a/macros/gflineq.bin
+++ b/macros/gflineq.bin
Binary files differ
diff --git a/macros/gflineq.sci b/macros/gflineq.sci
index 3b34529..0a2b33d 100644
--- a/macros/gflineq.sci
+++ b/macros/gflineq.sci
@@ -13,7 +13,7 @@ function [x, sflag] = gflineq(a, b, p)
// equation A X = B in GF(P) and SFLAG=1.
// If the equation has no solution, then X is empty and SFLAG = 0.
//
-
+//
// Examples
// A=[1 0 1; 1 1 0; 1 1 1]
// p=3
@@ -26,12 +26,9 @@ function [x, sflag] = gflineq(a, b, p)
// disp('Linear equation has no solution and x is empty')
// end
// disp( pmodulo(A*x,p),'B =')
-
-// See also
-// gfadd, gfconv, gfdiv, gfrank, gfroots
-
+//
// Authors
-// Pola Lakshmi Priyanka, IIT Bombay//
+// Pola Lakshmi Priyanka, IIT Bombay
//*************************************************************************************************************************************//
diff --git a/macros/gfrepcov.bin b/macros/gfrepcov.bin
index 7ea415c..48ed26f 100644
--- a/macros/gfrepcov.bin
+++ b/macros/gfrepcov.bin
Binary files differ
diff --git a/macros/gfrepcov.sci b/macros/gfrepcov.sci
index 6e16717..35a9cb6 100644
--- a/macros/gfrepcov.sci
+++ b/macros/gfrepcov.sci
@@ -1,28 +1,25 @@
function q = gfrepcov(p)
// This function represents a binary polynomial in standard ascending order format.
-
+//
// Calling Sequence
// Q = GFREPCOV(P)
-
+//
// Description
// Q = GFREPCOV(P) converts vector (P) to standard ascending
// order format vector (Q), which is a vector that lists the coefficients in
// order of ascending exponents, if P represents a binary polynomial
// as a vector of exponents with non-zero coefficients.
-
+//
// Examples
// The matrix below represents the binary polynomial $1 + s + s^2 + s^4$
// Implies output vector should be [1 1 1 0 1]
// A=[0 1 2 4 ]
// B=gfrepcov(A)
// disp(B)
-// Also try A=[1 2 3 4 4] which is incorrect way of representing binary polynomial
-
-// See also
-// gfpretty
-
+//
+//
// Authors
-// Pola Lakshmi Priyanka, IIT Bombay//
+// Pola Lakshmi Priyanka, IIT Bombay
//*************************************************************************************************************************************//
diff --git a/macros/gftrunc.bin b/macros/gftrunc.bin
index fbb0c07..6857e20 100644
--- a/macros/gftrunc.bin
+++ b/macros/gftrunc.bin
Binary files differ
diff --git a/macros/gftrunc.sci b/macros/gftrunc.sci
index de0e6e6..5381d1c 100644
--- a/macros/gftrunc.sci
+++ b/macros/gftrunc.sci
@@ -1,25 +1,21 @@
function at=gftrunc(a)
//This function is used to truncate the higher order zeroes in the given polynomial equation
-
-//Calling Sequence
+//
+// Calling Sequence
//AT=GFTRUNC(A)
-
-//Description
+//
+// Description
//A is considered to be matrix that gives the coefficients of polynomial GF(p) in ascending order powers
//A = [1 2 3] denotes 1 + 2 x + 3 x^2
//AT=GFTRUNC(A) returns a matrix which gives the polynomial GF(p) truncating the input matrix
//that is if A(i)=0, where i > d + 1, where d is the degree of the polynomial, that zero is removed
-
+//
//Examples
-//A= [ 0 0 1 4 0 0] returns [0 0 1 4]
+//A= [ 0 0 1 4 0 0]
//c = gftrunc([0 0 1 2 3 0 0 0 4 5 0 1 0 0])
-
-
-//See also
-//gfadd, gfconv, gfdeconv, gfsub, gftuple
-
+//
//Authors
-//Pola Lakshmi Priyanka, IIT Bombay//
+//Pola Lakshmi Priyanka, IIT Bombay
//*************************************************************************************************************************************//
// Check number of input arguments
diff --git a/macros/iqcoef2imbal.bin b/macros/iqcoef2imbal.bin
index 54d08ae..cc18580 100644
--- a/macros/iqcoef2imbal.bin
+++ b/macros/iqcoef2imbal.bin
Binary files differ
diff --git a/macros/iqcoef2imbal.sci b/macros/iqcoef2imbal.sci
index 2c08c2b..16608fc 100644
--- a/macros/iqcoef2imbal.sci
+++ b/macros/iqcoef2imbal.sci
@@ -1,10 +1,10 @@
function [Amp_Imb_DB, Ph_Imb_Deg] = iqcoef2imbal(Comp_Coef)
// This function returns the amplitude imbalance and phase imbalance
// that a given compensator coefficient will correct.
-
+//
// Calling sequence
// [AMP_IMB_DB, PH_IMB_DEG] = IQCOEF2IMBAL(COMP_COEF)
-
+//
// Description
// [AMP_IMB_DB, PH_IMB_DEG] = IQCOEF2IMBAL(COMP_COEF) returns
// the amplitude imbalance and phase imbalance
@@ -12,20 +12,15 @@ function [Amp_Imb_DB, Ph_Imb_Deg] = iqcoef2imbal(Comp_Coef)
// Comp_Coef is a scalar or a vector of complex numbers.
// AMP_IMB_DB and PH_IMB_DEG are the amplitude imbalance in dB
// and the phase imbalance in degrees.
-
+//
// Examples
// [a_imb_db,ph_imb_deq] = iqcoef2imbal([4 2 complex(-0.1145,0.1297) complex(-0.0013,0.0029)])
// disp(a_imb_db,'amplitude imbalance in dB =')
// disp(ph_imb_deq,'phase imbalance in degrees=')
-
-// Bibliography
-// http://in.mathworks.com/help/comm/ref/iqcoef2imbal.html
-
-// See also
-// iqimbal2coef
-
+//
+//
// Authors
-// Pola Lakshmi Priyanka, IIT Bombay//
+// Pola Lakshmi Priyanka, IIT Bombay
//*************************************************************************************************************************************//
diff --git a/macros/iqimbal2coef.bin b/macros/iqimbal2coef.bin
index 0bf83da..0d7d51e 100644
--- a/macros/iqimbal2coef.bin
+++ b/macros/iqimbal2coef.bin
Binary files differ
diff --git a/macros/iqimbal2coef.sci b/macros/iqimbal2coef.sci
index 0849478..c8a8645 100644
--- a/macros/iqimbal2coef.sci
+++ b/macros/iqimbal2coef.sci
@@ -1,31 +1,25 @@
function Comp_Coef = iqimbal2coef(Amp_Imb_dB, Ph_Imb_Deg)
// This function returns the I/Q imbalance compensator coefficient for given amplitude and phase imbalance.
-
+//
// Calling Sequence
// COMP_COEF = IQIMBAL2COEF(AMP_IMB_DB, PH_IMB_DEG)
-
+//
// Description
// COMP_COEF = IQIMBAL2COEF(AMP_IMB_DB, PH_IMB_DEG) returns the I/Q imbalance
// compensator coefficient for given amplitude and phase imbalance.
// Comp_Coef is a scalar or a vector of complex numbers.
// AMP_IMB_DB and PH_IMB_DEG are the amplitude imbalance in dB
// and the phase imbalance in degrees and should be of same size.
-
+//
// Examples
// [a_imb_db,ph_imb_deg] = iqcoef2imbal([4 2 complex(-0.1145,0.1297) complex(-0.0013,0.0029)])
// disp(a_imb_db,'amplitude imbalance in dB =')
// disp(ph_imb_deg,'phase imbalance in degrees=')
// Comp_Coef = iqimbal2coef(a_imb_db, ph_imb_deg)
// disp(Comp_Coef,'Compensator Coefficients=')
-
-// Bibliography
-// http://in.mathworks.com/help/comm/ref/iqimbal2coef.html
-
-// See also
-// iqcoef2imbal
-
+//
// Authors
-// Pola Lakshmi Priyanka, IIT Bombay//
+// Pola Lakshmi Priyanka, IIT Bombay
//*************************************************************************************************************************************//
diff --git a/macros/iscatastrophic.bin b/macros/iscatastrophic.bin
index 99f7cb0..0e68d18 100644
--- a/macros/iscatastrophic.bin
+++ b/macros/iscatastrophic.bin
Binary files differ
diff --git a/macros/iscatastrophic.sci b/macros/iscatastrophic.sci
index 9c54f19..2dc1ad9 100644
--- a/macros/iscatastrophic.sci
+++ b/macros/iscatastrophic.sci
@@ -1,14 +1,10 @@
function result = iscatastrophic(trellis)
-
// This function determines if a convolutional code is catastrophic or not
-
// Calling Sequence
// RESULT = ISCATASTROPHIC(TRELLIS)
-
// Description
// RESULT = ISCATASTROPHIC(TRELLIS) returns 1 if the specified
// trellis corresponds to a catastrophic convolutional code, else 0.
-
// Examples
// eg_1.numInputSymbols = 4;
// eg_1.numOutputSymbols = 4;
@@ -22,7 +18,6 @@ function result = iscatastrophic(trellis)
// else
// disp('Example 1 is not catastrophic')
// end
-
// eg_2.numInputSymbols = 2;
// eg_2.numOutputSymbols = 4;
// eg_2.numStates = 2;
@@ -35,13 +30,8 @@ function result = iscatastrophic(trellis)
// else
// disp('Example 2 is not catastrophic')
// end
-
-
-// See also
-// istrellis
-
// Authors
-// Pola Lakshmi Priyanka, IIT Bombay//
+// Pola Lakshmi Priyanka, IIT Bombay
//*************************************************************************************************************************************//
diff --git a/macros/istrellis.bin b/macros/istrellis.bin
index 273fa72..2cb8404 100644
--- a/macros/istrellis.bin
+++ b/macros/istrellis.bin
Binary files differ
diff --git a/macros/istrellis.sci b/macros/istrellis.sci
index da8be0c..86e6583 100644
--- a/macros/istrellis.sci
+++ b/macros/istrellis.sci
@@ -1,30 +1,29 @@
function [isOk, status] = istrellis(S)
-
// This function checks if the given input is of trellis structure
-
+//
// Calling Sequence
// [ISOK, STATUS] = ISTRELLIS(S)
//
// Description
// [ISOK, STATUS] = ISTRELLIS(S) returns [T,''] if the given input is valid trellis structure. Otherwise ISOK is F and STATUS
// indicates the reason for invalidity
-
+//
// Fields in trellis structure are
// numInputSymbols, (number of input symbols)
// numOutputSymbols, (number of output symbols)
// numStates, (number of states)
// nextStates, (next state matrix)
// outputs, (output matrix)
-
+//
// Properties of the fields are as follows
// numInputSymbols and numOutputSymbols should be a power of 2 (as data is represented in bits).
// The 'nextStates' and 'outputs' fields are matrices of size 'numStates' x 'numInputSymbols' .
// Each element in the 'nextStates' matrix and 'output' matrix is an integer value between zero and (numStates-1).
// The (r,c) element of the 'nextStates' matrix and 'output' matrix,denotes the next state and output respectively when
// the starting state is (r-1) and the input bits have decimal representation (c-1).
-
+//
// To convert to decimal value, use the first input bit as the most significant bit (MSB).
-
+//
// Examples
// Valid trellis structure
// trellis.numInputSymbols = 4;
@@ -33,7 +32,7 @@ function [isOk, status] = istrellis(S)
// trellis.nextStates = [0 1 2 1;0 1 2 1; 0 1 2 1];
// trellis.outputs = [0 0 1 1;1 1 2 1; 1 0 1 1];
// [isok,status] = istrellis(trellis)
-
+//
// Inavlid trellis structure
// trellis.numInputSymbols = 3;
// trellis.numOutputSymbols = 3;
@@ -41,12 +40,9 @@ function [isOk, status] = istrellis(S)
// trellis.nextStates = [0 1 2 ;0 1 2 ; 0 1 2 ];
// trellis.outputs = [0 0 1 ;1 1 2 ; 1 0 1 ];
// [isok,status] = istrellis(trellis)
-
-// See also
-// iscatastrophic
-
+//
// Authors
-// Pola Lakshmi Priyanka, IIT Bombay//
+// Pola Lakshmi Priyanka, IIT Bombay
//*************************************************************************************************************************************//
diff --git a/macros/lib b/macros/lib
index 00d40f5..cf1a67d 100644
--- a/macros/lib
+++ b/macros/lib
@@ -1,17 +1,18 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<scilablib name="FOSSEE_Communication_Systems_Toolboxlib">
- <macro name="alignsignals" file="alignsignals.bin" md5="6795c5e3a80214bc558a8de3cb9e70ed"/>
- <macro name="arithdeco" file="arithdeco.bin" md5="9b79360e11022a61df294c3faf92dd4c"/>
- <macro name="arithenco" file="arithenco.bin" md5="5f797fa534d618e26419f0e07b494426"/>
- <macro name="finddelay" file="finddelay.bin" md5="780f1ae166109a71498a132f4db4da36"/>
- <macro name="gfcosets" file="gfcosets.bin" md5="491594b4052aec2305005e6ddd217658"/>
- <macro name="gflineq" file="gflineq.bin" md5="bb3e6416db103d09fa5a314dfef539e8"/>
- <macro name="gfrepcov" file="gfrepcov.bin" md5="28da79e826fe62a9b4bab2bbfa11c6ed"/>
- <macro name="gftrunc" file="gftrunc.bin" md5="fe2e351203028638df0022bb6c64cc90"/>
- <macro name="iqcoef2imbal" file="iqcoef2imbal.bin" md5="97c879ba51333778a30f7dde84d4d56f"/>
- <macro name="iqimbal2coef" file="iqimbal2coef.bin" md5="4feef6170bda7abbbabde79aae78eff4"/>
- <macro name="iscatastrophic" file="iscatastrophic.bin" md5="278f799083ff369a67f159458175829b"/>
- <macro name="istrellis" file="istrellis.bin" md5="4f81dbadca9dc852b04bf2ff3298608c"/>
- <macro name="lteZadoffChuSeq" file="lteZadoffChuSeq.bin" md5="2902786966ab019c3619dab250a26f7e"/>
- <macro name="ssbdemod" file="ssbdemod.bin" md5="bbc800029ef280969229d9c26b7eac5a"/>
+ <macro name="alignsignals" file="alignsignals.bin" md5="cb116d6026da95835054abdc45a0c635"/>
+ <macro name="arithdeco" file="arithdeco.bin" md5="bb69e85438c5f175f807cd1013e3de7c"/>
+ <macro name="arithenco" file="arithenco.bin" md5="34b06803adf8ed10832552f6bb6dca5b"/>
+ <macro name="finddelay" file="finddelay.bin" md5="6d397aa5c6a72e9f557b10e000a21428"/>
+ <macro name="gfcosets" file="gfcosets.bin" md5="f928635d1206c467840183b84f016a4b"/>
+ <macro name="gflineq" file="gflineq.bin" md5="b9d05708651815a112dd7a18ea356583"/>
+ <macro name="gfrepcov" file="gfrepcov.bin" md5="e550ee23c65d6f84dc519a5f2d7e2343"/>
+ <macro name="gftrunc" file="gftrunc.bin" md5="9e0e57094deb06fc1279318a609c892b"/>
+ <macro name="iqcoef2imbal" file="iqcoef2imbal.bin" md5="458754b3c5b8f84cff43b09633cbfe0a"/>
+ <macro name="iqimbal2coef" file="iqimbal2coef.bin" md5="0cf10b0d70f133d030c5154167e55f94"/>
+ <macro name="iscatastrophic" file="iscatastrophic.bin" md5="40ea9c8cceda9749ab324a096b3025e7"/>
+ <macro name="istrellis" file="istrellis.bin" md5="f3fab41ac8416f201ad0767e9fac1e2c"/>
+ <macro name="lteZadoffChuSeq" file="lteZadoffChuSeq.bin" md5="857ddd243d196eca04951182873c74eb"/>
+ <macro name="octave_functions" file="octave_functions.bin" md5="ac3663346a69f18847150b5853a62557"/>
+ <macro name="ssbdemod" file="ssbdemod.bin" md5="3af17103272263af9cf40f35d2a2499b"/>
</scilablib>
diff --git a/macros/lteZadoffChuSeq.bin b/macros/lteZadoffChuSeq.bin
index 02d0fb4..f7505fb 100644
--- a/macros/lteZadoffChuSeq.bin
+++ b/macros/lteZadoffChuSeq.bin
Binary files differ
diff --git a/macros/lteZadoffChuSeq.sci b/macros/lteZadoffChuSeq.sci
index 9f4a6c1..862e268 100644
--- a/macros/lteZadoffChuSeq.sci
+++ b/macros/lteZadoffChuSeq.sci
@@ -7,23 +7,23 @@ function seq = lteZadoffChuSeq(R, N)
// Description
// SEQ = LTEZADOFFCHUSEQ(R, N) generates the Rth root Zadoff-Chu sequence (SEQ)
// of length N.
-
+//
// Examples
// seq1 = lteZadoffChuSeq(2, 3)
// disp(seq1,'seq1')
-// Error should occur because inputs are not co primes
+// //Error should occur because inputs are not co primes
// seq2 = lteZadoffChuSeq(25, 5)
// disp(seq2,'seq2')
-
-
+//
+//
// Bibliography
// 3rd Generation Partnership Project, Technical Specification Group Radio
// Access Network, Evolved Universal Terrestrial Radio Access (E-UTRA),
// Physical channels and modulation, Release 10, 3GPP TS 36.211, v10.0.0,
// 2010-12.
-
+//
// Authors
-// Pola Lakshmi Priyanka, IIT Bombay//
+// Pola Lakshmi Priyanka, IIT Bombay
//*************************************************************************************************************************************//
diff --git a/macros/octave_functions.bin b/macros/octave_functions.bin
new file mode 100644
index 0000000..0a8e662
--- /dev/null
+++ b/macros/octave_functions.bin
Binary files differ
diff --git a/macros/octave_functions.sci b/macros/octave_functions.sci
new file mode 100644
index 0000000..26ba9e2
--- /dev/null
+++ b/macros/octave_functions.sci
@@ -0,0 +1,63 @@
+// Copyright (C) 2019 - IIT Bombay - FOSSEE
+//
+// 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
+// Author: Rupak Rokade
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+
+function [y] = octave_functions()
+ // Call functions available in communications (and any other) package of Octave. The actual function call is "octave_fun" and is available as a part of "FOSSEE-Scilab-Octave-Toolbox"
+ //
+ // Syntax
+ // [y1, y2, ...] = octave_fun("octave_function",input1,input2,...)
+ // [y1, y2, ...] = octave_fun("octave_function",input1,input2,...,optional_input1,optional_input2,...)
+ // [y1, y2, ...] = octave_fun("octave_function","octave_package",input1,input2,...)
+ // [y1, y2, ...] = octave_fun("octave_function","octave_package",input1,input2,...,optional_input1,optional_input2,...)
+ //
+ // Parameters
+ // y : ouput as returned by octave. It can be a vector or matrix of doubles
+ // octave_function : name of the function in octave that has to be called. It has to be a string in double quotes
+ // input : input as expected by the octave function. It can be a vector or matrix of doubles
+ // optional_input : an optional argument that the given octave function can accept. It has to be a string in double quotes
+ // octave_package : name of the package in octave that has to be loaded as required by the octave function. It has to be a string in double quotes
+ //
+ // Description
+ // This function accepts an octave function name with the relevant inputs and returns the output as generated. It requires Octave to be installed along with necessary packages.
+ //
+ // <latex>
+ // \begin{eqnarray}
+ // &\mbox{min}_{x}
+ // & C^T⋅x \\
+ // & \text{subject to}& A⋅x = b \\
+ // & & G⋅x \preceq_K h \\
+ // & & x_i \in \{0,1\}, i \in \!\, bool_vars\
+ // & & x_j \in \!\, \mathbb{Z}, i \in \!\, int_vars\\
+ // \end{eqnarray}
+ // </latex>
+ //
+ // Examples
+ //
+ // // Reshape a given array using octave and its "communications" package.
+ // // See help in octave for more information about "reshape" function.
+ // // Note that this example requires the "communications" package to be installed in octave and the "FOSSEE-Scilab-Octave-Toolbox" loaded in scilab.
+ // x = [1, 2, 3, 4];
+ // dim1 = 2;
+ // dim2 = 2;
+ // output = octave_fun("reshape", "communications", x, dim1, dim2)
+ //
+ // Examples
+ //
+ // // Compute the Q function using octave and its "communications" package.
+ // // See help in octave for more information about "qfunc" function.
+ // // Note that this example requires the "communications" package to be installed in octave and the "FOSSEE-Scilab-Octave-Toolbox" loaded in scilab.
+ // M = [1, 2; 3, 4];
+ // output = octave_fun("qfunc", "communications", M)
+ //
+// Authors
+// Rupak Rokade
+endfunction
diff --git a/macros/ssbdemod.bin b/macros/ssbdemod.bin
index 84336e2..06966b2 100644
--- a/macros/ssbdemod.bin
+++ b/macros/ssbdemod.bin
Binary files differ
diff --git a/macros/ssbdemod.sci b/macros/ssbdemod.sci
index 7271cf9..c6da89a 100644
--- a/macros/ssbdemod.sci
+++ b/macros/ssbdemod.sci
@@ -1,12 +1,11 @@
-function z = ssbdemod(y, Fc, Fs, varargin)
-
+function z = ssbdemod(y, Fc, Fs, varargin)
// This function performs Single Side Band Amplitude Demodulation
-
+//
// Calling Sequence
// Z = SSBDEMOD(Y,Fc,Fs)
// Z = SSBDEMOD(Y,Fc,Fs,INI_PHASE)
// Z = SSBDEMOD(Y,Fc,Fs,INI_PHASE,NUM,DEN)
-
+//
// Description
// Z = SSBDEMOD(Y,Fc,Fs)
// demodulates the single sideband amplitude modulated signal Y
@@ -24,10 +23,10 @@ function z = ssbdemod(y, Fc, Fs, varargin)
//
// Fs must satisfy Fs >2*(Fc + BW), where BW is the bandwidth of the
// modulating signal.
-
-
+//
+//
// Examples
-
+//
// Fs =200;
// t = [0:2*Fs+1]'/Fs;
// ini_phase = 5;
@@ -58,12 +57,9 @@ function z = ssbdemod(y, Fc, Fs, varargin)
// title('Demodulated signal');
// subplot(3,1,3); plot(axis,zz1);
// title('Spectrum of Demodulated signal');
-
-// See also
-// ssbmod
-
+//
// Authors
-// Pola Lakshmi Priyanka, IIT Bombay//
+// Pola Lakshmi Priyanka, IIT Bombay
//*************************************************************************************************************************************//