diff options
Diffstat (limited to 'src/c/matrixOperations/interfaces')
22 files changed, 1039 insertions, 0 deletions
diff --git a/src/c/matrixOperations/interfaces/int_OpApex.h b/src/c/matrixOperations/interfaces/int_OpApex.h new file mode 100644 index 00000000..4915e204 --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_OpApex.h @@ -0,0 +1,34 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_OPAPEX_H__ +#define __INT_OPAPEX_H__ + +#define s0OpApexs0(in) in + +#define d0OpApexd0(in) in + +#define c0OpApexc0(in) cconjs(in) + +#define z0OpApexz0(in) zconjs(in) + +#define s2OpApexs2(in,size,out) stransposea(in,size[0],size[1],out); + +#define d2OpApexd2(in,size,out) dtransposea(in,size[0],size[1],out); + +#define c2OpApexc2(in,size,out) ctransposea(in,size[0],size[1],out);cconja(out,size[0]*size[1],out); + +#define z2OpApexz2(in,size,out) ztransposea(in,size[0],size[1],out);zconja(out,size[0]*size[1],out); + +#endif /* !__INT_OPAPEX_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_OpBackSlash.h b/src/c/matrixOperations/interfaces/int_OpBackSlash.h new file mode 100644 index 00000000..898c37be --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_OpBackSlash.h @@ -0,0 +1,37 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_OPBACKSLASH_H__ +#define __INT_OPBACKSLASH_H__ + +/* Matrix \ Matrix */ + +#define s2s2OpBackSlashs2(in1,size1,in2,size2,out) sldivma(in1,size1[0],size1[1],in2,size2[0],size2[1],out) + +#define d2d2OpBackSlashd2(in1,size1,in2,size2,out) dldivma(in1,size1[0],size1[1],in2,size2[0],size2[1],out) + +#define c2c2OpBackSlashc2(in1,size1,in2,size2,out) cldivma(in1,size1[0],size1[1],in2,size2[0],size2[1],out) + +#define c2s2OpBackSlashc2(in1,size1,in2,size2,out) cldivma(in1,size1[0],size1[1],FloatComplexMatrix(in2,0,size2[0]*size2[1]),size2[0],size2[1],out) + +#define s2c2OpBackSlashc2(in1,size1,in2,size2,out) cldivma(FloatComplexMatrix(in1,0,size1[0]*size1[1]),size1[0],size1[1],in2,size2[0],size2[1],out) + +#define z2z2OpBackSlashz2(in1,size1,in2,size2,out) zldivma(in1,size1[0],size1[1],in2,size2[0],size2[1],out) + +#define z2d2OpBackSlashc2(in1,size1,in2,size2,out) cldivma(in1,size1[0],size1[1],DoubleComplexMatrix(in2,0,size2[0]*size2[1]),size2[0],size2[1],out) + +#define d2z2OpBackSlashc2(in1,size1,in2,size2,out) cldivma(DoubleComplexMatrix(in1,0,size1[0]*size1[1]),size1[0],size1[1],in2,size2[0],size2[1],out) + + +#endif /* !__INT_OPBACKSLASH_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_OpCc.h b/src/c/matrixOperations/interfaces/int_OpCc.h new file mode 100644 index 00000000..2cd3d558 --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_OpCc.h @@ -0,0 +1,134 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_OPCC_H__ +#define __INT_OPCC_H__ + +/* + /!\ + / ! \ We used rowcat because disp isn't right. In the real case, it must be columncat for Cc. + /__!_ \ + +*/ + + +/* Column Cat */ + +/* Same input elements */ + +#define s0s0OpCcs2(in1,in2,out) srowcats(in1,in2,out) + +#define d0d0OpCcd2(in1,in2,out) drowcats(in1,in2,out) + +#define c0c0OpCcc2(in1,in2,out) crowcats(in1,in2,out) + +#define z0z0OpCcz2(in1,in2,out) zrowcats(in1,in2,out) + +#define s2s2OpCcs2(in1,size1,in2,size2,out) srowcata(in1, size1[0], size1[1], in2, size2[0], size2[1], out) + +#define d2d2OpCcd2(in1,size1,in2,size2,out) drowcata(in1, size1[0], size1[1], in2, size2[0], size2[1], out) + +#define c2c2OpCcc2(in1,size1,in2,size2,out) crowcata(in1, size1[0], size1[1], in2, size2[0], size2[1], out) + +#define z2z2OpCcz2(in1,size1,in2,size2,out) zrowcata(in1, size1[0], size1[1], in2, size2[0], size2[1], out) + +/* Differents input elements */ +#define s0c0OpCcc2(in1,in2,out) c0c0OpCcc2(FloatComplex(in1,0),in2,out) + +#define d0z0OpCcz2(in1,in2,out) z0z0OpCcz2(DoubleComplex(in1,0),in2,out) + +#define c0s0OpCcc2(in1,in2,out) c0c0OpCcc2(in1,FloatComplex(in2,0),out) + +#define z0d0OpCcz2(in1,in2,out) z0z0OpCcz2(in1,DoubleComplex(in2,0),out) + +#define s2c2OpCcc2(in1,size1,in2,size2,out) sfilla((float*)out,size1[0],size1[1],0); \ + c2c2OpCcc2(FloatComplexMatrix(in1,(float*)out,size1[0]*size1[1]), size1, in2, size2, out) + +#define d2z2OpCcz2(in1,size1,in2,size2,out) dfilla((double*)out,size1[0],size1[1],0); \ + z2z2OpCcz2(DoubleComplexMatrix(in1,(double*)out,size1[0]*size1[1]), size1, in2, size2, out) + +#define c2s2OpCcc2(in1,size1,in2,size2,out) sfilla((float*)out,size2[0],size2[1],0); \ + c2c2OpCcc2(in1, size1, FloatComplexMatrix(in2,(float*)out,size2[0]*size2[1]), size2, out) + +#define z2d2OpCcz2(in1,size1,in2,size2,out) dfilla((double*)out,size2[0],size2[1],0); \ + z2z2OpCcz2(in1, size1, DoubleComplexMatrix(in2,(double*)out,size2[0]*size2[1]), size2, out) + +/* Matrix-Scalar */ + +/* Same type */ + +#define s2s0OpCcs2(in1,size,in2,out) { float temp=in2; \ + srowcata(in1, size[0], size[1],&temp, 1, 1, out); \ + } + +#define d2d0OpCcd2(in1,size,in2,out) { double temp=in2; \ + drowcata(in1, size[0], size[1],&temp, 1, 1, out); \ + } + +#define c2c0OpCcc2(in1,size,in2,out) { floatComplex temp = in2; \ + crowcata(in1, size[0], size[1],&temp, 1, 1, out);\ + } + +#define z2z0OpCcz2(in1,size,in2,out) { doubleComplex temp =in2; \ + zrowcata(in1, size[0], size[1],&temp, 1, 1, out);\ + } + + +/* Different type */ +#define s2c0OpCcc2(in1,size,in2,out) sfilla((float *)out,size[0],size[1],0); \ + c2c0OpCcc2(FloatComplexMatrix(in1,(float*)out,size[0]*size[1]),size,in2,out) + +#define d2z0OpCcz2(in1,size,in2,out) dfilla((double *)out,size[0],size[1],0); \ + z2z0OpCcz2(DoubleComplexMatrix(in1,(double *)out,size[0]*size[1]),size,in2,out) + +#define c2s0OpCcc2(in1,size,in2,out) { floatComplex temp = FloatComplex(in2, 0); c2c0OpCcc2(in1, size, temp, out)} + +#define z2d0OpCcz2(in1,size,in2,out) { doubleComplex temp = DoubleComplex(in2, 0); z2z0OpCcz2(in1, size, temp, out)} + + +/* Scalar-Matrix */ + +/* Same type */ +#define s0s2OpCcs2(in1,in2,size,out) { \ + float __tmp1 = in1 ;\ + srowcata(&__tmp1, 1, 1, in2, size[0], size[1], out);\ +} + +#define d0d2OpCcd2(in1,in2,size,out) { \ + double __tmp1 = in1 ;\ + drowcata(&__tmp1, 1, 1, in2, size[0], size[1], out);\ +} + +#define c0c2OpCcc2(in1,in2,size,out) { \ + floatComplex __tmp1 = in1 ;\ + crowcata(&__tmp1, 1, 1, in2, size[0], size[1], out);\ +} + +#define z0z2OpCcz2(in1,in2,size,out) { \ + doubleComplex __tmp1 = in1 ;\ + zrowcata(&__tmp1, 1, 1, in2, size[0], size[1], out);\ +} + +/* Different type */ +#define s0c2OpCcc2(in1,in2,size,out) c0c2OpCcc2(FloatComplex(in1,0),in2,size,out) + +#define d0z2OpCcz2(in1,in2,size,out) z0z2OpCcz2(DoubleComplex(in1,0),in2,size,out) + +#define c0s2OpCcc2(in1,in2,size,out) sfilla((float*)out,size[0],size[1],0); \ + c0c2OpCcc2(in1,FloatComplexMatrix(in2,(float*)out,size[0]*size[1]),size,out) + +#define z0d2OpCcz2(in1,in2,size,out) dfilla((double*)out,size[0],size[1],0); \ + z0z2OpCcz2(in1,DoubleComplexMatrix(in2,(double*)out,size[0]*size[1]),size,out) + +#endif /* !__INT_OPCC_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_OpDotApex.h b/src/c/matrixOperations/interfaces/int_OpDotApex.h new file mode 100644 index 00000000..4978ca56 --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_OpDotApex.h @@ -0,0 +1,34 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_OPDOTAPEX_H__ +#define __INT_OPDOTAPEX_H__ + +#define s0OpDotApexs0(in) in + +#define d0OpDotApexd0(in) in + +#define c0OpDotApexc0(in) in + +#define z0OpDotApexz0(in) in + +#define s2OpDotApexs2(in,size,out) stransposea(in,size[0],size[1],out); + +#define d2OpDotApexd2(in,size,out) dtransposea(in,size[0],size[1],out); + +#define c2OpDotApexc2(in,size,out) ctransposea(in,size[0],size[1],out); + +#define z2OpDotApexz2(in,size,out) ztransposea(in,size[0],size[1],out); + +#endif /* !__INT_OPDOTAPEX_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_OpRc.h b/src/c/matrixOperations/interfaces/int_OpRc.h new file mode 100644 index 00000000..1e8f1c92 --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_OpRc.h @@ -0,0 +1,139 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_OPRC_H__ +#define __INT_OPRC_H__ + +/* + /!\ + / ! \ We used columncat because disp isn't right. In the real case, it must be rowcat for Rc. + /__!_ \ + +*/ + + +/* Column Cat */ + +/* Same input elements */ + +#define s0s0OpRcs2(in1,in2,out) scolumncats(in1,in2,out) + +#define d0d0OpRcd2(in1,in2,out) dcolumncats(in1,in2,out) + +#define c0c0OpRcc2(in1,in2,out) ccolumncats(in1,in2,out) + +#define z0z0OpRcz2(in1,in2,out) zcolumncats(in1,in2,out) + +#define s2s2OpRcs2(in1,size1,in2,size2,out) scolumncata(in1, size1[0], size1[1], in2, size2[0], size2[1], out) + +#define d2d2OpRcd2(in1,size1,in2,size2,out) dcolumncata(in1, size1[0], size1[1], in2, size2[0], size2[1], out) + +#define c2c2OpRcc2(in1,size1,in2,size2,out) ccolumncata(in1, size1[0], size1[1], in2, size2[0], size2[1], out) + +#define z2z2OpRcz2(in1,size1,in2,size2,out) zcolumncata(in1, size1[0], size1[1], in2, size2[0], size2[1], out) + +/* Differents input elements */ +#define s0c0OpRcc2(in1,in2,out) c0c0OpRcc2(FloatComplex(in1,0),in2,out) + +#define d0z0OpRcz2(in1,in2,out) z0z0OpRcz2(DoubleComplex(in1,0),in2,out) + +#define c0s0OpRcc2(in1,in2,out) c0c0OpRcc2(in1,FloatComplex(in2,0),out) + +#define z0d0OpRcz2(in1,in2,out) z0z0OpRcz2(in1,DoubleComplex(in2,0),out) + +#define s2c2OpRcc2(in1,size1,in2,size2,out) sfilla((float*)out,size1[0],size1[1],0); \ + c2c2OpRcc2(FloatComplexMatrix(in1,(float*)out,size1[0]*size1[1]), size1, in2, size2, out) + +#define d2z2OpRcz2(in1,size1,in2,size2,out) dfilla((double*)out,size1[0],size1[1],0); \ + z2z2OpRcz2(DoubleComplexMatrix(in1,(double*)out,size1[0]*size1[1]), size1, in2, size2, out) + +#define c2s2OpRcc2(in1,size1,in2,size2,out) sfilla((float*)out,size2[0],size2[1],0); \ + c2c2OpRcc2(in1, size1, FloatComplexMatrix(in2,(float*)out,size2[0]*size2[1]), size2, out) + +#define z2d2OpRcz2(in1,size1,in2,size2,out) dfilla((double*)out,size2[0],size2[1],0); \ + z2z2OpRcz2(in1, size1, DoubleComplexMatrix(in2,(double*)out,size2[0]*size2[1]), size2, out) + +/* Matrix-Scalar */ + +/* Same type */ + +#define s2s0OpRcs2(in1,size,in2,out) { float temp=in2; \ + scolumncata(in1, size[0], size[1],&temp, 1, 1, out); \ + } + +#define d2d0OpRcd2(in1,size,in2,out) { double temp=in2; \ + dcolumncata(in1, size[0], size[1],&temp, 1, 1, out); \ + } + +#define c2c0OpRcc2(in1,size,in2,out) { floatComplex temp=in2; \ + ccolumncata(in1, size[0], size[1], &temp, 1, 1, out); \ + } + +#define z2z0OpRcz2(in1,size,in2,out) { doubleComplex temp=in2; \ + zcolumncata(in1, size[0], size[1], &temp, 1, 1, out); \ + } + +/* Different type */ +#define s2c0OpRcc2(in1,size,in2,out) { floatComplex temp=in2; \ + sfilla((float *)out,size[0],size[1],0); \ + scolumncata(FloatComplexMatrix(in1,(float*)out,size[0]*size[1]), size[0], size[1], &temp , 1, 1, out); \ + } + +#define d2z0OpRcz2(in1,size,in2,out) { doubleComplex temp=in2; \ + dfilla((double *)out,size[0],size[1],0); \ + zcolumncata(DoubleComplexMatrix(in1,(double *)out,size[0]*size[1]), size[0], size[1], &temp , 1, 1, out); \ + } + +#define c2s0OpRcc2(in1,size,in2,out) { floatComplex temp = FloatComplex(in2,0); \ + ccolumncata(in1, size[0], size[1], &temp, 1, 1, out); \ + } + +#define z2d0OpRcz2(in1,size,in2,out) { doubleComplex temp = DoubleComplex(in2,0); \ + zcolumncata(in1, size[0], size[1], &temp, 1, 1, out); \ + } + +/* Scalar-Matrix */ + +/* Same type */ +#define s0s2OpRcs2(in1,in2,size,out) { \ + float __tmp1 = in1 ;\ + scolumncata(&__tmp1 , 1, 1, in2, size[0], size[1], out);\ +} +#define d0d2OpRcd2(in1,in2,size,out) {\ + double __tmp1 = in1 ;\ + dcolumncata(&__tmp1 , 1, 1, in2, size[0], size[1], out); \ +} + +#define c0c2OpRcc2(in1,in2,size,out) { \ + floatComplex __tmp1 = in1 ;\ + ccolumncata(&__tmp1, 1, 1, in2, size[0], size[1], out);\ +} + +#define z0z2OpRcz2(in1,in2,size,out) { \ + doubleComplex __tmp1 = in1 ;\ + zcolumncata(&__tmp1, 1, 1, in2, size[0], size[1], out);\ +} + +/* Different type */ +#define s0c2OpRcc2(in1,in2,size,out) c0c2OpRcc2(FloatComplex(in1,0),in2,size,out) + +#define d0z2OpRcz2(in1,in2,size,out) z0z2OpRcz2(DoubleComplex(in1,0),in2,size,out) + +#define c0s2OpRcc2(in1,in2,size,out) sfilla((float*)out,size[0],size[1],0); \ + c0c2OpRcc2(in1,FloatComplexMatrix(in2,(float*)out,size[0]*size[1]),size,out) + +#define z0d2OpRcz2(in1,in2,size,out) dfilla((double*)out,size[0],size[1],0); \ + z0z2OpRcz2(in1,DoubleComplexMatrix(in2,(double*)out,size[0]*size[1]),size,out) + +#endif /* !__INT_OPRC_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_OpSlash.h b/src/c/matrixOperations/interfaces/int_OpSlash.h new file mode 100644 index 00000000..20930a0a --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_OpSlash.h @@ -0,0 +1,38 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_OPSLASH_H__ +#define __INT_OPSLASH_H__ + + +/* Matrix / Matrix */ + +#define s2s2OpSlashs2(in1,size1,in2,size2,out) srdivma(in1,size1[0],size1[1],in2,size2[0],size2[1],out) + +#define d2d2OpSlashd2(in1,size1,in2,size2,out) drdivma(in1,size1[0],size1[1],in2,size2[0],size2[1],out) + +#define c2c2OpSlashc2(in1,size1,in2,size2,out) crdivma(in1,size1[0],size1[1],in2,size2[0],size2[1],out) + +#define c2s2OpSlashc2(in1,size1,in2,size2,out) crdivma(in1,size1[0],size1[1],FloatComplexMatrix(in2,0,size2[0]*size2[1]),size2[0],size2[1],out) + +#define s2c2OpSlashc2(in1,size1,in2,size2,out) crdivma(FloatComplexMatrix(in1,0,size1[0]*size1[1]),size1[0],size1[1],in2,size2[0],size2[1],out) + +#define z2z2OpSlashz2(in1,size1,in2,size2,out) zrdivma(in1,size1[0],size1[1],in2,size2[0],size2[1],out) + +#define z2d2OpSlashc2(in1,size1,in2,size2,out) crdivma(in1,size1[0],size1[1],DoubleComplexMatrix(in2,0,size2[0]*size2[1]),size2[0],size2[1],out) + +#define d2z2OpSlashc2(in1,size1,in2,size2,out) crdivma(DoubleComplexMatrix(in1,0,size1[0]*size1[1]),size1[0],size1[1],in2,size2[0],size2[1],out) + + +#endif /* !__INT_OPSLASH_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_OpStar.h b/src/c/matrixOperations/interfaces/int_OpStar.h new file mode 100644 index 00000000..400918a4 --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_OpStar.h @@ -0,0 +1,37 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_OPSTAR_H__ +#define __INT_OPSTAR_H__ + +/* Matrix * Matrix */ + +#define s2s2OpStars2(in1,size1,in2,size2,out) smulma(in1,size1[0],size1[1],in2,size2[0],size2[1],out) + +#define d2d2OpStard2(in1,size1,in2,size2,out) dmulma(in1,size1[0],size1[1],in2,size2[0],size2[1],out) + +#define c2c2OpStarc2(in1,size1,in2,size2,out) cmulma(in1,size1[0],size1[1],in2,size2[0],size2[1],out) + +#define c2s2OpStarc2(in1,size1,in2,size2,out) cmulma(in1,size1[0],size1[1],FloatComplexMatrix(in2,0,size2[0]*size2[1]),size2[0],size2[1],out) + +#define s2c2OpStarc2(in1,size1,in2,size2,out) cmulma(FloatComplexMatrix(in1,0,size1[0]*size1[1]),size1[0],size1[1],in2,size2[0],size2[1],out) + +#define z2z2OpStarz2(in1,size1,in2,size2,out) zmulma(in1,size1[0],size1[1],in2,size2[0],size2[1],out) + +#define z2d2OpStarc2(in1,size1,in2,size2,out) cmulma(in1,size1[0],size1[1],DoubleComplexMatrix(in2,0,size2[0],size2[1]),size2[0],size2[1],out) + +#define d2z2OpStarc2(in1,size1,in2,size2,out) cmulma(DoubleComplexMatrix(in1,0,size1[0],size1[1]),size1[0],size1[1],in2,size2[0],size2[1],out) + + +#endif /* !__INT_OPSTAR_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_chol.h b/src/c/matrixOperations/interfaces/int_chol.h new file mode 100644 index 00000000..861ad4d1 --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_chol.h @@ -0,0 +1,34 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_CHOL_H__ +#define __INT_CHOL_H__ + +#define s0chols0(in) schols(in) + +#define d0chold0(in) dchols(in) + +#define c0cholc0(in) cchols(in) + +#define z0cholz0(in) zchols(in) + +#define s2chols2(in,size,out) schola(in, size[0], out) + +#define d2chold2(in,size,out) dchola(in, size[0], out) + +#define c2cholc2(in,size,out) cchola(in, size[0], out) + +#define z2cholz2(in,size,out) zchola(in, size[0], out) + +#endif /* !__INT_CHOL_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_det.h b/src/c/matrixOperations/interfaces/int_det.h new file mode 100644 index 00000000..f7760b16 --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_det.h @@ -0,0 +1,34 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_DETERM_H__ +#define __INT_DETERM_H__ + +#define s0dets0(in) in + +#define d0detd0(in) in + +#define c0detc0(in) in + +#define z0detz0(in) in + +#define s2dets0(in,size) sdeterma(in, size[0]) + +#define d2detd0(in,size) ddeterma(in, size[0]) + +#define c2detc0(in,size) cdeterma(in, size[0]) + +#define z2detz0(in,size) zdeterma(in, size[0]) + +#endif /* !__INT_DETERM_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_dist.h b/src/c/matrixOperations/interfaces/int_dist.h new file mode 100644 index 00000000..36809c78 --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_dist.h @@ -0,0 +1,34 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_DIST_H__ +#define __INT_DIST_H__ + +#define s0s0dists0(in1,in2) sdists(in1,in2) + +#define d0d0distd0(in1,in2) ddists(in1,in2) + +#define c0c0dists0(in1,in2) cdists(in1,in2) + +#define z0z0distd0(in1,in2) zdists(in1,in2) + +#define s2s2dists0(in1,size1,in2,size2) sdista(in1, in2, size1[0], size2[1]) + +#define d2d2distd0(in1,size1,in2,size2) ddista(in1, in2, size1[0], size2[1]) + +#define c2c2dists0(in1,size1,in2,size2) cdista(in1, in2, size1[0], size2[1]) + +#define z2z2distd0(in1,size1,in2,size2) zdista(in1, in2, size1[0], size2[1]) + +#endif /* !__INT_DIST_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_expm.h b/src/c/matrixOperations/interfaces/int_expm.h new file mode 100644 index 00000000..6e54fb32 --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_expm.h @@ -0,0 +1,26 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_EXPM_H__ +#define __INT_EXPM_H__ + +#define s2expms2(in,size,out) sexpma(in, out, size[0]) + +#define d2expmd2(in,size,out) dexpma(in, out, size[0]) + +#define c2expmc2(in,size,out) cexpma(in, out, size[0]) + +#define z2expmz2(in,size,out) zexpma(in, out, size[0]) + +#endif /* !__INT_EXPM_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_eye.h b/src/c/matrixOperations/interfaces/int_eye.h new file mode 100644 index 00000000..81ed7fdd --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_eye.h @@ -0,0 +1,53 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_EYE_H__ +#define __INT_EYE_H__ + + +#define eyes0() 1.0f + +#define eyed0() 1 + + + +#define s0eyes0(in) seyes(in) + +#define d0eyed0(in) deyes(in) + +#define c0eyec0(in) ceyes(in) + +#define z0eyez0(in) zeyes(in) + + +#define s0s0eyes0(in1,in2) 1.0f + +#define d0d0eyed0(in,in2) 1 + + +#define s0s0eyes2(in1,in2,out) seyea(out, in1, in2) + +#define d0d0eyed2(in1,in2,out) deyea(out, in1, in2) + + +#define s2eyes2(in,size,out) seyea(out, size[0], size[1]) + +#define d2eyed2(in,size,out) deyea(out, size[0], size[1]) + +#define c2eyec2(in,size,out) ceyea(out, size[0], size[1]) + +#define z2eyez2(in,size,out) zeyea(out, size[0], size[1]) + + +#endif /* !__INT_EYE_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_fill.h b/src/c/matrixOperations/interfaces/int_fill.h new file mode 100644 index 00000000..5614cb1f --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_fill.h @@ -0,0 +1,51 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_FILL_H__ +#define __INT_FILL_H__ + + +#define fills0(in) in; + +#define filld0(in) in; + +#define fillc0(in) in; + +#define fillz0(in) in; + +#define s0fills0(in,out) out=in; + +#define d0filld0(in,out) out=in; + +#define c0fillc0(in,out) out=in; + +#define z0fillz0(in,out) out=in; + +#define s2s0fills2(in1,size,in2,out) sfilla(out,size[0],size[1],in2); + +#define d2d0filld2(in1,size,in2,out) dfilla(out,size[0],size[1],in2); + +#define c2c0fillc2(in1,size,in2,out) cfilla(out,size[0],size[1],in2); + +#define z2z0fillz2(in1,size,in2,out) zfilla(out,size[0],size[1],in2); + +#define s0s0s0fills2(in1,in2,in3,out) sfilla(out,in1,in2,in3) + +#define d0d0d0filld2(in1,in2,in3,out) sfilla(out,in1,in2,in3) + +#define s0s0c0fillc2(in1,in2,in3,out) sfilla(out,in1,in2,in3) + +#define d0d0z0fillz2(in1,in2,in3,out) sfilla(out,in1,in2,in3) + +#endif /* !__INT_FILL_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_invert.h b/src/c/matrixOperations/interfaces/int_invert.h new file mode 100644 index 00000000..d31481b6 --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_invert.h @@ -0,0 +1,34 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_INV_H__ +#define __INT_INV_H__ + +#define s0invs0(in) 1.0f/in + +#define d0invd0(in) 1.0/in + +#define c0invc0(in) crdivs(FloatComplex(1,0),in) + +#define z0invz0(in) zrdivs(DoubleComplex(1,0),in) + +#define s2invs2(in,size,out) sinverma(in, out, size[0]) + +#define d2invd2(in,size,out) dinverma(in, out, size[0]) + +#define c2invc2(in,size,out) cinverma(in, out, size[0]) + +#define z2invz2(in,size,out) zinverma(in, out, size[0]) + +#endif /* !__INT_INV_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_ones.h b/src/c/matrixOperations/interfaces/int_ones.h new file mode 100644 index 00000000..0259b4c6 --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_ones.h @@ -0,0 +1,53 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_ONES_H__ +#define __INT_ONES_H__ + + +#define oness0() 1.0f + +#define onesd0() 1 + + + +#define s0oness0(in) soness(in) + +#define d0onesd0(in) doness(in) + +#define c0onesc0(in) coness(in) + +#define z0onesz0(in) zoness(in) + + +#define s0s0oness0(in1,in2) 1.0f + +#define d0d0onesd0(in,in2) 1 + + +#define s0s0oness2(in1,in2,out) sonesa(out, in1, in2) + +#define d0d0onesd2(in1,in2,out) donesa(out, in1, in2) + + +#define s2oness2(in,size,out) sonesa(out, size[0], size[1]) + +#define d2onesd2(in,size,out) donesa(out, size[0], size[1]) + +#define c2onesc2(in,size,out) conesa(out, size[0], size[1]) + +#define z2onesz2(in,size,out) zonesa(out, size[0], size[1]) + + +#endif /* !__INT_ONES_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_spec.h b/src/c/matrixOperations/interfaces/int_spec.h new file mode 100644 index 00000000..77ab55e7 --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_spec.h @@ -0,0 +1,71 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_SPEC_H__ +#define __INT_SPEC_H__ + +/* Only eigenvalues */ + +#define s0specc0(in) FloatComplex (sspecs(in) , 0) + +#define d0specz0(in) DoubleComplex ( dspecs(in) , 0) + +#define c0specc0(in) cspecs(in) + +#define z0specz0(in) zspecs(in) + +#define s2specc2(in,size,out) {float* ZEROS;\ + ZEROS=malloc((uint)(size[0]*size[0]*sizeof(float)));\ + szerosa(ZEROS,size[0],size[0]);\ + cspeca(FloatComplexMatrix(in,ZEROS,size[0]*size[0]), size[0], out);\ + } + +#define d2specz2(in,size,out) {double* ZEROS;\ + ZEROS=malloc((uint)(size[0]*size[0]*sizeof(double)));\ + dzerosa(ZEROS,size[0],size[0]);\ + zspeca(DoubleComplexMatrix(in,ZEROS,size[0]*size[0]), size[0] , out);\ + } + +#define c2specc2(in,size,out) cspeca(in, size[0], out) + +#define z2specz2(in,size,out) zspeca(in, size[0], out) + +/* Eigenvalues and eigenvectors */ + +#define s0specc0c0(in,out) cspec2s(FloatComplex( in,0) ,out) + +#define d0specz0z0(in,out) zspec2s(DoubleComplex(in,0) ,out) + +#define c0specc0c0(in,out) cspec2s(in,out) + +#define z0specz0z0(in,out) zspec2s(in,out) + +#define s2specc2c2(in,size,out1,out2) {float* ZEROS;\ + ZEROS=malloc((uint)(size[0]*size[0]*sizeof(float)));\ + szerosa(ZEROS,size[0],size[0]);\ + cspec2a(FloatComplexMatrix(in,ZEROS,size[0]*size[0]), size[0] , out1 , out2 );\ + } + +#define d2specz2z2(in,size,out1,out2) {double* ZEROS;\ + ZEROS=malloc((uint)(size[0]*size[0]*sizeof(double)));\ + dzerosa(ZEROS,size[0],size[0]);\ + zspec2a(DoubleComplexMatrix(in,ZEROS,size[0]*size[0]), size[0] , out1 , out2 );\ + } + + +#define c2specc2c2(in,size,out1,out2) cspec2a(in, size[0], out2, out1) + +#define z2specz2z2(in,size,out1,out2) zspec2a(in, size[0], out2, out1) + +#endif /* !__INT_SPEC_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_trace.h b/src/c/matrixOperations/interfaces/int_trace.h new file mode 100644 index 00000000..8bfea860 --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_trace.h @@ -0,0 +1,34 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_TRACE_H__ +#define __INT_TRACE_H__ + +#define s0traces0(in) in + +#define d0traced0(in) in + +#define c0tracec0(in) in + +#define z0tracez0(in) in + +#define s2traces0(in,size) stracea(in, size[0]) + +#define d2traced0(in,size) dtracea(in, size[0]) + +#define c2tracec0(in,size) ctracea(in, size[0]) + +#define z2tracez0(in,size) ztracea(in, size[0]) + +#endif /* !__INT_TRACE_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_transpose.h b/src/c/matrixOperations/interfaces/int_transpose.h new file mode 100644 index 00000000..250d565f --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_transpose.h @@ -0,0 +1,34 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_TRANSPOSE_H__ +#define __INT_TRANSPOSE_H__ + +#define s0transposes0(in) in + +#define d0transposed0(in) in + +#define c0transposec0(in) in + +#define z0transposez0(in) in + +#define s2transposes2(in,size,out) stransposea(in, size[0], size[1], out) + +#define d2transposed2(in,size,out) dtransposea(in, size[0], size[1], out) + +#define c2transposec2(in,size,out) ctransposea(in, size[0], size[1], out) + +#define z2transposez2(in,size,out) ztransposea(in, size[0], size[1], out) + +#endif /* !__INT_TRANSPOSE_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_v2magn.h b/src/c/matrixOperations/interfaces/int_v2magn.h new file mode 100644 index 00000000..759cecf1 --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_v2magn.h @@ -0,0 +1,34 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_V2MAGN_H__ +#define __INT_V2MAGN_H__ + +#define s0v2magns0(in) ssquMagns(in) + +#define d0v2magnd0(in) dsquMagns(in) + +#define c0v2magnc0(in) csquMagns(in) + +#define z0v2magnz0(in) zsquMagns(in) + +#define s2v2magns2(in,size) ssquMagna(in, size[0], size[1]) + +#define d2v2magnd2(in,size) dsquMagna(in, size[0], size[1]) + +#define c2v2magnc2(in,size) csquMagna(in, size[0], size[1]) + +#define z2v2magnz2(in,size) zsquMagna(in, size[0], size[1]) + +#endif /* !__INT_V2MAGN_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_vmagn.h b/src/c/matrixOperations/interfaces/int_vmagn.h new file mode 100644 index 00000000..8a51755e --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_vmagn.h @@ -0,0 +1,35 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_VMAGN_H__ +#define __INT_VMAGN_H__ + + +#define s0vmagns0(in) smagns(in) + +#define d0vmagnd0(in) dmagns(in) + +#define c0vmagnc0(in) cmagns(in) + +#define z0vmagnz0(in) zmagns(in) + +#define s2vmagns2(in,size) smagna(in, size[0], size[1]) + +#define d2vmagnd2(in,size) dmagna(in, size[0], size[1]) + +#define c2vmagnc2(in,size) cmagna(in, size[0], size[1]) + +#define z2vmagnz2(in,size) zmagna(in, size[0], size[1]) + +#endif /* !__INT_VMAGN_H__ */ diff --git a/src/c/matrixOperations/interfaces/int_zeros.h b/src/c/matrixOperations/interfaces/int_zeros.h new file mode 100644 index 00000000..3b738608 --- /dev/null +++ b/src/c/matrixOperations/interfaces/int_zeros.h @@ -0,0 +1,53 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * 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 + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_ZEROS_H__ +#define __INT_ZEROS_H__ + + +#define zeross0() 0.0f + +#define zerosd0() 0 + + + +#define s0zeross0(in) szeross(in) + +#define d0zerosd0(in) dzeross(in) + +#define c0zerosc0(in) czeross(in) + +#define z0zerosz0(in) zzeross(in) + + +#define s0s0zeross0(in1,in2) 0.0f + +#define d0d0zerosd0(in,in2) 0 + + +#define s0s0zeross2(in1,in2,out) szerosa(out, in1, in2) + +#define d0d0zerosd2(in1,in2,out) dzerosa(out, in1, in2) + + +#define s2zeross2(in,size,out) szerosa(out, size[0], size[1]) + +#define d2zerosd2(in,size,out) dzerosa(out, size[0], size[1]) + +#define c2zerosc2(in,size,out) czerosa(out, size[0], size[1]) + +#define z2zerosz2(in,size,out) zzerosa(out, size[0], size[1]) + + +#endif /* !__INT_ZEROS_H__ */ diff --git a/src/c/matrixOperations/interfaces/interface.sh b/src/c/matrixOperations/interfaces/interface.sh new file mode 100755 index 00000000..8c7f073b --- /dev/null +++ b/src/c/matrixOperations/interfaces/interface.sh @@ -0,0 +1,6 @@ +for i in $@; do + +./generateInterfaces.pl --function-name $i --header-file int_$i.h + +done + |