summaryrefslogtreecommitdiff
path: root/macros
diff options
context:
space:
mode:
authorsiddhu89902017-02-07 16:16:31 +0530
committersiddhu89902017-02-07 16:16:31 +0530
commite7dba33a909e158dffc6ddb3361df10d427db631 (patch)
treed71a27ff842d6088798ce8a0db16decb1fe10853 /macros
parent765d9c44f94634406eeff50e20e8cdfcf1b7699c (diff)
downloadscilab2c-e7dba33a909e158dffc6ddb3361df10d427db631.tar.gz
scilab2c-e7dba33a909e158dffc6ddb3361df10d427db631.tar.bz2
scilab2c-e7dba33a909e158dffc6ddb3361df10d427db631.zip
Support for 'lqr' and 'lqe' added
Diffstat (limited to 'macros')
-rw-r--r--macros/ASTManagement/AST_HandleEndGenFun.binbin97736 -> 97772 bytes
-rw-r--r--macros/ASTManagement/AST_HandleEndGenFun.sci2
-rw-r--r--macros/ASTManagement/AST_HandleHeader.binbin39124 -> 39132 bytes
-rw-r--r--macros/ASTManagement/AST_HandleHeader.sci2
-rw-r--r--macros/FunctionAnnotation/FA_GetOutArgInfo.binbin16804 -> 17656 bytes
-rw-r--r--macros/FunctionAnnotation/FA_GetOutArgInfo.sci14
-rw-r--r--macros/FunctionAnnotation/FA_SCHUR_SZ.binbin1004 -> 872 bytes
-rw-r--r--macros/FunctionAnnotation/FA_SZ_LQE.binbin0 -> 876 bytes
-rw-r--r--macros/FunctionAnnotation/FA_SZ_LQE.sci8
-rw-r--r--macros/FunctionAnnotation/FA_SZ_LQR.binbin0 -> 700 bytes
-rw-r--r--macros/FunctionAnnotation/FA_SZ_LQR.sci6
-rw-r--r--macros/FunctionAnnotation/FA_SZ_LQR_K.binbin0 -> 920 bytes
-rw-r--r--macros/FunctionAnnotation/libbin2276 -> 2324 bytes
-rw-r--r--macros/FunctionAnnotation/names2
-rw-r--r--macros/ToolInitialization/INIT_FillSCI2LibCDirs.binbin1331464 -> 1342296 bytes
-rw-r--r--macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci60
-rw-r--r--macros/findDeps/getAllHeaders.binbin33112 -> 33376 bytes
-rw-r--r--macros/findDeps/getAllHeaders.sci2
-rw-r--r--macros/findDeps/getAllInterfaces.binbin34484 -> 34796 bytes
-rw-r--r--macros/findDeps/getAllInterfaces.sci2
-rw-r--r--macros/findDeps/getAllSources.binbin196196 -> 196436 bytes
-rw-r--r--macros/findDeps/getAllSources.sci2
22 files changed, 91 insertions, 9 deletions
diff --git a/macros/ASTManagement/AST_HandleEndGenFun.bin b/macros/ASTManagement/AST_HandleEndGenFun.bin
index a9e28eff..5c2833ea 100644
--- a/macros/ASTManagement/AST_HandleEndGenFun.bin
+++ b/macros/ASTManagement/AST_HandleEndGenFun.bin
Binary files differ
diff --git a/macros/ASTManagement/AST_HandleEndGenFun.sci b/macros/ASTManagement/AST_HandleEndGenFun.sci
index fa7b33a2..5ff7181f 100644
--- a/macros/ASTManagement/AST_HandleEndGenFun.sci
+++ b/macros/ASTManagement/AST_HandleEndGenFun.sci
@@ -316,7 +316,7 @@ NOutArg_mod = NOutArg
OutArg(1).FindLike = InArg(1).FindLike;
OutArg(1).Scope = 'Number_d';
else
- OutArg = FA_GetOutArgInfo(InArg,NInArg,OutArg,NOutArg,SharedInfo,FunPrecSpecifier,FunTypeAnnot,FunSizeAnnot,ReportFileName);
+ OutArg = FA_GetOutArgInfo(InArg,NInArg,OutArg,NOutArg,SharedInfo,FunPrecSpecifier,FunTypeAnnot,FunSizeAnnot,ReportFileName,ASTFunName);
end
// #RNU_RES_B
diff --git a/macros/ASTManagement/AST_HandleHeader.bin b/macros/ASTManagement/AST_HandleHeader.bin
index 268846f6..87ef763a 100644
--- a/macros/ASTManagement/AST_HandleHeader.bin
+++ b/macros/ASTManagement/AST_HandleHeader.bin
Binary files differ
diff --git a/macros/ASTManagement/AST_HandleHeader.sci b/macros/ASTManagement/AST_HandleHeader.sci
index 75b2f972..0237bd5f 100644
--- a/macros/ASTManagement/AST_HandleHeader.sci
+++ b/macros/ASTManagement/AST_HandleHeader.sci
@@ -165,7 +165,7 @@ SharedInfo.CurrentFunInfo.OutArg = ...
SharedInfo.CurrentFunInfo.OutArg,NOutArg,...
SharedInfo,...
SharedInfo.CurrentFunInfo.FunPrecSpecifier,...
- SharedInfo.CurrentFunInfo.FunTypeAnnot,SharedInfo.CurrentFunInfo.FunSizeAnnot,ReportFileName);
+ SharedInfo.CurrentFunInfo.FunTypeAnnot,SharedInfo.CurrentFunInfo.FunSizeAnnot,ReportFileName,'');
//#RNU_RES_B
// -------------------------------------------------------------------------
// --- Stores InArg structure into the temporary variables symbol table. ---
diff --git a/macros/FunctionAnnotation/FA_GetOutArgInfo.bin b/macros/FunctionAnnotation/FA_GetOutArgInfo.bin
index 2b75b7a3..e8048b72 100644
--- a/macros/FunctionAnnotation/FA_GetOutArgInfo.bin
+++ b/macros/FunctionAnnotation/FA_GetOutArgInfo.bin
Binary files differ
diff --git a/macros/FunctionAnnotation/FA_GetOutArgInfo.sci b/macros/FunctionAnnotation/FA_GetOutArgInfo.sci
index d9696c8b..a35281a8 100644
--- a/macros/FunctionAnnotation/FA_GetOutArgInfo.sci
+++ b/macros/FunctionAnnotation/FA_GetOutArgInfo.sci
@@ -1,5 +1,6 @@
function UpdatedOutArg = ...
- FA_GetOutArgInfo(InArg,NInArg,OutArg,NOutArg,SharedInfo,FunPrecSpecifier,FunTypeAnnot,FunSizeAnnot,ReportFileName)
+ FA_GetOutArgInfo(InArg,NInArg,OutArg,NOutArg,SharedInfo,FunPrecSpecifier, ...
+ FunTypeAnnot,FunSizeAnnot,ReportFileName,ASTFunName)
// function UpdatedOutArg = ...
// FA_GetOutArgInfo(InArg,NInArg,OutArg,NOutArg,SharedInfo,FunPrecSpecifier,FunTypeAnnot,FunSizeAnnot,ReportFileName)
// -----------------------------------------------------------------
@@ -23,7 +24,7 @@ function UpdatedOutArg = ...
// ------------------------------
// --- Check input arguments. ---
// ------------------------------
-SCI2CNInArgCheck(argn(2),9,9);
+SCI2CNInArgCheck(argn(2),10,10);
// -----------------------
// --- Initialization. ---
// -----------------------
@@ -121,8 +122,13 @@ for counterout = 1:NOutArg
UpdatedOutArg(counterout).Size(iterOutputPosition) = string(tmpeval);
end
end
-
- UpdatedOutArg(counterout).Value = %nan;
+ if(ASTFunName == 'syslin')
+ no_of_st = eval(InArg(2).Size(1))
+ no_of_ip = eval(InArg(3).Size(2))
+ UpdatedOutArg(counterout).Value = no_of_st+no_of_ip*0.1;
+ else
+ UpdatedOutArg(counterout).Value = %nan;
+ end
UpdatedOutArg(counterout).Dimension = GetSymbolDimension(UpdatedOutArg(counterout).Size);
UpdatedOutArg(counterout).Scope = 'Temp';//NUT anche su questo si puo' ragionare verifica anche la handleoperation.
end
diff --git a/macros/FunctionAnnotation/FA_SCHUR_SZ.bin b/macros/FunctionAnnotation/FA_SCHUR_SZ.bin
index 9d77eae8..d16f0292 100644
--- a/macros/FunctionAnnotation/FA_SCHUR_SZ.bin
+++ b/macros/FunctionAnnotation/FA_SCHUR_SZ.bin
Binary files differ
diff --git a/macros/FunctionAnnotation/FA_SZ_LQE.bin b/macros/FunctionAnnotation/FA_SZ_LQE.bin
new file mode 100644
index 00000000..2fb97727
--- /dev/null
+++ b/macros/FunctionAnnotation/FA_SZ_LQE.bin
Binary files differ
diff --git a/macros/FunctionAnnotation/FA_SZ_LQE.sci b/macros/FunctionAnnotation/FA_SZ_LQE.sci
new file mode 100644
index 00000000..e7aecf1c
--- /dev/null
+++ b/macros/FunctionAnnotation/FA_SZ_LQE.sci
@@ -0,0 +1,8 @@
+function outsize = FA_SZ_LQE(inval,insz)
+
+ inval = eval(inval)
+ insz = eval(insz)
+ outsize(1) = string(int(inval));
+ outsize(2) = string(insz-int(inval));
+
+endfunction
diff --git a/macros/FunctionAnnotation/FA_SZ_LQR.bin b/macros/FunctionAnnotation/FA_SZ_LQR.bin
new file mode 100644
index 00000000..2de9d568
--- /dev/null
+++ b/macros/FunctionAnnotation/FA_SZ_LQR.bin
Binary files differ
diff --git a/macros/FunctionAnnotation/FA_SZ_LQR.sci b/macros/FunctionAnnotation/FA_SZ_LQR.sci
new file mode 100644
index 00000000..2f199d0b
--- /dev/null
+++ b/macros/FunctionAnnotation/FA_SZ_LQR.sci
@@ -0,0 +1,6 @@
+function outsize = FA_SZ_LQR(inval)
+
+ inval = eval(inval)
+ outsize(1) = string(int(inval));
+ outsize(2) = string(modulo(inval*10,10));
+ endfunction
diff --git a/macros/FunctionAnnotation/FA_SZ_LQR_K.bin b/macros/FunctionAnnotation/FA_SZ_LQR_K.bin
new file mode 100644
index 00000000..a936e3be
--- /dev/null
+++ b/macros/FunctionAnnotation/FA_SZ_LQR_K.bin
Binary files differ
diff --git a/macros/FunctionAnnotation/lib b/macros/FunctionAnnotation/lib
index a1a11a90..4053992e 100644
--- a/macros/FunctionAnnotation/lib
+++ b/macros/FunctionAnnotation/lib
Binary files differ
diff --git a/macros/FunctionAnnotation/names b/macros/FunctionAnnotation/names
index 64cb2574..e072098d 100644
--- a/macros/FunctionAnnotation/names
+++ b/macros/FunctionAnnotation/names
@@ -19,6 +19,8 @@ FA_SZ_COL_DIAG_IN_EX
FA_SZ_DIFF
FA_SZ_FROM_VAL
FA_SZ_LINSPACE_ROW
+FA_SZ_LQE
+FA_SZ_LQR
FA_SZ_OPAPEX
FA_SZ_OPBACKSLASH
FA_SZ_OPCC
diff --git a/macros/ToolInitialization/INIT_FillSCI2LibCDirs.bin b/macros/ToolInitialization/INIT_FillSCI2LibCDirs.bin
index 3e07d5a8..ae688b27 100644
--- a/macros/ToolInitialization/INIT_FillSCI2LibCDirs.bin
+++ b/macros/ToolInitialization/INIT_FillSCI2LibCDirs.bin
Binary files differ
diff --git a/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci b/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci
index 93ca5084..bcf26703 100644
--- a/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci
+++ b/macros/ToolInitialization/INIT_FillSCI2LibCDirs.sci
@@ -5926,19 +5926,19 @@ PrintStringInfo('NIN= 4',ClassFileName,'file','y');
PrintStringInfo('NOUT= 1',ClassFileName,'file','y');
PrintStringInfo('OUT(1).TP= ''ss''',ClassFileName,'file','y');
PrintStringInfo('OUT(1).SZ(1)= FA_ADD(IN(2).SZ(1),IN(4).SZ(1))',ClassFileName,'file','y');
-PrintStringInfo('OUT(1).SZ(2)= FA_ADD(FA_ADD(IN(2).SZ(2),IN(3).SZ(2)), ''1'')',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= FA_ADD(FA_ADD(IN(2).SZ(2),IN(3).SZ(2)), ''2'')',ClassFileName,'file','y');
PrintStringInfo('NIN= 5',ClassFileName,'file','y');
PrintStringInfo('NOUT= 1',ClassFileName,'file','y');
PrintStringInfo('OUT(1).TP= ''ss''',ClassFileName,'file','y');
PrintStringInfo('OUT(1).SZ(1)= FA_ADD(IN(2).SZ(1),IN(4).SZ(1))',ClassFileName,'file','y');
-PrintStringInfo('OUT(1).SZ(2)= FA_ADD(FA_ADD(IN(2).SZ(2),IN(3).SZ(2)), ''1'')',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= FA_ADD(FA_ADD(IN(2).SZ(2),IN(3).SZ(2)), ''2'')',ClassFileName,'file','y');
PrintStringInfo('NIN= 6',ClassFileName,'file','y');
PrintStringInfo('NOUT= 1',ClassFileName,'file','y');
PrintStringInfo('OUT(1).TP= ''ss''',ClassFileName,'file','y');
PrintStringInfo('OUT(1).SZ(1)= FA_ADD(IN(2).SZ(1),IN(4).SZ(1))',ClassFileName,'file','y');
-PrintStringInfo('OUT(1).SZ(2)= FA_ADD(FA_ADD(IN(2).SZ(2),IN(3).SZ(2)), ''1'')',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= FA_ADD(FA_ADD(IN(2).SZ(2),IN(3).SZ(2)), ''2'')',ClassFileName,'file','y');
ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
PrintStringInfo('g2d2d2d2'+ArgSeparator+'ss2',ClassFileName,'file','y');
@@ -6114,6 +6114,60 @@ INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,E
INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun);
+//------------------------------------
+//---- Class lqr ---------------------
+//------------------------------------
+ClassName = 'LQR';
+
+// --- Class Annotation. ---
+PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y');
+ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls);
+
+PrintStringInfo('NIN= 1',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 2',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(1)= FA_SZ_2(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(2)= FA_SZ_1(FA_SZ_LQR(IN(1).VAL))',ClassFileName,'file','y');
+
+ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
+PrintStringInfo('ss2'+ArgSeparator+'d2d2',ClassFileName,'file','y');
+
+// --- Annotation Function And Function List Function. ---
+FunctionName = 'lqr';
+PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y');
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun);
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun);
+
+//------------------------------------
+//---- Class lqe ---------------------
+//------------------------------------
+ClassName = 'LQE';
+
+// --- Class Annotation. ---
+PrintStringInfo(' Adding Class: '+ClassName+'.',GeneralReport,'file','y');
+ClassFileName = fullfile(SCI2CLibCAnnClsDir,ClassName+ExtensionCAnnCls);
+
+PrintStringInfo('NIN= 1',ClassFileName,'file','y');
+PrintStringInfo('NOUT= 2',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).TP= ''d''',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(1)= FA_SZ_1(FA_SZ_LQE(IN(1).VAL,IN(1).SZ(1)))',ClassFileName,'file','y');
+PrintStringInfo('OUT(1).SZ(2)= FA_SZ_1(FA_SZ_LQE(IN(1).VAL,IN(1).SZ(1)))',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).TP= ''d''',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(1)= FA_SZ_1(FA_SZ_LQE(IN(1).VAL,IN(1).SZ(1)))',ClassFileName,'file','y');
+PrintStringInfo('OUT(2).SZ(2)= FA_SZ_2(FA_SZ_LQE(IN(1).VAL,IN(1).SZ(1)))',ClassFileName,'file','y');
+
+ClassFileName = fullfile(SCI2CLibCFLClsDir,ClassName+ExtensionCFuncListCls);
+PrintStringInfo('ss2'+ArgSeparator+'d2d2',ClassFileName,'file','y');
+
+// --- Annotation Function And Function List Function. ---
+FunctionName = 'lqe';
+PrintStringInfo(' Adding Function: '+FunctionName+'.',GeneralReport,'file','y');
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCAnnFunDir,ClassName,GeneralReport,ExtensionCAnnFun);
+INIT_GenAnnFLFunctions(FunctionName,SCI2CLibCFLFunDir,ClassName,GeneralReport,ExtensionCFuncListFun);
+
// ////////////////////////////////////////////
// /////PARTE INTRODOTTA DA ALBERTO MOREA
// /////////////////////////////////////////////
diff --git a/macros/findDeps/getAllHeaders.bin b/macros/findDeps/getAllHeaders.bin
index 394987b7..f5bb98e9 100644
--- a/macros/findDeps/getAllHeaders.bin
+++ b/macros/findDeps/getAllHeaders.bin
Binary files differ
diff --git a/macros/findDeps/getAllHeaders.sci b/macros/findDeps/getAllHeaders.sci
index cbc2d540..b37f3e57 100644
--- a/macros/findDeps/getAllHeaders.sci
+++ b/macros/findDeps/getAllHeaders.sci
@@ -149,6 +149,8 @@ function allHeaders = getAllHeaders(SharedInfo)
"src/c/Files/includes/files.h"
"src/c/string/includes/convstr.h"
"src/c/CACSD/includes/syslin.h"
+ "src/c/CACSD/includes/lqr.h"
+ "src/c/CACSD/includes/lqe.h"
"src/c/linearAlgebra/includes/schur.h"];
//Header files required for "Arduino" output
diff --git a/macros/findDeps/getAllInterfaces.bin b/macros/findDeps/getAllInterfaces.bin
index 002cb38a..da506e8d 100644
--- a/macros/findDeps/getAllInterfaces.bin
+++ b/macros/findDeps/getAllInterfaces.bin
Binary files differ
diff --git a/macros/findDeps/getAllInterfaces.sci b/macros/findDeps/getAllInterfaces.sci
index 54c32e5c..32a0c6bb 100644
--- a/macros/findDeps/getAllInterfaces.sci
+++ b/macros/findDeps/getAllInterfaces.sci
@@ -144,6 +144,8 @@ function allInterfaces = getAllInterfaces(SharedInfo)
"src/c/Files/interfaces/int_files.h"
"src/c/string/interfaces/int_convstr.h"
"src/c/CACSD/interfaces/int_syslin.h"
+ "src/c/CACSD/interfaces/int_lqr.h"
+ "src/c/CACSD/interfaces/int_lqe.h"
"src/c/linearAlgebra/interfaces/int_schur.h"];
//Interface files required for "Arduino" output
diff --git a/macros/findDeps/getAllSources.bin b/macros/findDeps/getAllSources.bin
index 28567f67..aa5d4744 100644
--- a/macros/findDeps/getAllSources.bin
+++ b/macros/findDeps/getAllSources.bin
Binary files differ
diff --git a/macros/findDeps/getAllSources.sci b/macros/findDeps/getAllSources.sci
index 58c23e9b..3f789b47 100644
--- a/macros/findDeps/getAllSources.sci
+++ b/macros/findDeps/getAllSources.sci
@@ -979,6 +979,8 @@ function allSources = getAllSources(SharedInfo)
"src/c/Files/mput/i16mputa.c"
"src/c/string/convstr/gconvstrs.c"
"src/c/CACSD/syslin/dsyslina.c"
+ "src/c/CACSD/lqr/dlqra.c"
+ "src/c/CACSD/lqe/dlqea.c"
"src/c/linearAlgebra/schur/dschura.c"
"src/c/linearAlgebra/schur/dgschura.c"];