diff options
author | rupak | 2020-01-21 19:05:09 +0530 |
---|---|---|
committer | rupak | 2020-01-21 19:05:09 +0530 |
commit | d2f4d30ebcad7430e4f0495cae5c2b3a16be73ce (patch) | |
tree | 8987d169ad87e930f137122a450c02dc5d13dcc5 /macros | |
parent | 36aca8aaaee5cf8cb5452268fd07c0b558b000a3 (diff) | |
download | FOSSEE-Communication-Systems-Toolbox-master.tar.gz FOSSEE-Communication-Systems-Toolbox-master.tar.bz2 FOSSEE-Communication-Systems-Toolbox-master.zip |
Diffstat (limited to 'macros')
-rw-r--r-- | macros/alignsignals.bin | bin | 19752 -> 19636 bytes | |||
-rw-r--r-- | macros/alignsignals.sci | 5 | ||||
-rw-r--r-- | macros/arithdeco.bin | bin | 22733 -> 22427 bytes | |||
-rw-r--r-- | macros/arithdeco.sci | 25 | ||||
-rw-r--r-- | macros/arithenco.bin | bin | 22355 -> 22426 bytes | |||
-rw-r--r-- | macros/arithenco.sci | 15 | ||||
-rw-r--r-- | macros/cleanmacros.sce | 20 | ||||
-rw-r--r-- | macros/finddelay.bin | bin | 26477 -> 26538 bytes | |||
-rw-r--r-- | macros/finddelay.sci | 15 | ||||
-rw-r--r-- | macros/gfcosets.bin | bin | 10350 -> 10336 bytes | |||
-rw-r--r-- | macros/gfcosets.sci | 11 | ||||
-rw-r--r-- | macros/gflineq.bin | bin | 19682 -> 19629 bytes | |||
-rw-r--r-- | macros/gflineq.sci | 9 | ||||
-rw-r--r-- | macros/gfrepcov.bin | bin | 5439 -> 5396 bytes | |||
-rw-r--r-- | macros/gfrepcov.sci | 15 | ||||
-rw-r--r-- | macros/gftrunc.bin | bin | 4631 -> 4635 bytes | |||
-rw-r--r-- | macros/gftrunc.sci | 20 | ||||
-rw-r--r-- | macros/iqcoef2imbal.bin | bin | 12452 -> 12380 bytes | |||
-rw-r--r-- | macros/iqcoef2imbal.sci | 17 | ||||
-rw-r--r-- | macros/iqimbal2coef.bin | bin | 9184 -> 9083 bytes | |||
-rw-r--r-- | macros/iqimbal2coef.sci | 16 | ||||
-rw-r--r-- | macros/iscatastrophic.bin | bin | 6927 -> 6842 bytes | |||
-rw-r--r-- | macros/iscatastrophic.sci | 12 | ||||
-rw-r--r-- | macros/istrellis.bin | bin | 16135 -> 16253 bytes | |||
-rw-r--r-- | macros/istrellis.sci | 20 | ||||
-rw-r--r-- | macros/lib | 29 | ||||
-rw-r--r-- | macros/lteZadoffChuSeq.bin | bin | 6969 -> 7089 bytes | |||
-rw-r--r-- | macros/lteZadoffChuSeq.sci | 12 | ||||
-rw-r--r-- | macros/octave_functions.bin | bin | 0 -> 4686 bytes | |||
-rw-r--r-- | macros/octave_functions.sci | 63 | ||||
-rw-r--r-- | macros/ssbdemod.bin | bin | 18419 -> 18517 bytes | |||
-rw-r--r-- | macros/ssbdemod.sci | 20 |
32 files changed, 174 insertions, 150 deletions
diff --git a/macros/alignsignals.bin b/macros/alignsignals.bin Binary files differindex 48bdb7d..1a8f3ec 100644 --- a/macros/alignsignals.bin +++ b/macros/alignsignals.bin 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 Binary files differindex 505f75b..307cf86 100644 --- a/macros/arithdeco.bin +++ b/macros/arithdeco.bin 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 Binary files differindex 429c26d..441c2ad 100644 --- a/macros/arithenco.bin +++ b/macros/arithenco.bin 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 Binary files differindex 8a977dc..c5d32d5 100644 --- a/macros/finddelay.bin +++ b/macros/finddelay.bin 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 Binary files differindex 987d207..a0ec71a 100644 --- a/macros/gfcosets.bin +++ b/macros/gfcosets.bin 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 Binary files differindex 957bee2..3525ba7 100644 --- a/macros/gflineq.bin +++ b/macros/gflineq.bin 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 Binary files differindex 7ea415c..48ed26f 100644 --- a/macros/gfrepcov.bin +++ b/macros/gfrepcov.bin 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 Binary files differindex fbb0c07..6857e20 100644 --- a/macros/gftrunc.bin +++ b/macros/gftrunc.bin 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 Binary files differindex 54d08ae..cc18580 100644 --- a/macros/iqcoef2imbal.bin +++ b/macros/iqcoef2imbal.bin 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 Binary files differindex 0bf83da..0d7d51e 100644 --- a/macros/iqimbal2coef.bin +++ b/macros/iqimbal2coef.bin 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 Binary files differindex 99f7cb0..0e68d18 100644 --- a/macros/iscatastrophic.bin +++ b/macros/iscatastrophic.bin 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 Binary files differindex 273fa72..2cb8404 100644 --- a/macros/istrellis.bin +++ b/macros/istrellis.bin 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 //*************************************************************************************************************************************// @@ -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 Binary files differindex 02d0fb4..f7505fb 100644 --- a/macros/lteZadoffChuSeq.bin +++ b/macros/lteZadoffChuSeq.bin 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 Binary files differnew file mode 100644 index 0000000..0a8e662 --- /dev/null +++ b/macros/octave_functions.bin 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 Binary files differindex 84336e2..06966b2 100644 --- a/macros/ssbdemod.bin +++ b/macros/ssbdemod.bin 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 //*************************************************************************************************************************************// |