diff options
Diffstat (limited to 'modules/arnoldi/sci_gateway')
35 files changed, 6175 insertions, 0 deletions
diff --git a/modules/arnoldi/sci_gateway/arnoldi_gateway.xml b/modules/arnoldi/sci_gateway/arnoldi_gateway.xml new file mode 100755 index 000000000..389771c8f --- /dev/null +++ b/modules/arnoldi/sci_gateway/arnoldi_gateway.xml @@ -0,0 +1,43 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2007-2008 - INRIA - Sylvestre LEDRU + * Copyright (C) 2007-2008 - INRIA - Allan CORNET + * + * 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.1-en.txt + * + --> + +<!DOCTYPE GATEWAY SYSTEM "../../functions/xml/gateway.dtd"> +<GATEWAY name="arnoldi"> + <!-- =================== --> + <!-- + Scilab + Interface description. In this file, we define the list of the function which + will be available into Scilab and the link to the "native" function. + + gatewayId is the position in the hashtable 'Interfaces' defined in the + file SCI/modules/core/src/c/callinterf.h + + primitiveId is the position in the hashtable '<module>Table Tab[]' defined + in the file modules/<module>/sci_gateway/c/gw_<module>.c + + primitiveName is the name of the Scilab function + + =================== + Don't touch if you do not know what you are doing +--> + <!-- =================== --> + + <PRIMITIVE gatewayId="35" primitiveId="1" primitiveName="dsaupd" /> + <PRIMITIVE gatewayId="35" primitiveId="2" primitiveName="dnaupd" /> + <PRIMITIVE gatewayId="35" primitiveId="3" primitiveName="znaupd" /> + <PRIMITIVE gatewayId="35" primitiveId="4" primitiveName="dseupd" /> + <PRIMITIVE gatewayId="35" primitiveId="5" primitiveName="dneupd" /> + <PRIMITIVE gatewayId="35" primitiveId="6" primitiveName="zneupd" /> + <PRIMITIVE gatewayId="35" primitiveId="7" primitiveName="%_eigs" /> +</GATEWAY> diff --git a/modules/arnoldi/sci_gateway/c/.deps/.dirstamp b/modules/arnoldi/sci_gateway/c/.deps/.dirstamp new file mode 100755 index 000000000..e69de29bb --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/.deps/.dirstamp diff --git a/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-gw_arnoldi.Plo b/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-gw_arnoldi.Plo new file mode 100755 index 000000000..b1c9cc9a1 --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-gw_arnoldi.Plo @@ -0,0 +1,273 @@ +sci_gateway/c/libsciarnoldi_la-gw_arnoldi.lo: sci_gateway/c/gw_arnoldi.c \ + /usr/include/stdc-predef.h /usr/include/math.h /usr/include/features.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/bits/math-vector.h \ + /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ + /usr/include/x86_64-linux-gnu/bits/huge_val.h \ + /usr/include/x86_64-linux-gnu/bits/huge_valf.h \ + /usr/include/x86_64-linux-gnu/bits/huge_vall.h \ + /usr/include/x86_64-linux-gnu/bits/inf.h \ + /usr/include/x86_64-linux-gnu/bits/nan.h \ + /usr/include/x86_64-linux-gnu/bits/mathdef.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ + /usr/include/x86_64-linux-gnu/bits/mathinline.h /usr/include/string.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include/stddef.h /usr/include/xlocale.h \ + /usr/include/x86_64-linux-gnu/bits/string.h \ + /usr/include/x86_64-linux-gnu/bits/string2.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap-16.h /usr/include/stdlib.h \ + /usr/include/x86_64-linux-gnu/bits/string3.h includes/gw_arnoldi.h \ + includes/dynlib_arnoldi.h ../../modules/api_scilab/includes/api_scilab.h \ + ../../modules/core/includes/stack-c.h \ + ../../modules/core/includes/core_math.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/limits.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/syslimits.h \ + /usr/include/limits.h /usr/include/x86_64-linux-gnu/bits/posix1_lim.h \ + /usr/include/x86_64-linux-gnu/bits/local_lim.h \ + /usr/include/linux/limits.h \ + /usr/include/x86_64-linux-gnu/bits/posix2_lim.h \ + /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ + /usr/include/x86_64-linux-gnu/sys/types.h /usr/include/time.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/sigset.h \ + /usr/include/x86_64-linux-gnu/bits/time.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/sys/sysmacros.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h \ + ../../modules/core/includes/stack-def.h \ + ../../modules/core/includes/machine.h \ + ../../modules/core/includes/stackTypeVariable.h \ + ../../modules/core/includes/BOOL.h \ + ../../modules/core/includes/doublecomplex.h \ + ../../modules/core/includes/stack1.h \ + ../../modules/core/includes/scisparse.h \ + ../../modules/core/includes/stack2.h \ + ../../modules/core/includes/stack3.h \ + ../../modules/core/includes/stack-optional.h \ + ../../modules/core/includes/sci_types.h \ + ../../modules/api_scilab/includes/api_common.h \ + ../../modules/api_scilab/includes/api_scilab.h \ + ../../modules/api_scilab/includes/api_double.h \ + ../../modules/core/includes/doublecomplex.h \ + ../../modules/api_scilab/includes/api_string.h /usr/include/wchar.h \ + /usr/include/stdio.h /usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/wchar2.h \ + ../../modules/api_scilab/includes/api_int.h \ + ../../modules/api_scilab/includes/api_poly.h \ + ../../modules/api_scilab/includes/api_sparse.h \ + ../../modules/api_scilab/includes/api_boolean.h \ + ../../modules/api_scilab/includes/api_boolean_sparse.h \ + ../../modules/api_scilab/includes/api_pointer.h \ + ../../modules/api_scilab/includes/api_list.h \ + ../../modules/api_scilab/includes/api_error.h \ + ../../modules/api_scilab/includes/api_handle.h \ + ../../modules/api_scilab/includes/api_optional.h \ + ../../modules/core/includes/stack-optional.h \ + ../../modules/api_scilab/includes/api_hypermat.h \ + ../../modules/core/includes/core_math.h \ + ../../modules/core/includes/sci_types.h \ + ../../modules/core/includes/MALLOC.h \ + ../../modules/core/includes/sci_mem_alloc.h \ + ../../modules/core/includes/callFunctionFromGateway.h + +/usr/include/stdc-predef.h: + +/usr/include/math.h: + +/usr/include/features.h: + +/usr/include/x86_64-linux-gnu/sys/cdefs.h: + +/usr/include/x86_64-linux-gnu/bits/wordsize.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs-64.h: + +/usr/include/x86_64-linux-gnu/bits/math-vector.h: + +/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h: + +/usr/include/x86_64-linux-gnu/bits/huge_val.h: + +/usr/include/x86_64-linux-gnu/bits/huge_valf.h: + +/usr/include/x86_64-linux-gnu/bits/huge_vall.h: + +/usr/include/x86_64-linux-gnu/bits/inf.h: + +/usr/include/x86_64-linux-gnu/bits/nan.h: + +/usr/include/x86_64-linux-gnu/bits/mathdef.h: + +/usr/include/x86_64-linux-gnu/bits/mathcalls.h: + +/usr/include/x86_64-linux-gnu/bits/mathinline.h: + +/usr/include/string.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include/stddef.h: + +/usr/include/xlocale.h: + +/usr/include/x86_64-linux-gnu/bits/string.h: + +/usr/include/x86_64-linux-gnu/bits/string2.h: + +/usr/include/endian.h: + +/usr/include/x86_64-linux-gnu/bits/endian.h: + +/usr/include/x86_64-linux-gnu/bits/byteswap.h: + +/usr/include/x86_64-linux-gnu/bits/types.h: + +/usr/include/x86_64-linux-gnu/bits/typesizes.h: + +/usr/include/x86_64-linux-gnu/bits/byteswap-16.h: + +/usr/include/stdlib.h: + +/usr/include/x86_64-linux-gnu/bits/string3.h: + +includes/gw_arnoldi.h: + +includes/dynlib_arnoldi.h: + +../../modules/api_scilab/includes/api_scilab.h: + +../../modules/core/includes/stack-c.h: + +../../modules/core/includes/core_math.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/limits.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/syslimits.h: + +/usr/include/limits.h: + +/usr/include/x86_64-linux-gnu/bits/posix1_lim.h: + +/usr/include/x86_64-linux-gnu/bits/local_lim.h: + +/usr/include/linux/limits.h: + +/usr/include/x86_64-linux-gnu/bits/posix2_lim.h: + +/usr/include/x86_64-linux-gnu/bits/waitflags.h: + +/usr/include/x86_64-linux-gnu/bits/waitstatus.h: + +/usr/include/x86_64-linux-gnu/sys/types.h: + +/usr/include/time.h: + +/usr/include/x86_64-linux-gnu/sys/select.h: + +/usr/include/x86_64-linux-gnu/bits/select.h: + +/usr/include/x86_64-linux-gnu/bits/sigset.h: + +/usr/include/x86_64-linux-gnu/bits/time.h: + +/usr/include/x86_64-linux-gnu/bits/select2.h: + +/usr/include/x86_64-linux-gnu/sys/sysmacros.h: + +/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h: + +/usr/include/alloca.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib-float.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib.h: + +../../modules/core/includes/stack-def.h: + +../../modules/core/includes/machine.h: + +../../modules/core/includes/stackTypeVariable.h: + +../../modules/core/includes/BOOL.h: + +../../modules/core/includes/doublecomplex.h: + +../../modules/core/includes/stack1.h: + +../../modules/core/includes/scisparse.h: + +../../modules/core/includes/stack2.h: + +../../modules/core/includes/stack3.h: + +../../modules/core/includes/stack-optional.h: + +../../modules/core/includes/sci_types.h: + +../../modules/api_scilab/includes/api_common.h: + +../../modules/api_scilab/includes/api_scilab.h: + +../../modules/api_scilab/includes/api_double.h: + +../../modules/core/includes/doublecomplex.h: + +../../modules/api_scilab/includes/api_string.h: + +/usr/include/wchar.h: + +/usr/include/stdio.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h: + +/usr/include/x86_64-linux-gnu/bits/wchar.h: + +/usr/include/x86_64-linux-gnu/bits/wchar2.h: + +../../modules/api_scilab/includes/api_int.h: + +../../modules/api_scilab/includes/api_poly.h: + +../../modules/api_scilab/includes/api_sparse.h: + +../../modules/api_scilab/includes/api_boolean.h: + +../../modules/api_scilab/includes/api_boolean_sparse.h: + +../../modules/api_scilab/includes/api_pointer.h: + +../../modules/api_scilab/includes/api_list.h: + +../../modules/api_scilab/includes/api_error.h: + +../../modules/api_scilab/includes/api_handle.h: + +../../modules/api_scilab/includes/api_optional.h: + +../../modules/core/includes/stack-optional.h: + +../../modules/api_scilab/includes/api_hypermat.h: + +../../modules/core/includes/core_math.h: + +../../modules/core/includes/sci_types.h: + +../../modules/core/includes/MALLOC.h: + +../../modules/core/includes/sci_mem_alloc.h: + +../../modules/core/includes/callFunctionFromGateway.h: diff --git a/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_dnaupd.Plo b/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_dnaupd.Plo new file mode 100755 index 000000000..9b41bd8b1 --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_dnaupd.Plo @@ -0,0 +1,284 @@ +sci_gateway/c/libsciarnoldi_la-sci_dnaupd.lo: sci_gateway/c/sci_dnaupd.c \ + /usr/include/stdc-predef.h /usr/include/math.h /usr/include/features.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/bits/math-vector.h \ + /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ + /usr/include/x86_64-linux-gnu/bits/huge_val.h \ + /usr/include/x86_64-linux-gnu/bits/huge_valf.h \ + /usr/include/x86_64-linux-gnu/bits/huge_vall.h \ + /usr/include/x86_64-linux-gnu/bits/inf.h \ + /usr/include/x86_64-linux-gnu/bits/nan.h \ + /usr/include/x86_64-linux-gnu/bits/mathdef.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ + /usr/include/x86_64-linux-gnu/bits/mathinline.h /usr/include/string.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include/stddef.h /usr/include/xlocale.h \ + /usr/include/x86_64-linux-gnu/bits/string.h \ + /usr/include/x86_64-linux-gnu/bits/string2.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap-16.h /usr/include/stdlib.h \ + /usr/include/x86_64-linux-gnu/bits/string3.h \ + ../../modules/api_scilab/includes/api_scilab.h \ + ../../modules/core/includes/stack-c.h \ + ../../modules/core/includes/core_math.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/limits.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/syslimits.h \ + /usr/include/limits.h /usr/include/x86_64-linux-gnu/bits/posix1_lim.h \ + /usr/include/x86_64-linux-gnu/bits/local_lim.h \ + /usr/include/linux/limits.h \ + /usr/include/x86_64-linux-gnu/bits/posix2_lim.h \ + /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ + /usr/include/x86_64-linux-gnu/sys/types.h /usr/include/time.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/sigset.h \ + /usr/include/x86_64-linux-gnu/bits/time.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/sys/sysmacros.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h \ + ../../modules/core/includes/stack-def.h \ + ../../modules/core/includes/machine.h \ + ../../modules/core/includes/stackTypeVariable.h \ + ../../modules/core/includes/BOOL.h \ + ../../modules/core/includes/doublecomplex.h \ + ../../modules/core/includes/stack1.h \ + ../../modules/core/includes/scisparse.h \ + ../../modules/core/includes/stack2.h \ + ../../modules/core/includes/stack3.h \ + ../../modules/core/includes/stack-optional.h \ + ../../modules/core/includes/sci_types.h \ + ../../modules/api_scilab/includes/api_common.h \ + ../../modules/api_scilab/includes/api_scilab.h \ + ../../modules/api_scilab/includes/api_double.h \ + ../../modules/core/includes/doublecomplex.h \ + ../../modules/api_scilab/includes/api_string.h /usr/include/wchar.h \ + /usr/include/stdio.h /usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/wchar2.h \ + ../../modules/api_scilab/includes/api_int.h \ + ../../modules/api_scilab/includes/api_poly.h \ + ../../modules/api_scilab/includes/api_sparse.h \ + ../../modules/api_scilab/includes/api_boolean.h \ + ../../modules/api_scilab/includes/api_boolean_sparse.h \ + ../../modules/api_scilab/includes/api_pointer.h \ + ../../modules/api_scilab/includes/api_list.h \ + ../../modules/api_scilab/includes/api_error.h \ + ../../modules/api_scilab/includes/api_handle.h \ + ../../modules/api_scilab/includes/api_optional.h \ + ../../modules/core/includes/stack-optional.h \ + ../../modules/api_scilab/includes/api_hypermat.h \ + ../../modules/core/includes/core_math.h \ + ../../modules/core/includes/sci_types.h includes/gw_arnoldi.h \ + includes/dynlib_arnoldi.h \ + ../../modules/localization/includes/localization.h \ + ../../modules/core/includes/machine.h /usr/include/libintl.h \ + /usr/include/locale.h /usr/include/x86_64-linux-gnu/bits/locale.h \ + ../../modules/output_stream/includes/Scierror.h \ + ../../modules/output_stream/includes/do_error_number.h + +/usr/include/stdc-predef.h: + +/usr/include/math.h: + +/usr/include/features.h: + +/usr/include/x86_64-linux-gnu/sys/cdefs.h: + +/usr/include/x86_64-linux-gnu/bits/wordsize.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs-64.h: + +/usr/include/x86_64-linux-gnu/bits/math-vector.h: + +/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h: + +/usr/include/x86_64-linux-gnu/bits/huge_val.h: + +/usr/include/x86_64-linux-gnu/bits/huge_valf.h: + +/usr/include/x86_64-linux-gnu/bits/huge_vall.h: + +/usr/include/x86_64-linux-gnu/bits/inf.h: + +/usr/include/x86_64-linux-gnu/bits/nan.h: + +/usr/include/x86_64-linux-gnu/bits/mathdef.h: + +/usr/include/x86_64-linux-gnu/bits/mathcalls.h: + +/usr/include/x86_64-linux-gnu/bits/mathinline.h: + +/usr/include/string.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include/stddef.h: + +/usr/include/xlocale.h: + +/usr/include/x86_64-linux-gnu/bits/string.h: + +/usr/include/x86_64-linux-gnu/bits/string2.h: + +/usr/include/endian.h: + +/usr/include/x86_64-linux-gnu/bits/endian.h: + +/usr/include/x86_64-linux-gnu/bits/byteswap.h: + +/usr/include/x86_64-linux-gnu/bits/types.h: + +/usr/include/x86_64-linux-gnu/bits/typesizes.h: + +/usr/include/x86_64-linux-gnu/bits/byteswap-16.h: + +/usr/include/stdlib.h: + +/usr/include/x86_64-linux-gnu/bits/string3.h: + +../../modules/api_scilab/includes/api_scilab.h: + +../../modules/core/includes/stack-c.h: + +../../modules/core/includes/core_math.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/limits.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/syslimits.h: + +/usr/include/limits.h: + +/usr/include/x86_64-linux-gnu/bits/posix1_lim.h: + +/usr/include/x86_64-linux-gnu/bits/local_lim.h: + +/usr/include/linux/limits.h: + +/usr/include/x86_64-linux-gnu/bits/posix2_lim.h: + +/usr/include/x86_64-linux-gnu/bits/waitflags.h: + +/usr/include/x86_64-linux-gnu/bits/waitstatus.h: + +/usr/include/x86_64-linux-gnu/sys/types.h: + +/usr/include/time.h: + +/usr/include/x86_64-linux-gnu/sys/select.h: + +/usr/include/x86_64-linux-gnu/bits/select.h: + +/usr/include/x86_64-linux-gnu/bits/sigset.h: + +/usr/include/x86_64-linux-gnu/bits/time.h: + +/usr/include/x86_64-linux-gnu/bits/select2.h: + +/usr/include/x86_64-linux-gnu/sys/sysmacros.h: + +/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h: + +/usr/include/alloca.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib-float.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib.h: + +../../modules/core/includes/stack-def.h: + +../../modules/core/includes/machine.h: + +../../modules/core/includes/stackTypeVariable.h: + +../../modules/core/includes/BOOL.h: + +../../modules/core/includes/doublecomplex.h: + +../../modules/core/includes/stack1.h: + +../../modules/core/includes/scisparse.h: + +../../modules/core/includes/stack2.h: + +../../modules/core/includes/stack3.h: + +../../modules/core/includes/stack-optional.h: + +../../modules/core/includes/sci_types.h: + +../../modules/api_scilab/includes/api_common.h: + +../../modules/api_scilab/includes/api_scilab.h: + +../../modules/api_scilab/includes/api_double.h: + +../../modules/core/includes/doublecomplex.h: + +../../modules/api_scilab/includes/api_string.h: + +/usr/include/wchar.h: + +/usr/include/stdio.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h: + +/usr/include/x86_64-linux-gnu/bits/wchar.h: + +/usr/include/x86_64-linux-gnu/bits/wchar2.h: + +../../modules/api_scilab/includes/api_int.h: + +../../modules/api_scilab/includes/api_poly.h: + +../../modules/api_scilab/includes/api_sparse.h: + +../../modules/api_scilab/includes/api_boolean.h: + +../../modules/api_scilab/includes/api_boolean_sparse.h: + +../../modules/api_scilab/includes/api_pointer.h: + +../../modules/api_scilab/includes/api_list.h: + +../../modules/api_scilab/includes/api_error.h: + +../../modules/api_scilab/includes/api_handle.h: + +../../modules/api_scilab/includes/api_optional.h: + +../../modules/core/includes/stack-optional.h: + +../../modules/api_scilab/includes/api_hypermat.h: + +../../modules/core/includes/core_math.h: + +../../modules/core/includes/sci_types.h: + +includes/gw_arnoldi.h: + +includes/dynlib_arnoldi.h: + +../../modules/localization/includes/localization.h: + +../../modules/core/includes/machine.h: + +/usr/include/libintl.h: + +/usr/include/locale.h: + +/usr/include/x86_64-linux-gnu/bits/locale.h: + +../../modules/output_stream/includes/Scierror.h: + +../../modules/output_stream/includes/do_error_number.h: diff --git a/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_dneupd.Plo b/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_dneupd.Plo new file mode 100755 index 000000000..733c5b46d --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_dneupd.Plo @@ -0,0 +1,284 @@ +sci_gateway/c/libsciarnoldi_la-sci_dneupd.lo: sci_gateway/c/sci_dneupd.c \ + /usr/include/stdc-predef.h /usr/include/math.h /usr/include/features.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/bits/math-vector.h \ + /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ + /usr/include/x86_64-linux-gnu/bits/huge_val.h \ + /usr/include/x86_64-linux-gnu/bits/huge_valf.h \ + /usr/include/x86_64-linux-gnu/bits/huge_vall.h \ + /usr/include/x86_64-linux-gnu/bits/inf.h \ + /usr/include/x86_64-linux-gnu/bits/nan.h \ + /usr/include/x86_64-linux-gnu/bits/mathdef.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ + /usr/include/x86_64-linux-gnu/bits/mathinline.h /usr/include/string.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include/stddef.h /usr/include/xlocale.h \ + /usr/include/x86_64-linux-gnu/bits/string.h \ + /usr/include/x86_64-linux-gnu/bits/string2.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap-16.h /usr/include/stdlib.h \ + /usr/include/x86_64-linux-gnu/bits/string3.h \ + ../../modules/api_scilab/includes/api_scilab.h \ + ../../modules/core/includes/stack-c.h \ + ../../modules/core/includes/core_math.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/limits.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/syslimits.h \ + /usr/include/limits.h /usr/include/x86_64-linux-gnu/bits/posix1_lim.h \ + /usr/include/x86_64-linux-gnu/bits/local_lim.h \ + /usr/include/linux/limits.h \ + /usr/include/x86_64-linux-gnu/bits/posix2_lim.h \ + /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ + /usr/include/x86_64-linux-gnu/sys/types.h /usr/include/time.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/sigset.h \ + /usr/include/x86_64-linux-gnu/bits/time.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/sys/sysmacros.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h \ + ../../modules/core/includes/stack-def.h \ + ../../modules/core/includes/machine.h \ + ../../modules/core/includes/stackTypeVariable.h \ + ../../modules/core/includes/BOOL.h \ + ../../modules/core/includes/doublecomplex.h \ + ../../modules/core/includes/stack1.h \ + ../../modules/core/includes/scisparse.h \ + ../../modules/core/includes/stack2.h \ + ../../modules/core/includes/stack3.h \ + ../../modules/core/includes/stack-optional.h \ + ../../modules/core/includes/sci_types.h \ + ../../modules/api_scilab/includes/api_common.h \ + ../../modules/api_scilab/includes/api_scilab.h \ + ../../modules/api_scilab/includes/api_double.h \ + ../../modules/core/includes/doublecomplex.h \ + ../../modules/api_scilab/includes/api_string.h /usr/include/wchar.h \ + /usr/include/stdio.h /usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/wchar2.h \ + ../../modules/api_scilab/includes/api_int.h \ + ../../modules/api_scilab/includes/api_poly.h \ + ../../modules/api_scilab/includes/api_sparse.h \ + ../../modules/api_scilab/includes/api_boolean.h \ + ../../modules/api_scilab/includes/api_boolean_sparse.h \ + ../../modules/api_scilab/includes/api_pointer.h \ + ../../modules/api_scilab/includes/api_list.h \ + ../../modules/api_scilab/includes/api_error.h \ + ../../modules/api_scilab/includes/api_handle.h \ + ../../modules/api_scilab/includes/api_optional.h \ + ../../modules/core/includes/stack-optional.h \ + ../../modules/api_scilab/includes/api_hypermat.h \ + ../../modules/core/includes/core_math.h \ + ../../modules/core/includes/sci_types.h includes/gw_arnoldi.h \ + includes/dynlib_arnoldi.h \ + ../../modules/localization/includes/localization.h \ + ../../modules/core/includes/machine.h /usr/include/libintl.h \ + /usr/include/locale.h /usr/include/x86_64-linux-gnu/bits/locale.h \ + ../../modules/output_stream/includes/Scierror.h \ + ../../modules/output_stream/includes/do_error_number.h + +/usr/include/stdc-predef.h: + +/usr/include/math.h: + +/usr/include/features.h: + +/usr/include/x86_64-linux-gnu/sys/cdefs.h: + +/usr/include/x86_64-linux-gnu/bits/wordsize.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs-64.h: + +/usr/include/x86_64-linux-gnu/bits/math-vector.h: + +/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h: + +/usr/include/x86_64-linux-gnu/bits/huge_val.h: + +/usr/include/x86_64-linux-gnu/bits/huge_valf.h: + +/usr/include/x86_64-linux-gnu/bits/huge_vall.h: + +/usr/include/x86_64-linux-gnu/bits/inf.h: + +/usr/include/x86_64-linux-gnu/bits/nan.h: + +/usr/include/x86_64-linux-gnu/bits/mathdef.h: + +/usr/include/x86_64-linux-gnu/bits/mathcalls.h: + +/usr/include/x86_64-linux-gnu/bits/mathinline.h: + +/usr/include/string.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include/stddef.h: + +/usr/include/xlocale.h: + +/usr/include/x86_64-linux-gnu/bits/string.h: + +/usr/include/x86_64-linux-gnu/bits/string2.h: + +/usr/include/endian.h: + +/usr/include/x86_64-linux-gnu/bits/endian.h: + +/usr/include/x86_64-linux-gnu/bits/byteswap.h: + +/usr/include/x86_64-linux-gnu/bits/types.h: + +/usr/include/x86_64-linux-gnu/bits/typesizes.h: + +/usr/include/x86_64-linux-gnu/bits/byteswap-16.h: + +/usr/include/stdlib.h: + +/usr/include/x86_64-linux-gnu/bits/string3.h: + +../../modules/api_scilab/includes/api_scilab.h: + +../../modules/core/includes/stack-c.h: + +../../modules/core/includes/core_math.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/limits.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/syslimits.h: + +/usr/include/limits.h: + +/usr/include/x86_64-linux-gnu/bits/posix1_lim.h: + +/usr/include/x86_64-linux-gnu/bits/local_lim.h: + +/usr/include/linux/limits.h: + +/usr/include/x86_64-linux-gnu/bits/posix2_lim.h: + +/usr/include/x86_64-linux-gnu/bits/waitflags.h: + +/usr/include/x86_64-linux-gnu/bits/waitstatus.h: + +/usr/include/x86_64-linux-gnu/sys/types.h: + +/usr/include/time.h: + +/usr/include/x86_64-linux-gnu/sys/select.h: + +/usr/include/x86_64-linux-gnu/bits/select.h: + +/usr/include/x86_64-linux-gnu/bits/sigset.h: + +/usr/include/x86_64-linux-gnu/bits/time.h: + +/usr/include/x86_64-linux-gnu/bits/select2.h: + +/usr/include/x86_64-linux-gnu/sys/sysmacros.h: + +/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h: + +/usr/include/alloca.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib-float.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib.h: + +../../modules/core/includes/stack-def.h: + +../../modules/core/includes/machine.h: + +../../modules/core/includes/stackTypeVariable.h: + +../../modules/core/includes/BOOL.h: + +../../modules/core/includes/doublecomplex.h: + +../../modules/core/includes/stack1.h: + +../../modules/core/includes/scisparse.h: + +../../modules/core/includes/stack2.h: + +../../modules/core/includes/stack3.h: + +../../modules/core/includes/stack-optional.h: + +../../modules/core/includes/sci_types.h: + +../../modules/api_scilab/includes/api_common.h: + +../../modules/api_scilab/includes/api_scilab.h: + +../../modules/api_scilab/includes/api_double.h: + +../../modules/core/includes/doublecomplex.h: + +../../modules/api_scilab/includes/api_string.h: + +/usr/include/wchar.h: + +/usr/include/stdio.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h: + +/usr/include/x86_64-linux-gnu/bits/wchar.h: + +/usr/include/x86_64-linux-gnu/bits/wchar2.h: + +../../modules/api_scilab/includes/api_int.h: + +../../modules/api_scilab/includes/api_poly.h: + +../../modules/api_scilab/includes/api_sparse.h: + +../../modules/api_scilab/includes/api_boolean.h: + +../../modules/api_scilab/includes/api_boolean_sparse.h: + +../../modules/api_scilab/includes/api_pointer.h: + +../../modules/api_scilab/includes/api_list.h: + +../../modules/api_scilab/includes/api_error.h: + +../../modules/api_scilab/includes/api_handle.h: + +../../modules/api_scilab/includes/api_optional.h: + +../../modules/core/includes/stack-optional.h: + +../../modules/api_scilab/includes/api_hypermat.h: + +../../modules/core/includes/core_math.h: + +../../modules/core/includes/sci_types.h: + +includes/gw_arnoldi.h: + +includes/dynlib_arnoldi.h: + +../../modules/localization/includes/localization.h: + +../../modules/core/includes/machine.h: + +/usr/include/libintl.h: + +/usr/include/locale.h: + +/usr/include/x86_64-linux-gnu/bits/locale.h: + +../../modules/output_stream/includes/Scierror.h: + +../../modules/output_stream/includes/do_error_number.h: diff --git a/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_dsaupd.Plo b/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_dsaupd.Plo new file mode 100755 index 000000000..454d3d57c --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_dsaupd.Plo @@ -0,0 +1,284 @@ +sci_gateway/c/libsciarnoldi_la-sci_dsaupd.lo: sci_gateway/c/sci_dsaupd.c \ + /usr/include/stdc-predef.h /usr/include/math.h /usr/include/features.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/bits/math-vector.h \ + /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ + /usr/include/x86_64-linux-gnu/bits/huge_val.h \ + /usr/include/x86_64-linux-gnu/bits/huge_valf.h \ + /usr/include/x86_64-linux-gnu/bits/huge_vall.h \ + /usr/include/x86_64-linux-gnu/bits/inf.h \ + /usr/include/x86_64-linux-gnu/bits/nan.h \ + /usr/include/x86_64-linux-gnu/bits/mathdef.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ + /usr/include/x86_64-linux-gnu/bits/mathinline.h /usr/include/string.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include/stddef.h /usr/include/xlocale.h \ + /usr/include/x86_64-linux-gnu/bits/string.h \ + /usr/include/x86_64-linux-gnu/bits/string2.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap-16.h /usr/include/stdlib.h \ + /usr/include/x86_64-linux-gnu/bits/string3.h \ + ../../modules/api_scilab/includes/api_scilab.h \ + ../../modules/core/includes/stack-c.h \ + ../../modules/core/includes/core_math.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/limits.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/syslimits.h \ + /usr/include/limits.h /usr/include/x86_64-linux-gnu/bits/posix1_lim.h \ + /usr/include/x86_64-linux-gnu/bits/local_lim.h \ + /usr/include/linux/limits.h \ + /usr/include/x86_64-linux-gnu/bits/posix2_lim.h \ + /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ + /usr/include/x86_64-linux-gnu/sys/types.h /usr/include/time.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/sigset.h \ + /usr/include/x86_64-linux-gnu/bits/time.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/sys/sysmacros.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h \ + ../../modules/core/includes/stack-def.h \ + ../../modules/core/includes/machine.h \ + ../../modules/core/includes/stackTypeVariable.h \ + ../../modules/core/includes/BOOL.h \ + ../../modules/core/includes/doublecomplex.h \ + ../../modules/core/includes/stack1.h \ + ../../modules/core/includes/scisparse.h \ + ../../modules/core/includes/stack2.h \ + ../../modules/core/includes/stack3.h \ + ../../modules/core/includes/stack-optional.h \ + ../../modules/core/includes/sci_types.h \ + ../../modules/api_scilab/includes/api_common.h \ + ../../modules/api_scilab/includes/api_scilab.h \ + ../../modules/api_scilab/includes/api_double.h \ + ../../modules/core/includes/doublecomplex.h \ + ../../modules/api_scilab/includes/api_string.h /usr/include/wchar.h \ + /usr/include/stdio.h /usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/wchar2.h \ + ../../modules/api_scilab/includes/api_int.h \ + ../../modules/api_scilab/includes/api_poly.h \ + ../../modules/api_scilab/includes/api_sparse.h \ + ../../modules/api_scilab/includes/api_boolean.h \ + ../../modules/api_scilab/includes/api_boolean_sparse.h \ + ../../modules/api_scilab/includes/api_pointer.h \ + ../../modules/api_scilab/includes/api_list.h \ + ../../modules/api_scilab/includes/api_error.h \ + ../../modules/api_scilab/includes/api_handle.h \ + ../../modules/api_scilab/includes/api_optional.h \ + ../../modules/core/includes/stack-optional.h \ + ../../modules/api_scilab/includes/api_hypermat.h \ + ../../modules/core/includes/core_math.h \ + ../../modules/core/includes/sci_types.h includes/gw_arnoldi.h \ + includes/dynlib_arnoldi.h \ + ../../modules/localization/includes/localization.h \ + ../../modules/core/includes/machine.h /usr/include/libintl.h \ + /usr/include/locale.h /usr/include/x86_64-linux-gnu/bits/locale.h \ + ../../modules/output_stream/includes/Scierror.h \ + ../../modules/output_stream/includes/do_error_number.h + +/usr/include/stdc-predef.h: + +/usr/include/math.h: + +/usr/include/features.h: + +/usr/include/x86_64-linux-gnu/sys/cdefs.h: + +/usr/include/x86_64-linux-gnu/bits/wordsize.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs-64.h: + +/usr/include/x86_64-linux-gnu/bits/math-vector.h: + +/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h: + +/usr/include/x86_64-linux-gnu/bits/huge_val.h: + +/usr/include/x86_64-linux-gnu/bits/huge_valf.h: + +/usr/include/x86_64-linux-gnu/bits/huge_vall.h: + +/usr/include/x86_64-linux-gnu/bits/inf.h: + +/usr/include/x86_64-linux-gnu/bits/nan.h: + +/usr/include/x86_64-linux-gnu/bits/mathdef.h: + +/usr/include/x86_64-linux-gnu/bits/mathcalls.h: + +/usr/include/x86_64-linux-gnu/bits/mathinline.h: + +/usr/include/string.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include/stddef.h: + +/usr/include/xlocale.h: + +/usr/include/x86_64-linux-gnu/bits/string.h: + +/usr/include/x86_64-linux-gnu/bits/string2.h: + +/usr/include/endian.h: + +/usr/include/x86_64-linux-gnu/bits/endian.h: + +/usr/include/x86_64-linux-gnu/bits/byteswap.h: + +/usr/include/x86_64-linux-gnu/bits/types.h: + +/usr/include/x86_64-linux-gnu/bits/typesizes.h: + +/usr/include/x86_64-linux-gnu/bits/byteswap-16.h: + +/usr/include/stdlib.h: + +/usr/include/x86_64-linux-gnu/bits/string3.h: + +../../modules/api_scilab/includes/api_scilab.h: + +../../modules/core/includes/stack-c.h: + +../../modules/core/includes/core_math.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/limits.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/syslimits.h: + +/usr/include/limits.h: + +/usr/include/x86_64-linux-gnu/bits/posix1_lim.h: + +/usr/include/x86_64-linux-gnu/bits/local_lim.h: + +/usr/include/linux/limits.h: + +/usr/include/x86_64-linux-gnu/bits/posix2_lim.h: + +/usr/include/x86_64-linux-gnu/bits/waitflags.h: + +/usr/include/x86_64-linux-gnu/bits/waitstatus.h: + +/usr/include/x86_64-linux-gnu/sys/types.h: + +/usr/include/time.h: + +/usr/include/x86_64-linux-gnu/sys/select.h: + +/usr/include/x86_64-linux-gnu/bits/select.h: + +/usr/include/x86_64-linux-gnu/bits/sigset.h: + +/usr/include/x86_64-linux-gnu/bits/time.h: + +/usr/include/x86_64-linux-gnu/bits/select2.h: + +/usr/include/x86_64-linux-gnu/sys/sysmacros.h: + +/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h: + +/usr/include/alloca.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib-float.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib.h: + +../../modules/core/includes/stack-def.h: + +../../modules/core/includes/machine.h: + +../../modules/core/includes/stackTypeVariable.h: + +../../modules/core/includes/BOOL.h: + +../../modules/core/includes/doublecomplex.h: + +../../modules/core/includes/stack1.h: + +../../modules/core/includes/scisparse.h: + +../../modules/core/includes/stack2.h: + +../../modules/core/includes/stack3.h: + +../../modules/core/includes/stack-optional.h: + +../../modules/core/includes/sci_types.h: + +../../modules/api_scilab/includes/api_common.h: + +../../modules/api_scilab/includes/api_scilab.h: + +../../modules/api_scilab/includes/api_double.h: + +../../modules/core/includes/doublecomplex.h: + +../../modules/api_scilab/includes/api_string.h: + +/usr/include/wchar.h: + +/usr/include/stdio.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h: + +/usr/include/x86_64-linux-gnu/bits/wchar.h: + +/usr/include/x86_64-linux-gnu/bits/wchar2.h: + +../../modules/api_scilab/includes/api_int.h: + +../../modules/api_scilab/includes/api_poly.h: + +../../modules/api_scilab/includes/api_sparse.h: + +../../modules/api_scilab/includes/api_boolean.h: + +../../modules/api_scilab/includes/api_boolean_sparse.h: + +../../modules/api_scilab/includes/api_pointer.h: + +../../modules/api_scilab/includes/api_list.h: + +../../modules/api_scilab/includes/api_error.h: + +../../modules/api_scilab/includes/api_handle.h: + +../../modules/api_scilab/includes/api_optional.h: + +../../modules/core/includes/stack-optional.h: + +../../modules/api_scilab/includes/api_hypermat.h: + +../../modules/core/includes/core_math.h: + +../../modules/core/includes/sci_types.h: + +includes/gw_arnoldi.h: + +includes/dynlib_arnoldi.h: + +../../modules/localization/includes/localization.h: + +../../modules/core/includes/machine.h: + +/usr/include/libintl.h: + +/usr/include/locale.h: + +/usr/include/x86_64-linux-gnu/bits/locale.h: + +../../modules/output_stream/includes/Scierror.h: + +../../modules/output_stream/includes/do_error_number.h: diff --git a/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_dseupd.Plo b/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_dseupd.Plo new file mode 100755 index 000000000..bd7dcf7b2 --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_dseupd.Plo @@ -0,0 +1,284 @@ +sci_gateway/c/libsciarnoldi_la-sci_dseupd.lo: sci_gateway/c/sci_dseupd.c \ + /usr/include/stdc-predef.h /usr/include/math.h /usr/include/features.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/bits/math-vector.h \ + /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ + /usr/include/x86_64-linux-gnu/bits/huge_val.h \ + /usr/include/x86_64-linux-gnu/bits/huge_valf.h \ + /usr/include/x86_64-linux-gnu/bits/huge_vall.h \ + /usr/include/x86_64-linux-gnu/bits/inf.h \ + /usr/include/x86_64-linux-gnu/bits/nan.h \ + /usr/include/x86_64-linux-gnu/bits/mathdef.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ + /usr/include/x86_64-linux-gnu/bits/mathinline.h /usr/include/string.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include/stddef.h /usr/include/xlocale.h \ + /usr/include/x86_64-linux-gnu/bits/string.h \ + /usr/include/x86_64-linux-gnu/bits/string2.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap-16.h /usr/include/stdlib.h \ + /usr/include/x86_64-linux-gnu/bits/string3.h \ + ../../modules/api_scilab/includes/api_scilab.h \ + ../../modules/core/includes/stack-c.h \ + ../../modules/core/includes/core_math.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/limits.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/syslimits.h \ + /usr/include/limits.h /usr/include/x86_64-linux-gnu/bits/posix1_lim.h \ + /usr/include/x86_64-linux-gnu/bits/local_lim.h \ + /usr/include/linux/limits.h \ + /usr/include/x86_64-linux-gnu/bits/posix2_lim.h \ + /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ + /usr/include/x86_64-linux-gnu/sys/types.h /usr/include/time.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/sigset.h \ + /usr/include/x86_64-linux-gnu/bits/time.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/sys/sysmacros.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h \ + ../../modules/core/includes/stack-def.h \ + ../../modules/core/includes/machine.h \ + ../../modules/core/includes/stackTypeVariable.h \ + ../../modules/core/includes/BOOL.h \ + ../../modules/core/includes/doublecomplex.h \ + ../../modules/core/includes/stack1.h \ + ../../modules/core/includes/scisparse.h \ + ../../modules/core/includes/stack2.h \ + ../../modules/core/includes/stack3.h \ + ../../modules/core/includes/stack-optional.h \ + ../../modules/core/includes/sci_types.h \ + ../../modules/api_scilab/includes/api_common.h \ + ../../modules/api_scilab/includes/api_scilab.h \ + ../../modules/api_scilab/includes/api_double.h \ + ../../modules/core/includes/doublecomplex.h \ + ../../modules/api_scilab/includes/api_string.h /usr/include/wchar.h \ + /usr/include/stdio.h /usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/wchar2.h \ + ../../modules/api_scilab/includes/api_int.h \ + ../../modules/api_scilab/includes/api_poly.h \ + ../../modules/api_scilab/includes/api_sparse.h \ + ../../modules/api_scilab/includes/api_boolean.h \ + ../../modules/api_scilab/includes/api_boolean_sparse.h \ + ../../modules/api_scilab/includes/api_pointer.h \ + ../../modules/api_scilab/includes/api_list.h \ + ../../modules/api_scilab/includes/api_error.h \ + ../../modules/api_scilab/includes/api_handle.h \ + ../../modules/api_scilab/includes/api_optional.h \ + ../../modules/core/includes/stack-optional.h \ + ../../modules/api_scilab/includes/api_hypermat.h \ + ../../modules/core/includes/core_math.h \ + ../../modules/core/includes/sci_types.h includes/gw_arnoldi.h \ + includes/dynlib_arnoldi.h \ + ../../modules/localization/includes/localization.h \ + ../../modules/core/includes/machine.h /usr/include/libintl.h \ + /usr/include/locale.h /usr/include/x86_64-linux-gnu/bits/locale.h \ + ../../modules/output_stream/includes/Scierror.h \ + ../../modules/output_stream/includes/do_error_number.h + +/usr/include/stdc-predef.h: + +/usr/include/math.h: + +/usr/include/features.h: + +/usr/include/x86_64-linux-gnu/sys/cdefs.h: + +/usr/include/x86_64-linux-gnu/bits/wordsize.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs-64.h: + +/usr/include/x86_64-linux-gnu/bits/math-vector.h: + +/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h: + +/usr/include/x86_64-linux-gnu/bits/huge_val.h: + +/usr/include/x86_64-linux-gnu/bits/huge_valf.h: + +/usr/include/x86_64-linux-gnu/bits/huge_vall.h: + +/usr/include/x86_64-linux-gnu/bits/inf.h: + +/usr/include/x86_64-linux-gnu/bits/nan.h: + +/usr/include/x86_64-linux-gnu/bits/mathdef.h: + +/usr/include/x86_64-linux-gnu/bits/mathcalls.h: + +/usr/include/x86_64-linux-gnu/bits/mathinline.h: + +/usr/include/string.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include/stddef.h: + +/usr/include/xlocale.h: + +/usr/include/x86_64-linux-gnu/bits/string.h: + +/usr/include/x86_64-linux-gnu/bits/string2.h: + +/usr/include/endian.h: + +/usr/include/x86_64-linux-gnu/bits/endian.h: + +/usr/include/x86_64-linux-gnu/bits/byteswap.h: + +/usr/include/x86_64-linux-gnu/bits/types.h: + +/usr/include/x86_64-linux-gnu/bits/typesizes.h: + +/usr/include/x86_64-linux-gnu/bits/byteswap-16.h: + +/usr/include/stdlib.h: + +/usr/include/x86_64-linux-gnu/bits/string3.h: + +../../modules/api_scilab/includes/api_scilab.h: + +../../modules/core/includes/stack-c.h: + +../../modules/core/includes/core_math.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/limits.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/syslimits.h: + +/usr/include/limits.h: + +/usr/include/x86_64-linux-gnu/bits/posix1_lim.h: + +/usr/include/x86_64-linux-gnu/bits/local_lim.h: + +/usr/include/linux/limits.h: + +/usr/include/x86_64-linux-gnu/bits/posix2_lim.h: + +/usr/include/x86_64-linux-gnu/bits/waitflags.h: + +/usr/include/x86_64-linux-gnu/bits/waitstatus.h: + +/usr/include/x86_64-linux-gnu/sys/types.h: + +/usr/include/time.h: + +/usr/include/x86_64-linux-gnu/sys/select.h: + +/usr/include/x86_64-linux-gnu/bits/select.h: + +/usr/include/x86_64-linux-gnu/bits/sigset.h: + +/usr/include/x86_64-linux-gnu/bits/time.h: + +/usr/include/x86_64-linux-gnu/bits/select2.h: + +/usr/include/x86_64-linux-gnu/sys/sysmacros.h: + +/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h: + +/usr/include/alloca.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib-float.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib.h: + +../../modules/core/includes/stack-def.h: + +../../modules/core/includes/machine.h: + +../../modules/core/includes/stackTypeVariable.h: + +../../modules/core/includes/BOOL.h: + +../../modules/core/includes/doublecomplex.h: + +../../modules/core/includes/stack1.h: + +../../modules/core/includes/scisparse.h: + +../../modules/core/includes/stack2.h: + +../../modules/core/includes/stack3.h: + +../../modules/core/includes/stack-optional.h: + +../../modules/core/includes/sci_types.h: + +../../modules/api_scilab/includes/api_common.h: + +../../modules/api_scilab/includes/api_scilab.h: + +../../modules/api_scilab/includes/api_double.h: + +../../modules/core/includes/doublecomplex.h: + +../../modules/api_scilab/includes/api_string.h: + +/usr/include/wchar.h: + +/usr/include/stdio.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h: + +/usr/include/x86_64-linux-gnu/bits/wchar.h: + +/usr/include/x86_64-linux-gnu/bits/wchar2.h: + +../../modules/api_scilab/includes/api_int.h: + +../../modules/api_scilab/includes/api_poly.h: + +../../modules/api_scilab/includes/api_sparse.h: + +../../modules/api_scilab/includes/api_boolean.h: + +../../modules/api_scilab/includes/api_boolean_sparse.h: + +../../modules/api_scilab/includes/api_pointer.h: + +../../modules/api_scilab/includes/api_list.h: + +../../modules/api_scilab/includes/api_error.h: + +../../modules/api_scilab/includes/api_handle.h: + +../../modules/api_scilab/includes/api_optional.h: + +../../modules/core/includes/stack-optional.h: + +../../modules/api_scilab/includes/api_hypermat.h: + +../../modules/core/includes/core_math.h: + +../../modules/core/includes/sci_types.h: + +includes/gw_arnoldi.h: + +includes/dynlib_arnoldi.h: + +../../modules/localization/includes/localization.h: + +../../modules/core/includes/machine.h: + +/usr/include/libintl.h: + +/usr/include/locale.h: + +/usr/include/x86_64-linux-gnu/bits/locale.h: + +../../modules/output_stream/includes/Scierror.h: + +../../modules/output_stream/includes/do_error_number.h: diff --git a/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_eigs.Plo b/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_eigs.Plo new file mode 100755 index 000000000..f04132610 --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_eigs.Plo @@ -0,0 +1,316 @@ +sci_gateway/c/libsciarnoldi_la-sci_eigs.lo: sci_gateway/c/sci_eigs.c \ + /usr/include/stdc-predef.h /usr/include/math.h /usr/include/features.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/bits/math-vector.h \ + /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ + /usr/include/x86_64-linux-gnu/bits/huge_val.h \ + /usr/include/x86_64-linux-gnu/bits/huge_valf.h \ + /usr/include/x86_64-linux-gnu/bits/huge_vall.h \ + /usr/include/x86_64-linux-gnu/bits/inf.h \ + /usr/include/x86_64-linux-gnu/bits/nan.h \ + /usr/include/x86_64-linux-gnu/bits/mathdef.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ + /usr/include/x86_64-linux-gnu/bits/mathinline.h /usr/include/string.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include/stddef.h /usr/include/xlocale.h \ + /usr/include/x86_64-linux-gnu/bits/string.h \ + /usr/include/x86_64-linux-gnu/bits/string2.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap-16.h /usr/include/stdlib.h \ + /usr/include/x86_64-linux-gnu/bits/string3.h \ + ../../modules/core/includes/stack-c.h \ + ../../modules/core/includes/core_math.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/limits.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/syslimits.h \ + /usr/include/limits.h /usr/include/x86_64-linux-gnu/bits/posix1_lim.h \ + /usr/include/x86_64-linux-gnu/bits/local_lim.h \ + /usr/include/linux/limits.h \ + /usr/include/x86_64-linux-gnu/bits/posix2_lim.h \ + /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ + /usr/include/x86_64-linux-gnu/sys/types.h /usr/include/time.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/sigset.h \ + /usr/include/x86_64-linux-gnu/bits/time.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/sys/sysmacros.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h \ + ../../modules/core/includes/stack-def.h \ + ../../modules/core/includes/machine.h \ + ../../modules/core/includes/stackTypeVariable.h \ + ../../modules/core/includes/BOOL.h \ + ../../modules/core/includes/doublecomplex.h \ + ../../modules/core/includes/stack1.h \ + ../../modules/core/includes/scisparse.h \ + ../../modules/core/includes/stack2.h \ + ../../modules/core/includes/stack3.h \ + ../../modules/core/includes/stack-optional.h \ + ../../modules/core/includes/sci_types.h \ + ../../modules/core/includes/isanan.h \ + ../../modules/core/includes/core_math.h includes/gw_arnoldi.h \ + includes/dynlib_arnoldi.h \ + ../../modules/localization/includes/localization.h \ + ../../modules/core/includes/machine.h /usr/include/libintl.h \ + /usr/include/locale.h /usr/include/x86_64-linux-gnu/bits/locale.h \ + ../../modules/output_stream/includes/Scierror.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h \ + ../../modules/output_stream/includes/do_error_number.h \ + ../../modules/api_scilab/includes/api_scilab.h \ + ../../modules/api_scilab/includes/api_common.h \ + ../../modules/api_scilab/includes/api_scilab.h \ + ../../modules/api_scilab/includes/api_double.h \ + ../../modules/core/includes/doublecomplex.h \ + ../../modules/api_scilab/includes/api_string.h /usr/include/wchar.h \ + /usr/include/stdio.h /usr/include/x86_64-linux-gnu/bits/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/wchar2.h \ + ../../modules/api_scilab/includes/api_int.h \ + ../../modules/api_scilab/includes/api_poly.h \ + ../../modules/api_scilab/includes/api_sparse.h \ + ../../modules/api_scilab/includes/api_boolean.h \ + ../../modules/api_scilab/includes/api_boolean_sparse.h \ + ../../modules/api_scilab/includes/api_pointer.h \ + ../../modules/api_scilab/includes/api_list.h \ + ../../modules/api_scilab/includes/api_error.h \ + ../../modules/api_scilab/includes/api_handle.h \ + ../../modules/api_scilab/includes/api_optional.h \ + ../../modules/core/includes/stack-optional.h \ + ../../modules/api_scilab/includes/api_hypermat.h \ + ../../modules/core/includes/sci_types.h /usr/include/libio.h \ + /usr/include/_G_config.h /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/sys_errlist.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h \ + ../../modules/output_stream/includes/sciprint.h \ + ../../modules/core/includes/BOOL.h ../../modules/core/includes/MALLOC.h \ + ../../modules/core/includes/sci_mem_alloc.h includes/eigs.h + +/usr/include/stdc-predef.h: + +/usr/include/math.h: + +/usr/include/features.h: + +/usr/include/x86_64-linux-gnu/sys/cdefs.h: + +/usr/include/x86_64-linux-gnu/bits/wordsize.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs-64.h: + +/usr/include/x86_64-linux-gnu/bits/math-vector.h: + +/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h: + +/usr/include/x86_64-linux-gnu/bits/huge_val.h: + +/usr/include/x86_64-linux-gnu/bits/huge_valf.h: + +/usr/include/x86_64-linux-gnu/bits/huge_vall.h: + +/usr/include/x86_64-linux-gnu/bits/inf.h: + +/usr/include/x86_64-linux-gnu/bits/nan.h: + +/usr/include/x86_64-linux-gnu/bits/mathdef.h: + +/usr/include/x86_64-linux-gnu/bits/mathcalls.h: + +/usr/include/x86_64-linux-gnu/bits/mathinline.h: + +/usr/include/string.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include/stddef.h: + +/usr/include/xlocale.h: + +/usr/include/x86_64-linux-gnu/bits/string.h: + +/usr/include/x86_64-linux-gnu/bits/string2.h: + +/usr/include/endian.h: + +/usr/include/x86_64-linux-gnu/bits/endian.h: + +/usr/include/x86_64-linux-gnu/bits/byteswap.h: + +/usr/include/x86_64-linux-gnu/bits/types.h: + +/usr/include/x86_64-linux-gnu/bits/typesizes.h: + +/usr/include/x86_64-linux-gnu/bits/byteswap-16.h: + +/usr/include/stdlib.h: + +/usr/include/x86_64-linux-gnu/bits/string3.h: + +../../modules/core/includes/stack-c.h: + +../../modules/core/includes/core_math.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/limits.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/syslimits.h: + +/usr/include/limits.h: + +/usr/include/x86_64-linux-gnu/bits/posix1_lim.h: + +/usr/include/x86_64-linux-gnu/bits/local_lim.h: + +/usr/include/linux/limits.h: + +/usr/include/x86_64-linux-gnu/bits/posix2_lim.h: + +/usr/include/x86_64-linux-gnu/bits/waitflags.h: + +/usr/include/x86_64-linux-gnu/bits/waitstatus.h: + +/usr/include/x86_64-linux-gnu/sys/types.h: + +/usr/include/time.h: + +/usr/include/x86_64-linux-gnu/sys/select.h: + +/usr/include/x86_64-linux-gnu/bits/select.h: + +/usr/include/x86_64-linux-gnu/bits/sigset.h: + +/usr/include/x86_64-linux-gnu/bits/time.h: + +/usr/include/x86_64-linux-gnu/bits/select2.h: + +/usr/include/x86_64-linux-gnu/sys/sysmacros.h: + +/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h: + +/usr/include/alloca.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib-float.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib.h: + +../../modules/core/includes/stack-def.h: + +../../modules/core/includes/machine.h: + +../../modules/core/includes/stackTypeVariable.h: + +../../modules/core/includes/BOOL.h: + +../../modules/core/includes/doublecomplex.h: + +../../modules/core/includes/stack1.h: + +../../modules/core/includes/scisparse.h: + +../../modules/core/includes/stack2.h: + +../../modules/core/includes/stack3.h: + +../../modules/core/includes/stack-optional.h: + +../../modules/core/includes/sci_types.h: + +../../modules/core/includes/isanan.h: + +../../modules/core/includes/core_math.h: + +includes/gw_arnoldi.h: + +includes/dynlib_arnoldi.h: + +../../modules/localization/includes/localization.h: + +../../modules/core/includes/machine.h: + +/usr/include/libintl.h: + +/usr/include/locale.h: + +/usr/include/x86_64-linux-gnu/bits/locale.h: + +../../modules/output_stream/includes/Scierror.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h: + +../../modules/output_stream/includes/do_error_number.h: + +../../modules/api_scilab/includes/api_scilab.h: + +../../modules/api_scilab/includes/api_common.h: + +../../modules/api_scilab/includes/api_scilab.h: + +../../modules/api_scilab/includes/api_double.h: + +../../modules/core/includes/doublecomplex.h: + +../../modules/api_scilab/includes/api_string.h: + +/usr/include/wchar.h: + +/usr/include/stdio.h: + +/usr/include/x86_64-linux-gnu/bits/wchar.h: + +/usr/include/x86_64-linux-gnu/bits/wchar2.h: + +../../modules/api_scilab/includes/api_int.h: + +../../modules/api_scilab/includes/api_poly.h: + +../../modules/api_scilab/includes/api_sparse.h: + +../../modules/api_scilab/includes/api_boolean.h: + +../../modules/api_scilab/includes/api_boolean_sparse.h: + +../../modules/api_scilab/includes/api_pointer.h: + +../../modules/api_scilab/includes/api_list.h: + +../../modules/api_scilab/includes/api_error.h: + +../../modules/api_scilab/includes/api_handle.h: + +../../modules/api_scilab/includes/api_optional.h: + +../../modules/core/includes/stack-optional.h: + +../../modules/api_scilab/includes/api_hypermat.h: + +../../modules/core/includes/sci_types.h: + +/usr/include/libio.h: + +/usr/include/_G_config.h: + +/usr/include/x86_64-linux-gnu/bits/stdio_lim.h: + +/usr/include/x86_64-linux-gnu/bits/sys_errlist.h: + +/usr/include/x86_64-linux-gnu/bits/stdio.h: + +/usr/include/x86_64-linux-gnu/bits/stdio2.h: + +../../modules/output_stream/includes/sciprint.h: + +../../modules/core/includes/BOOL.h: + +../../modules/core/includes/MALLOC.h: + +../../modules/core/includes/sci_mem_alloc.h: + +includes/eigs.h: diff --git a/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_znaupd.Plo b/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_znaupd.Plo new file mode 100755 index 000000000..7f7ccdb44 --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_znaupd.Plo @@ -0,0 +1,284 @@ +sci_gateway/c/libsciarnoldi_la-sci_znaupd.lo: sci_gateway/c/sci_znaupd.c \ + /usr/include/stdc-predef.h /usr/include/math.h /usr/include/features.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/bits/math-vector.h \ + /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ + /usr/include/x86_64-linux-gnu/bits/huge_val.h \ + /usr/include/x86_64-linux-gnu/bits/huge_valf.h \ + /usr/include/x86_64-linux-gnu/bits/huge_vall.h \ + /usr/include/x86_64-linux-gnu/bits/inf.h \ + /usr/include/x86_64-linux-gnu/bits/nan.h \ + /usr/include/x86_64-linux-gnu/bits/mathdef.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ + /usr/include/x86_64-linux-gnu/bits/mathinline.h /usr/include/string.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include/stddef.h /usr/include/xlocale.h \ + /usr/include/x86_64-linux-gnu/bits/string.h \ + /usr/include/x86_64-linux-gnu/bits/string2.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap-16.h /usr/include/stdlib.h \ + /usr/include/x86_64-linux-gnu/bits/string3.h \ + ../../modules/api_scilab/includes/api_scilab.h \ + ../../modules/core/includes/stack-c.h \ + ../../modules/core/includes/core_math.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/limits.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/syslimits.h \ + /usr/include/limits.h /usr/include/x86_64-linux-gnu/bits/posix1_lim.h \ + /usr/include/x86_64-linux-gnu/bits/local_lim.h \ + /usr/include/linux/limits.h \ + /usr/include/x86_64-linux-gnu/bits/posix2_lim.h \ + /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ + /usr/include/x86_64-linux-gnu/sys/types.h /usr/include/time.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/sigset.h \ + /usr/include/x86_64-linux-gnu/bits/time.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/sys/sysmacros.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h \ + ../../modules/core/includes/stack-def.h \ + ../../modules/core/includes/machine.h \ + ../../modules/core/includes/stackTypeVariable.h \ + ../../modules/core/includes/BOOL.h \ + ../../modules/core/includes/doublecomplex.h \ + ../../modules/core/includes/stack1.h \ + ../../modules/core/includes/scisparse.h \ + ../../modules/core/includes/stack2.h \ + ../../modules/core/includes/stack3.h \ + ../../modules/core/includes/stack-optional.h \ + ../../modules/core/includes/sci_types.h \ + ../../modules/api_scilab/includes/api_common.h \ + ../../modules/api_scilab/includes/api_scilab.h \ + ../../modules/api_scilab/includes/api_double.h \ + ../../modules/core/includes/doublecomplex.h \ + ../../modules/api_scilab/includes/api_string.h /usr/include/wchar.h \ + /usr/include/stdio.h /usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/wchar2.h \ + ../../modules/api_scilab/includes/api_int.h \ + ../../modules/api_scilab/includes/api_poly.h \ + ../../modules/api_scilab/includes/api_sparse.h \ + ../../modules/api_scilab/includes/api_boolean.h \ + ../../modules/api_scilab/includes/api_boolean_sparse.h \ + ../../modules/api_scilab/includes/api_pointer.h \ + ../../modules/api_scilab/includes/api_list.h \ + ../../modules/api_scilab/includes/api_error.h \ + ../../modules/api_scilab/includes/api_handle.h \ + ../../modules/api_scilab/includes/api_optional.h \ + ../../modules/core/includes/stack-optional.h \ + ../../modules/api_scilab/includes/api_hypermat.h \ + ../../modules/core/includes/core_math.h \ + ../../modules/core/includes/sci_types.h includes/gw_arnoldi.h \ + includes/dynlib_arnoldi.h \ + ../../modules/localization/includes/localization.h \ + ../../modules/core/includes/machine.h /usr/include/libintl.h \ + /usr/include/locale.h /usr/include/x86_64-linux-gnu/bits/locale.h \ + ../../modules/output_stream/includes/Scierror.h \ + ../../modules/output_stream/includes/do_error_number.h + +/usr/include/stdc-predef.h: + +/usr/include/math.h: + +/usr/include/features.h: + +/usr/include/x86_64-linux-gnu/sys/cdefs.h: + +/usr/include/x86_64-linux-gnu/bits/wordsize.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs-64.h: + +/usr/include/x86_64-linux-gnu/bits/math-vector.h: + +/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h: + +/usr/include/x86_64-linux-gnu/bits/huge_val.h: + +/usr/include/x86_64-linux-gnu/bits/huge_valf.h: + +/usr/include/x86_64-linux-gnu/bits/huge_vall.h: + +/usr/include/x86_64-linux-gnu/bits/inf.h: + +/usr/include/x86_64-linux-gnu/bits/nan.h: + +/usr/include/x86_64-linux-gnu/bits/mathdef.h: + +/usr/include/x86_64-linux-gnu/bits/mathcalls.h: + +/usr/include/x86_64-linux-gnu/bits/mathinline.h: + +/usr/include/string.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include/stddef.h: + +/usr/include/xlocale.h: + +/usr/include/x86_64-linux-gnu/bits/string.h: + +/usr/include/x86_64-linux-gnu/bits/string2.h: + +/usr/include/endian.h: + +/usr/include/x86_64-linux-gnu/bits/endian.h: + +/usr/include/x86_64-linux-gnu/bits/byteswap.h: + +/usr/include/x86_64-linux-gnu/bits/types.h: + +/usr/include/x86_64-linux-gnu/bits/typesizes.h: + +/usr/include/x86_64-linux-gnu/bits/byteswap-16.h: + +/usr/include/stdlib.h: + +/usr/include/x86_64-linux-gnu/bits/string3.h: + +../../modules/api_scilab/includes/api_scilab.h: + +../../modules/core/includes/stack-c.h: + +../../modules/core/includes/core_math.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/limits.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/syslimits.h: + +/usr/include/limits.h: + +/usr/include/x86_64-linux-gnu/bits/posix1_lim.h: + +/usr/include/x86_64-linux-gnu/bits/local_lim.h: + +/usr/include/linux/limits.h: + +/usr/include/x86_64-linux-gnu/bits/posix2_lim.h: + +/usr/include/x86_64-linux-gnu/bits/waitflags.h: + +/usr/include/x86_64-linux-gnu/bits/waitstatus.h: + +/usr/include/x86_64-linux-gnu/sys/types.h: + +/usr/include/time.h: + +/usr/include/x86_64-linux-gnu/sys/select.h: + +/usr/include/x86_64-linux-gnu/bits/select.h: + +/usr/include/x86_64-linux-gnu/bits/sigset.h: + +/usr/include/x86_64-linux-gnu/bits/time.h: + +/usr/include/x86_64-linux-gnu/bits/select2.h: + +/usr/include/x86_64-linux-gnu/sys/sysmacros.h: + +/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h: + +/usr/include/alloca.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib-float.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib.h: + +../../modules/core/includes/stack-def.h: + +../../modules/core/includes/machine.h: + +../../modules/core/includes/stackTypeVariable.h: + +../../modules/core/includes/BOOL.h: + +../../modules/core/includes/doublecomplex.h: + +../../modules/core/includes/stack1.h: + +../../modules/core/includes/scisparse.h: + +../../modules/core/includes/stack2.h: + +../../modules/core/includes/stack3.h: + +../../modules/core/includes/stack-optional.h: + +../../modules/core/includes/sci_types.h: + +../../modules/api_scilab/includes/api_common.h: + +../../modules/api_scilab/includes/api_scilab.h: + +../../modules/api_scilab/includes/api_double.h: + +../../modules/core/includes/doublecomplex.h: + +../../modules/api_scilab/includes/api_string.h: + +/usr/include/wchar.h: + +/usr/include/stdio.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h: + +/usr/include/x86_64-linux-gnu/bits/wchar.h: + +/usr/include/x86_64-linux-gnu/bits/wchar2.h: + +../../modules/api_scilab/includes/api_int.h: + +../../modules/api_scilab/includes/api_poly.h: + +../../modules/api_scilab/includes/api_sparse.h: + +../../modules/api_scilab/includes/api_boolean.h: + +../../modules/api_scilab/includes/api_boolean_sparse.h: + +../../modules/api_scilab/includes/api_pointer.h: + +../../modules/api_scilab/includes/api_list.h: + +../../modules/api_scilab/includes/api_error.h: + +../../modules/api_scilab/includes/api_handle.h: + +../../modules/api_scilab/includes/api_optional.h: + +../../modules/core/includes/stack-optional.h: + +../../modules/api_scilab/includes/api_hypermat.h: + +../../modules/core/includes/core_math.h: + +../../modules/core/includes/sci_types.h: + +includes/gw_arnoldi.h: + +includes/dynlib_arnoldi.h: + +../../modules/localization/includes/localization.h: + +../../modules/core/includes/machine.h: + +/usr/include/libintl.h: + +/usr/include/locale.h: + +/usr/include/x86_64-linux-gnu/bits/locale.h: + +../../modules/output_stream/includes/Scierror.h: + +../../modules/output_stream/includes/do_error_number.h: diff --git a/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_zneupd.Plo b/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_zneupd.Plo new file mode 100755 index 000000000..186c546ef --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/.deps/libsciarnoldi_la-sci_zneupd.Plo @@ -0,0 +1,284 @@ +sci_gateway/c/libsciarnoldi_la-sci_zneupd.lo: sci_gateway/c/sci_zneupd.c \ + /usr/include/stdc-predef.h /usr/include/math.h /usr/include/features.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/bits/math-vector.h \ + /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \ + /usr/include/x86_64-linux-gnu/bits/huge_val.h \ + /usr/include/x86_64-linux-gnu/bits/huge_valf.h \ + /usr/include/x86_64-linux-gnu/bits/huge_vall.h \ + /usr/include/x86_64-linux-gnu/bits/inf.h \ + /usr/include/x86_64-linux-gnu/bits/nan.h \ + /usr/include/x86_64-linux-gnu/bits/mathdef.h \ + /usr/include/x86_64-linux-gnu/bits/mathcalls.h \ + /usr/include/x86_64-linux-gnu/bits/mathinline.h /usr/include/string.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include/stddef.h /usr/include/xlocale.h \ + /usr/include/x86_64-linux-gnu/bits/string.h \ + /usr/include/x86_64-linux-gnu/bits/string2.h /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap-16.h /usr/include/stdlib.h \ + /usr/include/x86_64-linux-gnu/bits/string3.h \ + ../../modules/api_scilab/includes/api_scilab.h \ + ../../modules/core/includes/stack-c.h \ + ../../modules/core/includes/core_math.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/limits.h \ + /usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/syslimits.h \ + /usr/include/limits.h /usr/include/x86_64-linux-gnu/bits/posix1_lim.h \ + /usr/include/x86_64-linux-gnu/bits/local_lim.h \ + /usr/include/linux/limits.h \ + /usr/include/x86_64-linux-gnu/bits/posix2_lim.h \ + /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ + /usr/include/x86_64-linux-gnu/sys/types.h /usr/include/time.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/sigset.h \ + /usr/include/x86_64-linux-gnu/bits/time.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/sys/sysmacros.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h \ + ../../modules/core/includes/stack-def.h \ + ../../modules/core/includes/machine.h \ + ../../modules/core/includes/stackTypeVariable.h \ + ../../modules/core/includes/BOOL.h \ + ../../modules/core/includes/doublecomplex.h \ + ../../modules/core/includes/stack1.h \ + ../../modules/core/includes/scisparse.h \ + ../../modules/core/includes/stack2.h \ + ../../modules/core/includes/stack3.h \ + ../../modules/core/includes/stack-optional.h \ + ../../modules/core/includes/sci_types.h \ + ../../modules/api_scilab/includes/api_common.h \ + ../../modules/api_scilab/includes/api_scilab.h \ + ../../modules/api_scilab/includes/api_double.h \ + ../../modules/core/includes/doublecomplex.h \ + ../../modules/api_scilab/includes/api_string.h /usr/include/wchar.h \ + /usr/include/stdio.h /usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/wchar2.h \ + ../../modules/api_scilab/includes/api_int.h \ + ../../modules/api_scilab/includes/api_poly.h \ + ../../modules/api_scilab/includes/api_sparse.h \ + ../../modules/api_scilab/includes/api_boolean.h \ + ../../modules/api_scilab/includes/api_boolean_sparse.h \ + ../../modules/api_scilab/includes/api_pointer.h \ + ../../modules/api_scilab/includes/api_list.h \ + ../../modules/api_scilab/includes/api_error.h \ + ../../modules/api_scilab/includes/api_handle.h \ + ../../modules/api_scilab/includes/api_optional.h \ + ../../modules/core/includes/stack-optional.h \ + ../../modules/api_scilab/includes/api_hypermat.h \ + ../../modules/core/includes/core_math.h \ + ../../modules/core/includes/sci_types.h includes/gw_arnoldi.h \ + includes/dynlib_arnoldi.h \ + ../../modules/localization/includes/localization.h \ + ../../modules/core/includes/machine.h /usr/include/libintl.h \ + /usr/include/locale.h /usr/include/x86_64-linux-gnu/bits/locale.h \ + ../../modules/output_stream/includes/Scierror.h \ + ../../modules/output_stream/includes/do_error_number.h + +/usr/include/stdc-predef.h: + +/usr/include/math.h: + +/usr/include/features.h: + +/usr/include/x86_64-linux-gnu/sys/cdefs.h: + +/usr/include/x86_64-linux-gnu/bits/wordsize.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs-64.h: + +/usr/include/x86_64-linux-gnu/bits/math-vector.h: + +/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h: + +/usr/include/x86_64-linux-gnu/bits/huge_val.h: + +/usr/include/x86_64-linux-gnu/bits/huge_valf.h: + +/usr/include/x86_64-linux-gnu/bits/huge_vall.h: + +/usr/include/x86_64-linux-gnu/bits/inf.h: + +/usr/include/x86_64-linux-gnu/bits/nan.h: + +/usr/include/x86_64-linux-gnu/bits/mathdef.h: + +/usr/include/x86_64-linux-gnu/bits/mathcalls.h: + +/usr/include/x86_64-linux-gnu/bits/mathinline.h: + +/usr/include/string.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include/stddef.h: + +/usr/include/xlocale.h: + +/usr/include/x86_64-linux-gnu/bits/string.h: + +/usr/include/x86_64-linux-gnu/bits/string2.h: + +/usr/include/endian.h: + +/usr/include/x86_64-linux-gnu/bits/endian.h: + +/usr/include/x86_64-linux-gnu/bits/byteswap.h: + +/usr/include/x86_64-linux-gnu/bits/types.h: + +/usr/include/x86_64-linux-gnu/bits/typesizes.h: + +/usr/include/x86_64-linux-gnu/bits/byteswap-16.h: + +/usr/include/stdlib.h: + +/usr/include/x86_64-linux-gnu/bits/string3.h: + +../../modules/api_scilab/includes/api_scilab.h: + +../../modules/core/includes/stack-c.h: + +../../modules/core/includes/core_math.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/limits.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed/syslimits.h: + +/usr/include/limits.h: + +/usr/include/x86_64-linux-gnu/bits/posix1_lim.h: + +/usr/include/x86_64-linux-gnu/bits/local_lim.h: + +/usr/include/linux/limits.h: + +/usr/include/x86_64-linux-gnu/bits/posix2_lim.h: + +/usr/include/x86_64-linux-gnu/bits/waitflags.h: + +/usr/include/x86_64-linux-gnu/bits/waitstatus.h: + +/usr/include/x86_64-linux-gnu/sys/types.h: + +/usr/include/time.h: + +/usr/include/x86_64-linux-gnu/sys/select.h: + +/usr/include/x86_64-linux-gnu/bits/select.h: + +/usr/include/x86_64-linux-gnu/bits/sigset.h: + +/usr/include/x86_64-linux-gnu/bits/time.h: + +/usr/include/x86_64-linux-gnu/bits/select2.h: + +/usr/include/x86_64-linux-gnu/sys/sysmacros.h: + +/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h: + +/usr/include/alloca.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib-float.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib.h: + +../../modules/core/includes/stack-def.h: + +../../modules/core/includes/machine.h: + +../../modules/core/includes/stackTypeVariable.h: + +../../modules/core/includes/BOOL.h: + +../../modules/core/includes/doublecomplex.h: + +../../modules/core/includes/stack1.h: + +../../modules/core/includes/scisparse.h: + +../../modules/core/includes/stack2.h: + +../../modules/core/includes/stack3.h: + +../../modules/core/includes/stack-optional.h: + +../../modules/core/includes/sci_types.h: + +../../modules/api_scilab/includes/api_common.h: + +../../modules/api_scilab/includes/api_scilab.h: + +../../modules/api_scilab/includes/api_double.h: + +../../modules/core/includes/doublecomplex.h: + +../../modules/api_scilab/includes/api_string.h: + +/usr/include/wchar.h: + +/usr/include/stdio.h: + +/usr/lib/gcc/x86_64-linux-gnu/5/include/stdarg.h: + +/usr/include/x86_64-linux-gnu/bits/wchar.h: + +/usr/include/x86_64-linux-gnu/bits/wchar2.h: + +../../modules/api_scilab/includes/api_int.h: + +../../modules/api_scilab/includes/api_poly.h: + +../../modules/api_scilab/includes/api_sparse.h: + +../../modules/api_scilab/includes/api_boolean.h: + +../../modules/api_scilab/includes/api_boolean_sparse.h: + +../../modules/api_scilab/includes/api_pointer.h: + +../../modules/api_scilab/includes/api_list.h: + +../../modules/api_scilab/includes/api_error.h: + +../../modules/api_scilab/includes/api_handle.h: + +../../modules/api_scilab/includes/api_optional.h: + +../../modules/core/includes/stack-optional.h: + +../../modules/api_scilab/includes/api_hypermat.h: + +../../modules/core/includes/core_math.h: + +../../modules/core/includes/sci_types.h: + +includes/gw_arnoldi.h: + +includes/dynlib_arnoldi.h: + +../../modules/localization/includes/localization.h: + +../../modules/core/includes/machine.h: + +/usr/include/libintl.h: + +/usr/include/locale.h: + +/usr/include/x86_64-linux-gnu/bits/locale.h: + +../../modules/output_stream/includes/Scierror.h: + +../../modules/output_stream/includes/do_error_number.h: diff --git a/modules/arnoldi/sci_gateway/c/.dirstamp b/modules/arnoldi/sci_gateway/c/.dirstamp new file mode 100755 index 000000000..e69de29bb --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/.dirstamp diff --git a/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-gw_arnoldi.o b/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-gw_arnoldi.o Binary files differnew file mode 100755 index 000000000..1812098de --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-gw_arnoldi.o diff --git a/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_dnaupd.o b/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_dnaupd.o Binary files differnew file mode 100755 index 000000000..305630bc4 --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_dnaupd.o diff --git a/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_dneupd.o b/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_dneupd.o Binary files differnew file mode 100755 index 000000000..b0893e97a --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_dneupd.o diff --git a/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_dsaupd.o b/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_dsaupd.o Binary files differnew file mode 100755 index 000000000..a8565b2d9 --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_dsaupd.o diff --git a/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_dseupd.o b/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_dseupd.o Binary files differnew file mode 100755 index 000000000..9856e4a18 --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_dseupd.o diff --git a/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_eigs.o b/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_eigs.o Binary files differnew file mode 100755 index 000000000..5414ca9fb --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_eigs.o diff --git a/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_znaupd.o b/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_znaupd.o Binary files differnew file mode 100755 index 000000000..f47ec9c91 --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_znaupd.o diff --git a/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_zneupd.o b/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_zneupd.o Binary files differnew file mode 100755 index 000000000..c4c66ab43 --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/.libs/libsciarnoldi_la-sci_zneupd.o diff --git a/modules/arnoldi/sci_gateway/c/gw_arnoldi.c b/modules/arnoldi/sci_gateway/c/gw_arnoldi.c new file mode 100755 index 000000000..9e127cecb --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/gw_arnoldi.c @@ -0,0 +1,48 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2006-2008 - INRIA - Allan CORNET + * + * 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.1-en.txt + * + */ + +/*--------------------------------------------------------------------------*/ +#include <math.h> +#include <string.h> +/*--------------------------------------------------------------------------*/ +#include "gw_arnoldi.h" +#include "api_scilab.h" +#include "MALLOC.h" +#include "callFunctionFromGateway.h" +/*--------------------------------------------------------------------------*/ +static gw_generic_table Tab[] = +{ + {sci_dsaupd, "dsaupd"}, + {sci_dnaupd, "dnaupd"}, + {sci_znaupd, "znaupd"}, + {sci_dseupd, "dseupd"}, + {sci_dneupd, "dneupd"}, + {sci_zneupd, "zneupd"}, + {sci_eigs, "%_eigs"} +}; +/*--------------------------------------------------------------------------*/ +int gw_arnoldi(void) +{ + Rhs = Max(0, Rhs); + + if (pvApiCtx == NULL) + { + pvApiCtx = (StrCtx*)MALLOC(sizeof(StrCtx)); + } + + pvApiCtx->pstName = (char*)Tab[Fin - 1].name; + callFunctionFromGateway(Tab, SIZE_CURRENT_GENERIC_TABLE(Tab)); + return 0; +} +/*--------------------------------------------------------------------------*/ + + diff --git a/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-gw_arnoldi.lo b/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-gw_arnoldi.lo new file mode 100755 index 000000000..c7f37eef2 --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-gw_arnoldi.lo @@ -0,0 +1,12 @@ +# sci_gateway/c/libsciarnoldi_la-gw_arnoldi.lo - a libtool object file +# Generated by libtool (GNU libtool) 2.4.2 +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# Name of the PIC object. +pic_object='.libs/libsciarnoldi_la-gw_arnoldi.o' + +# Name of the non-PIC object +non_pic_object=none + diff --git a/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_dnaupd.lo b/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_dnaupd.lo new file mode 100755 index 000000000..032579505 --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_dnaupd.lo @@ -0,0 +1,12 @@ +# sci_gateway/c/libsciarnoldi_la-sci_dnaupd.lo - a libtool object file +# Generated by libtool (GNU libtool) 2.4.2 +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# Name of the PIC object. +pic_object='.libs/libsciarnoldi_la-sci_dnaupd.o' + +# Name of the non-PIC object +non_pic_object=none + diff --git a/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_dneupd.lo b/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_dneupd.lo new file mode 100755 index 000000000..06ac154ad --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_dneupd.lo @@ -0,0 +1,12 @@ +# sci_gateway/c/libsciarnoldi_la-sci_dneupd.lo - a libtool object file +# Generated by libtool (GNU libtool) 2.4.2 +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# Name of the PIC object. +pic_object='.libs/libsciarnoldi_la-sci_dneupd.o' + +# Name of the non-PIC object +non_pic_object=none + diff --git a/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_dsaupd.lo b/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_dsaupd.lo new file mode 100755 index 000000000..f675787db --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_dsaupd.lo @@ -0,0 +1,12 @@ +# sci_gateway/c/libsciarnoldi_la-sci_dsaupd.lo - a libtool object file +# Generated by libtool (GNU libtool) 2.4.2 +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# Name of the PIC object. +pic_object='.libs/libsciarnoldi_la-sci_dsaupd.o' + +# Name of the non-PIC object +non_pic_object=none + diff --git a/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_dseupd.lo b/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_dseupd.lo new file mode 100755 index 000000000..de36443f7 --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_dseupd.lo @@ -0,0 +1,12 @@ +# sci_gateway/c/libsciarnoldi_la-sci_dseupd.lo - a libtool object file +# Generated by libtool (GNU libtool) 2.4.2 +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# Name of the PIC object. +pic_object='.libs/libsciarnoldi_la-sci_dseupd.o' + +# Name of the non-PIC object +non_pic_object=none + diff --git a/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_eigs.lo b/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_eigs.lo new file mode 100755 index 000000000..0efe16762 --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_eigs.lo @@ -0,0 +1,12 @@ +# sci_gateway/c/libsciarnoldi_la-sci_eigs.lo - a libtool object file +# Generated by libtool (GNU libtool) 2.4.2 +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# Name of the PIC object. +pic_object='.libs/libsciarnoldi_la-sci_eigs.o' + +# Name of the non-PIC object +non_pic_object=none + diff --git a/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_znaupd.lo b/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_znaupd.lo new file mode 100755 index 000000000..78b7f23c0 --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_znaupd.lo @@ -0,0 +1,12 @@ +# sci_gateway/c/libsciarnoldi_la-sci_znaupd.lo - a libtool object file +# Generated by libtool (GNU libtool) 2.4.2 +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# Name of the PIC object. +pic_object='.libs/libsciarnoldi_la-sci_znaupd.o' + +# Name of the non-PIC object +non_pic_object=none + diff --git a/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_zneupd.lo b/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_zneupd.lo new file mode 100755 index 000000000..a66db7825 --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/libsciarnoldi_la-sci_zneupd.lo @@ -0,0 +1,12 @@ +# sci_gateway/c/libsciarnoldi_la-sci_zneupd.lo - a libtool object file +# Generated by libtool (GNU libtool) 2.4.2 +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# Name of the PIC object. +pic_object='.libs/libsciarnoldi_la-sci_zneupd.o' + +# Name of the non-PIC object +non_pic_object=none + diff --git a/modules/arnoldi/sci_gateway/c/sci_dnaupd.c b/modules/arnoldi/sci_gateway/c/sci_dnaupd.c new file mode 100755 index 000000000..7735d7cee --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/sci_dnaupd.c @@ -0,0 +1,395 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) ????-2008 - INRIA + * + * 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.1-en.txt + * + */ + +#include <math.h> +#include <string.h> +#include "api_scilab.h" +#include "core_math.h" +#include "gw_arnoldi.h" +#include "localization.h" +#include "Scierror.h" +/*--------------------------------------------------------------------------*/ +extern int C2F(dnaupd)(int *ido, char *bmat, int *n, char *which, int *nev, + double *tol, double *resid, int *ncv, double *v, + int *ldv, int *iparam, int *ipntr, double *workd, + double *workl, int *lworkl, int *info, + unsigned long bmat_len, unsigned long which_len); +/*--------------------------------------------------------------------------*/ +int sci_dnaupd(char *fname, unsigned long fname_len) +{ + SciErr sciErr; + + int* piAddrpIDO = NULL; + int* pIDO = NULL; + int* piAddrpBMAT = NULL; + char* pBMAT = NULL; + int* piAddrpN = NULL; + int* pN = NULL; + int* piAddrpWHICH = NULL; + char* pWHICH = NULL; + int* piAddrpNEV = NULL; + int* pNEV = NULL; + int* piAddrpTOL = NULL; + double* pTOL = NULL; + int* piAddrpRESID = NULL; + double* pRESID = NULL; + int* piAddrpNCV = NULL; + int* pNCV = NULL; + int* piAddrpV = NULL; + double* pV = NULL; + int* piAddrpIPARAM = NULL; + int* pIPARAM = NULL; + int* piAddrpIPNTR = NULL; + int* pIPNTR = NULL; + int* piAddrpWORKD = NULL; + double* pWORKD = NULL; + int* piAddrpWORKL = NULL; + double* pWORKL = NULL; + int* piAddrpINFO = NULL; + int* pINFO = NULL; + + int IDO, mIDO, nIDO; + int mBMAT, nBMAT; + int mN, nN; + int mWHICH, nWHICH; + int mNEV, nNEV; + int mTOL, nTOL; + int RESID, mRESID, nRESID; + int mNCV, nNCV; + int V, mV, nV; + int IPARAM, mIPARAM, nIPARAM; + int IPNTR, mIPNTR, nIPNTR; + int WORKD, mWORKD, nWORKD; + int WORKL, mWORKL, nWORKL; + int INFO, mINFO, nINFO; + + int minlhs = 1, minrhs = 14, maxlhs = 8, maxrhs = 14; + int LDV, LWORKL; + int sizeWORKL = 0; + + /* [IDO,RESID,V,IPARAM,IPNTR,WORKD,WORKL,INFO]=dnaupd... + (ID0,BMAT,N,WHICH,NEV,TOL,RESID,NCV,V,IPARAM,IPNTR,WORKD,WORKL,INFO) */ + + CheckInputArgument(pvApiCtx, minrhs, maxrhs); + CheckOutputArgument(pvApiCtx, minlhs, maxlhs); + + /* VARIABLE = NUMBER */ + sciErr = getVarAddressFromPosition(pvApiCtx, 1, &piAddrpIDO); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 1. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpIDO, &mIDO, &nIDO, &pIDO); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 1); + return 1; + } + + IDO = 1; + + sciErr = getVarAddressFromPosition(pvApiCtx, 3, &piAddrpN); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 3. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpN, &mN, &nN, &pN); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 3); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 5, &piAddrpNEV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 5. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpNEV, &mNEV, &nNEV, &pNEV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 5); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 6, &piAddrpTOL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 6. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpTOL, &mTOL, &nTOL, &pTOL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 6); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 7, &piAddrpRESID); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 7. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpRESID, &mRESID, &nRESID, &pRESID); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 7); + return 1; + } + + RESID = 7; + sciErr = getVarAddressFromPosition(pvApiCtx, 8, &piAddrpNCV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 8. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpNCV, &mNCV, &nNCV, &pNCV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 8); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 9, &piAddrpV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 9. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpV, &mV, &nV, &pV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 9); + return 1; + } + + V = 9; + sciErr = getVarAddressFromPosition(pvApiCtx, 10, &piAddrpIPARAM); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 10. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpIPARAM, &mIPARAM, &nIPARAM, &pIPARAM); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 10); + return 1; + } + + IPARAM = 10; + sciErr = getVarAddressFromPosition(pvApiCtx, 11, &piAddrpIPNTR); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 11. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpIPNTR, &mIPNTR, &nIPNTR, &pIPNTR); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 11); + return 1; + } + + IPNTR = 11; + sciErr = getVarAddressFromPosition(pvApiCtx, 12, &piAddrpWORKD); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 12. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpWORKD, &mWORKD, &nWORKD, &pWORKD); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 12); + return 1; + } + + WORKD = 12; + sciErr = getVarAddressFromPosition(pvApiCtx, 13, &piAddrpWORKL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 13. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpWORKL, &mWORKL, &nWORKL, &pWORKL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 13); + return 1; + } + + WORKL = 13; + sciErr = getVarAddressFromPosition(pvApiCtx, 14, &piAddrpINFO); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 14. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpINFO, &mINFO, &nINFO, &pINFO); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 14); + return 1; + } + + INFO = 14; + + LWORKL = mWORKL * nWORKL; + LDV = Max(1, pN[0]); + + /* Don't call dnaupd if ido == 99 */ + if (pIDO[0] == 99) + { + Scierror(999, _("%s: the computation is already terminated\n"), fname); + return 1; + } + + /* Check some sizes */ + if (mIPARAM*nIPARAM != 11) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "IPARAM", 11); + return 1; + } + + if (mIPNTR*nIPNTR != 14) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "IPNTR", 14); + return 1; + } + + if (mRESID*nRESID != pN[0]) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "RESID", *(int*)(pN)); + return 1; + } + + if ((mV != pN[0]) || (nV != pNCV[0])) + { + Scierror(999, _("%s: Wrong size for input argument %s: A matrix of size %dx%d expected.\n"), fname, "V", *(int*)(pN), *(int*)(pNCV)); + return 1; + } + + if (mWORKD * nWORKD < 3 * pN[0]) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "WORKD", 3 * *(int*)(pN)); + return 1; + } + + sizeWORKL = 3 * pNCV[0] * pNCV[0] + 6 * pNCV[0]; + + if (mWORKL * nWORKL < sizeWORKL) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "WORKL", sizeWORKL); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 2, &piAddrpBMAT); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 2. + if (getAllocatedSingleString(pvApiCtx, piAddrpBMAT, &pBMAT)) + { + Scierror(202, _("%s: Wrong type for argument #%d: A string expected.\n"), fname, 2); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 4, &piAddrpWHICH); + if (sciErr.iErr) + { + freeAllocatedSingleString(pBMAT); + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 4. + if (getAllocatedSingleString(pvApiCtx, piAddrpWHICH, &pWHICH)) + { + freeAllocatedSingleString(pBMAT); + Scierror(202, _("%s: Wrong type for argument #%d: A string expected.\n"), fname, 4); + return 1; + } + + C2F(dnaupd)(pIDO, pBMAT, pN, + pWHICH, pNEV, pTOL, + pRESID, pNCV, pV, &LDV, + pIPARAM, pIPNTR, pWORKD, + pWORKL, &LWORKL, pINFO, 1L, 2L); + + freeAllocatedSingleString(pBMAT); + freeAllocatedSingleString(pWHICH); + + if (*pINFO < 0) + { + C2F(errorinfo)("dnaupd", (int*)(pINFO), 6L); + return 0; + } + + AssignOutputVariable(pvApiCtx, 1) = IDO; + AssignOutputVariable(pvApiCtx, 2) = RESID; + AssignOutputVariable(pvApiCtx, 3) = V; + AssignOutputVariable(pvApiCtx, 4) = IPARAM; + AssignOutputVariable(pvApiCtx, 5) = IPNTR; + AssignOutputVariable(pvApiCtx, 6) = WORKD; + AssignOutputVariable(pvApiCtx, 7) = WORKL; + AssignOutputVariable(pvApiCtx, 8) = INFO; + + ReturnArguments(pvApiCtx); + + return 0; +} +/*--------------------------------------------------------------------------*/ diff --git a/modules/arnoldi/sci_gateway/c/sci_dneupd.c b/modules/arnoldi/sci_gateway/c/sci_dneupd.c new file mode 100755 index 000000000..aa70b9367 --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/sci_dneupd.c @@ -0,0 +1,579 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) ????-2008 - INRIA + * + * 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.1-en.txt + * + */ + +#include <math.h> +#include <string.h> +#include "api_scilab.h" +#include "core_math.h" +#include "gw_arnoldi.h" +#include "localization.h" +#include "Scierror.h" +/*--------------------------------------------------------------------------*/ +extern int C2F(dneupd)(int *rvec, char *howmny, int *select, double *dr, + double *di, double *z, int *ldz, double *sigmar, + double *sigmai, double *workev, char *bmat, int *n, + char *which, int *nev, double *tol, double *resid, + int *ncv, double *v, int *ldv, int *iparam, int *ipntr, + double *workd, double *workl, int *lworkl, int *info); +/*--------------------------------------------------------------------------*/ +int sci_dneupd(char *fname, unsigned long fname_len) +{ + SciErr sciErr; + + int* piAddrpRVEC = NULL; + int* pRVEC = NULL; + int* piAddrpHOWMANY = NULL; + char* pHOWMANY = NULL; + int* piAddrpSELECT = NULL; + int* pSELECT = NULL; + int* piAddrpDr = NULL; + double* pDr = NULL; + int* piAddrpDi = NULL; + double* pDi = NULL; + int* piAddrpZ = NULL; + double* pZ = NULL; + int* piAddrpSIGMAr = NULL; + double* pSIGMAr = NULL; + int* piAddrpSIGMAi = NULL; + double* pSIGMAi = NULL; + int* piAddrpWORKev = NULL; + double* pWORKev = NULL; + int* piAddrpBMAT = NULL; + char* pBMAT = NULL; + int* piAddrpN = NULL; + int* pN = NULL; + int* piAddrpWHICH = NULL; + char* pWHICH = NULL; + int* piAddrpNEV = NULL; + int* pNEV = NULL; + int* piAddrpTOL = NULL; + double* pTOL = NULL; + int* piAddrpRESID = NULL; + double* pRESID = NULL; + int* piAddrpNCV = NULL; + int* pNCV = NULL; + int* piAddrpV = NULL; + double* pV = NULL; + int* piAddrpIPARAM = NULL; + int* pIPARAM = NULL; + int* piAddrpIPNTR = NULL; + int* pIPNTR = NULL; + int* piAddrpWORKD = NULL; + double* pWORKD = NULL; + int* piAddrpWORKL = NULL; + double* pWORKL = NULL; + int* piAddrpINFO = NULL; + int* pINFO = NULL; + + int mRVEC, nRVEC; + int mHOWMANY, nHOWMANY; + int mSELECT, nSELECT; + int Dr, mDr, nDr; + int Di, mDi, nDi; + int Z, mZ, nZ; + int mSIGMAr, nSIGMAr; + int mSIGMAi, nSIGMAi; + int mWORKev, nWORKev; + int mBMAT, nBMAT; + int mN, nN; + int mWHICH, nWHICH; + int mNEV, nNEV; + int mTOL, nTOL; + int RESID, mRESID, nRESID; + int mNCV, nNCV; + int V, mV, nV; + int IPARAM, mIPARAM, nIPARAM; + int IPNTR, mIPNTR, nIPNTR; + int WORKD, mWORKD, nWORKD; + int WORKL, mWORKL, nWORKL; + int INFO, mINFO, nINFO; + + int minlhs = 1, minrhs = 22, maxlhs = 10, maxrhs = 22; + int LDZ, LDV, LWORKL; + int sizeWORKL = 0; + + CheckInputArgument(pvApiCtx, minrhs, maxrhs); + CheckOutputArgument(pvApiCtx, minlhs, maxlhs); + + /* VARIABLE = NUMBER */ + sciErr = getVarAddressFromPosition(pvApiCtx, 1, &piAddrpRVEC); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 1. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpRVEC, &mRVEC, &nRVEC, &pRVEC); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 1); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 3, &piAddrpSELECT); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 3. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpSELECT, &mSELECT, &nSELECT, &pSELECT); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 3); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 4, &piAddrpDr); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 4. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpDr, &mDr, &nDr, &pDr); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 4); + return 1; + } + + Dr = 4; + sciErr = getVarAddressFromPosition(pvApiCtx, 5, &piAddrpDi); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 5. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpDi, &mDi, &nDi, &pDi); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 5); + return 1; + } + + Di = 5; + sciErr = getVarAddressFromPosition(pvApiCtx, 6, &piAddrpZ); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 6. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpZ, &mZ, &nZ, &pZ); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 6); + return 1; + } + + Z = 6; + sciErr = getVarAddressFromPosition(pvApiCtx, 7, &piAddrpSIGMAr); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 7. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpSIGMAr, &mSIGMAr, &nSIGMAr, &pSIGMAr); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 7); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 8, &piAddrpSIGMAi); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 8. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpSIGMAi, &mSIGMAi, &nSIGMAi, &pSIGMAi); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 8); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 9, &piAddrpWORKev); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 9. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpWORKev, &mWORKev, &nWORKev, &pWORKev); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 9); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 11, &piAddrpN); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 11. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpN, &mN, &nN, &pN); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 11); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 13, &piAddrpNEV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 13. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpNEV, &mNEV, &nNEV, &pNEV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 13); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 14, &piAddrpTOL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 14. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpTOL, &mTOL, &nTOL, &pTOL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 14); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 15, &piAddrpRESID); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 15. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpRESID, &mRESID, &nRESID, &pRESID); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 15); + return 1; + } + + RESID = 15; + sciErr = getVarAddressFromPosition(pvApiCtx, 16, &piAddrpNCV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 16. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpNCV, &mNCV, &nNCV, &pNCV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 16); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 17, &piAddrpV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 17. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpV, &mV, &nV, &pV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 17); + return 1; + } + + V = 17; + sciErr = getVarAddressFromPosition(pvApiCtx, 18, &piAddrpIPARAM); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 18. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpIPARAM, &mIPARAM, &nIPARAM, &pIPARAM); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 18); + return 1; + } + + IPARAM = 18; + sciErr = getVarAddressFromPosition(pvApiCtx, 19, &piAddrpIPNTR); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 19. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpIPNTR, &mIPNTR, &nIPNTR, &pIPNTR); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 19); + return 1; + } + + IPNTR = 19; + sciErr = getVarAddressFromPosition(pvApiCtx, 20, &piAddrpWORKD); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 20. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpWORKD, &mWORKD, &nWORKD, &pWORKD); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 20); + return 1; + } + + WORKD = 20; + sciErr = getVarAddressFromPosition(pvApiCtx, 21, &piAddrpWORKL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 21. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpWORKL, &mWORKL, &nWORKL, &pWORKL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 21); + return 1; + } + + WORKL = 21; + sciErr = getVarAddressFromPosition(pvApiCtx, 22, &piAddrpINFO); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 22. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpINFO, &mINFO, &nINFO, &pINFO); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 22); + return 1; + } + + INFO = 22; + + LWORKL = mWORKL * nWORKL; + LDV = Max(1, *(int*)(pN)); + LDZ = LDV; + + /* Check some sizes */ + if (mIPARAM*nIPARAM != 11) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "IPARAM", 11); + return 0; + } + + if (mIPNTR*nIPNTR != 14) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "IPNTR", 14); + return 0; + } + + if (mRESID*nRESID != *(int*)(pN)) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "RESID", *(int*)(pN)); + return 0; + } + + if (mWORKD * nWORKD < 3 * *(int*)(pN)) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "WORKD", 3 * *(int*)(pN)); + return 0; + } + + if (mSELECT*nSELECT != *(int*)(pNCV)) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "SELECT", *(int*)(pNCV)); + return 0; + } + + if (mDr*nDr != (*(int*)(pNEV) + 1)) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "Dr", *(int*)(pNEV) + 1); + return 0; + } + + if (mDi*nDi != (*(int*)(pNEV) + 1)) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "Di", *(int*)(pNEV) + 1); + return 0; + } + + if ((mZ != *(int*)(pN)) || (nZ != *(int*)(pNEV) + 1)) + { + Scierror(999, _("%s: Wrong size for input argument %s: A matrix of size %dx%d expected.\n"), fname, "Z", *(int*)(pN), *(int*)(pNEV) + 1); + return 0; + } + + if (mWORKev*nWORKev != 3 * *(int*)(pNCV)) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "WORKev", 3 * *(int*)(pNCV)); + return 0; + } + + if ((mV != *(int*)(pN)) || (nV != *(int*)(pNCV))) + { + Scierror(999, _("%s: Wrong size for input argument %s: A matrix of size %dx%d expected.\n"), fname, "V", *(int*)(pN), *(int*)(pNCV)); + return 0; + } + + sizeWORKL = 3 * *(int*)(pNCV) * *(int*)(pNCV) + 6 * *(int*)(pNCV); + + if ((mWORKL * nWORKL < sizeWORKL)) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "WORKL", sizeWORKL); + return 0; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 2, &piAddrpHOWMANY); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 2. + if (getAllocatedSingleString(pvApiCtx, piAddrpHOWMANY, &pHOWMANY)) + { + Scierror(202, _("%s: Wrong type for argument #%d: A string expected.\n"), fname, 2); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 10, &piAddrpBMAT); + if (sciErr.iErr) + { + freeAllocatedSingleString(pHOWMANY); + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 10. + if (getAllocatedSingleString(pvApiCtx, piAddrpBMAT, &pBMAT)) + { + freeAllocatedSingleString(pHOWMANY); + Scierror(202, _("%s: Wrong type for argument #%d: A string expected.\n"), fname, 10); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 12, &piAddrpWHICH); + if (sciErr.iErr) + { + freeAllocatedSingleString(pHOWMANY); + freeAllocatedSingleString(pBMAT); + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 12. + if (getAllocatedSingleString(pvApiCtx, piAddrpWHICH, &pWHICH)) + { + freeAllocatedSingleString(pHOWMANY); + freeAllocatedSingleString(pBMAT); + Scierror(202, _("%s: Wrong type for argument #%d: A string expected.\n"), fname, 12); + return 1; + } + + C2F(dneupd)(pRVEC, pHOWMANY, pSELECT, + pDr, pDi, pZ, &LDZ, + pSIGMAr, pSIGMAi, pWORKev, + pBMAT, pN, pWHICH, + pNEV, pTOL, pRESID, + pNCV, pV, &LDV, + pIPARAM, pIPNTR, + pWORKD, pWORKL, &LWORKL, + pINFO); + + freeAllocatedSingleString(pHOWMANY); + freeAllocatedSingleString(pBMAT); + freeAllocatedSingleString(pWHICH); + + if (pINFO[0] < 0) + { + C2F(errorinfo)("dneupd", (int*)(pINFO), 6L); + return 0; + } + + AssignOutputVariable(pvApiCtx, 1) = Dr; + AssignOutputVariable(pvApiCtx, 2) = Di; + AssignOutputVariable(pvApiCtx, 3) = Z; + AssignOutputVariable(pvApiCtx, 4) = RESID; + AssignOutputVariable(pvApiCtx, 5) = V; + AssignOutputVariable(pvApiCtx, 6) = IPARAM; + AssignOutputVariable(pvApiCtx, 7) = IPNTR; + AssignOutputVariable(pvApiCtx, 8) = WORKD; + AssignOutputVariable(pvApiCtx, 9) = WORKL; + AssignOutputVariable(pvApiCtx, 10) = INFO; + + ReturnArguments(pvApiCtx); + + return 0; +} +/*--------------------------------------------------------------------------*/ diff --git a/modules/arnoldi/sci_gateway/c/sci_dsaupd.c b/modules/arnoldi/sci_gateway/c/sci_dsaupd.c new file mode 100755 index 000000000..c707950ce --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/sci_dsaupd.c @@ -0,0 +1,395 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) ????-2008 - INRIA + * + * 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.1-en.txt + * + */ + +#include <math.h> +#include <string.h> +#include "api_scilab.h" +#include "core_math.h" +#include "gw_arnoldi.h" +#include "localization.h" +#include "Scierror.h" +/*--------------------------------------------------------------------------*/ +extern int C2F(dsaupd)(int *ido, char *bmat, int *n, char *which, int *nev, + double *tol, double *resid, int *ncv, double *v, + int *ldv, int *iparam, int *ipntr, double *workd, + double *workl, int *lworkl, int *info); +/*--------------------------------------------------------------------------*/ +int sci_dsaupd(char *fname, unsigned long fname_len) +{ + SciErr sciErr; + + int* piAddrpIDO = NULL; + int* pIDO = NULL; + int* piAddrpBMAT = NULL; + char* pBMAT = NULL; + int* piAddrpN = NULL; + int* pN = NULL; + int* piAddrpWHICH = NULL; + char* pWHICH = NULL; + int* piAddrpNEV = NULL; + int* pNEV = NULL; + int* piAddrpTOL = NULL; + double* pTOL = NULL; + int* piAddrpRESID = NULL; + double* pRESID = NULL; + int* piAddrpNCV = NULL; + int* pNCV = NULL; + int* piAddrpV = NULL; + double* pV = NULL; + int* piAddrpIPARAM = NULL; + int* pIPARAM = NULL; + int* piAddrpIPNTR = NULL; + int* pIPNTR = NULL; + int* piAddrpWORKD = NULL; + double* pWORKD = NULL; + int* piAddrpWORKL = NULL; + double* pWORKL = NULL; + int* piAddrpINFO = NULL; + int* pINFO = NULL; + + int IDO, mIDO, nIDO; + int mBMAT, nBMAT; + int mN, nN; + int mWHICH, nWHICH; + int mNEV, nNEV; + int mTOL, nTOL; + int RESID, mRESID, nRESID; + int mNCV, nNCV; + int V, mV, nV; + int IPARAM, mIPARAM, nIPARAM; + int IPNTR, mIPNTR, nIPNTR; + int WORKD, mWORKD, nWORKD; + int WORKL, mWORKL, nWORKL; + int INFO, mINFO, nINFO; + + int minlhs = 1, minrhs = 14, maxlhs = 8, maxrhs = 14; + int LDV, LWORKL; + int sizeWORKL = 0; + + /* [IDO,RESID,V,IPARAM,IPNTR,WORKD,WORKL,INFO]=dsaupd... + (ID0,BMAT,N,WHICH,NEV,TOL,RESID,NCV,V,IPARAM,IPNTR,WORKD,WORKL,INFO) */ + + CheckInputArgument(pvApiCtx, minrhs, maxrhs); + CheckOutputArgument(pvApiCtx, minlhs, maxlhs); + + /* VARIABLE = NUMBER */ + sciErr = getVarAddressFromPosition(pvApiCtx, 1, &piAddrpIDO); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 1. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpIDO, &mIDO, &nIDO, &pIDO); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 1); + return 1; + } + + IDO = 1; + + sciErr = getVarAddressFromPosition(pvApiCtx, 3, &piAddrpN); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 3. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpN, &mN, &nN, &pN); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 3); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 5, &piAddrpNEV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 5. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpNEV, &mNEV, &nNEV, &pNEV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 5); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 6, &piAddrpTOL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 6. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpTOL, &mTOL, &nTOL, &pTOL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 6); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 7, &piAddrpRESID); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 7. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpRESID, &mRESID, &nRESID, &pRESID); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 7); + return 1; + } + + RESID = 7; + sciErr = getVarAddressFromPosition(pvApiCtx, 8, &piAddrpNCV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 8. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpNCV, &mNCV, &nNCV, &pNCV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 8); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 9, &piAddrpV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 9. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpV, &mV, &nV, &pV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 9); + return 1; + } + + V = 9; + sciErr = getVarAddressFromPosition(pvApiCtx, 10, &piAddrpIPARAM); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 10. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpIPARAM, &mIPARAM, &nIPARAM, &pIPARAM); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 10); + return 1; + } + + IPARAM = 10; + sciErr = getVarAddressFromPosition(pvApiCtx, 11, &piAddrpIPNTR); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 11. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpIPNTR, &mIPNTR, &nIPNTR, &pIPNTR); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 11); + return 1; + } + + IPNTR = 11; + sciErr = getVarAddressFromPosition(pvApiCtx, 12, &piAddrpWORKD); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 12. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpWORKD, &mWORKD, &nWORKD, &pWORKD); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 12); + return 1; + } + + WORKD = 12; + sciErr = getVarAddressFromPosition(pvApiCtx, 13, &piAddrpWORKL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 13. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpWORKL, &mWORKL, &nWORKL, &pWORKL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 13); + return 1; + } + + WORKL = 13; + sciErr = getVarAddressFromPosition(pvApiCtx, 14, &piAddrpINFO); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 14. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpINFO, &mINFO, &nINFO, &pINFO); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 14); + return 1; + } + + INFO = 14; + + LWORKL = mWORKL * nWORKL; + LDV = Max(1, pN[0]); + + /* Don't call dnaupd if ido == 99 */ + if (pIDO[0] == 99) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname); + return 1; + } + + /* Check some sizes */ + if (mIPARAM*nIPARAM != 11) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "IPARAM", 11); + return 1; + } + + if (mIPNTR*nIPNTR != 14) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "IPNTR", 14); + return 1; + } + + if (mRESID*nRESID != pN[0]) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "RESID", pN[0]); + return 1; + } + + if ((mV != pN[0]) || (nV != pNCV[0])) + { + Scierror(999, _("%s: Wrong size for input argument %s: A matrix of size %dx%d expected.\n"), fname, "V", pN[0], pNCV[0]); + return 1; + } + + if (mWORKD * nWORKD < 3 * pN[0]) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "WORKD", 3 * pN[0]); + return 1; + } + + sizeWORKL = pNCV[0] * pNCV[0] + 8 * pNCV[0]; + + if (mWORKL * nWORKL < sizeWORKL) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "WORKL", sizeWORKL); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 2, &piAddrpBMAT); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 2. + if (getAllocatedSingleString(pvApiCtx, piAddrpBMAT, &pBMAT)) + { + Scierror(202, _("%s: Wrong type for argument #%d: A string expected.\n"), fname, 2); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 4, &piAddrpWHICH); + if (sciErr.iErr) + { + freeAllocatedSingleString(pBMAT); + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 4. + if (getAllocatedSingleString(pvApiCtx, piAddrpWHICH, &pWHICH)) + { + freeAllocatedSingleString(pBMAT); + Scierror(202, _("%s: Wrong type for argument #%d: A string expected.\n"), fname, 4); + return 1; + } + + + C2F(dsaupd)(pIDO, pBMAT, pN, + pWHICH, pNEV, pTOL, + pRESID, pNCV, pV, &LDV, + pIPARAM, pIPNTR, pWORKD, + pWORKL, &LWORKL, pINFO); + + freeAllocatedSingleString(pBMAT); + freeAllocatedSingleString(pWHICH); + + if (pINFO[0] < 0) + { + C2F(errorinfo)("dsaupd", (int*)(pINFO), 6L); + return 0; + } + + AssignOutputVariable(pvApiCtx, 1) = IDO; + AssignOutputVariable(pvApiCtx, 2) = RESID; + AssignOutputVariable(pvApiCtx, 3) = V; + AssignOutputVariable(pvApiCtx, 4) = IPARAM; + AssignOutputVariable(pvApiCtx, 5) = IPNTR; + AssignOutputVariable(pvApiCtx, 6) = WORKD; + AssignOutputVariable(pvApiCtx, 7) = WORKL; + AssignOutputVariable(pvApiCtx, 8) = INFO; + + ReturnArguments(pvApiCtx); + + return 0; +} +/*--------------------------------------------------------------------------*/ diff --git a/modules/arnoldi/sci_gateway/c/sci_dseupd.c b/modules/arnoldi/sci_gateway/c/sci_dseupd.c new file mode 100755 index 000000000..ed316d83c --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/sci_dseupd.c @@ -0,0 +1,514 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) ????-2008 - INRIA + * + * 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.1-en.txt + * + */ + +#include <math.h> +#include <string.h> +#include "api_scilab.h" +#include "core_math.h" +#include "gw_arnoldi.h" +#include "localization.h" +#include "Scierror.h" +/*--------------------------------------------------------------------------*/ +extern int C2F(dseupd)(int *rvec, char *howmny, int *select, double *d, + double *z, int *ldz, double *sigma, char *bmat, + int *n, char *which, int *nev , double *tol, + double *resid, int *ncv, double *v , int *ldv, + int *iparam, int *ipntr, double *workd, double *workl, + int *lworkl, int *info, unsigned long rvec_length, + unsigned long howmany_length, + unsigned long bmat_length, unsigned long which_len); +/*--------------------------------------------------------------------------*/ +int sci_dseupd(char *fname, unsigned long fname_len) +{ + SciErr sciErr; + + int* piAddrpRVEC = NULL; + int* pRVEC = NULL; + int* piAddrpHOWMANY = NULL; + char* pHOWMANY = NULL; + int* piAddrpSELECT = NULL; + int* pSELECT = NULL; + int* piAddrpD = NULL; + double* pD = NULL; + int* piAddrpZ = NULL; + double* pZ = NULL; + int* piAddrpSIGMA = NULL; + double* pSIGMA = NULL; + int* piAddrpBMAT = NULL; + char* pBMAT = NULL; + int* piAddrpN = NULL; + int* pN = NULL; + int* piAddrpWHICH = NULL; + char* pWHICH = NULL; + int* piAddrpNEV = NULL; + int* pNEV = NULL; + int* piAddrpTOL = NULL; + double* pTOL = NULL; + int* piAddrpRESID = NULL; + double* pRESID = NULL; + int* piAddrpNCV = NULL; + int* pNCV = NULL; + int* piAddrpV = NULL; + double* pV = NULL; + int* piAddrpIPARAM = NULL; + int* pIPARAM = NULL; + int* piAddrpIPNTR = NULL; + int* pIPNTR = NULL; + int* piAddrpWORKD = NULL; + double* pWORKD = NULL; + int* piAddrpWORKL = NULL; + double* pWORKL = NULL; + int* piAddrpINFO = NULL; + int* pINFO = NULL; + + int mRVEC, nRVEC; + int mHOWMANY, nHOWMANY; + int mSELECT, nSELECT; + int D, mD, nD; + int Z, mZ, nZ; + int mSIGMA, nSIGMA; + int mBMAT, nBMAT; + int mN, nN; + int mWHICH, nWHICH; + int mNEV, nNEV; + int mTOL, nTOL; + int RESID, mRESID, nRESID; + int mNCV, nNCV; + int V, mV, nV; + int IPARAM, mIPARAM, nIPARAM; + int IPNTR, mIPNTR, nIPNTR; + int WORKD, mWORKD, nWORKD; + int WORKL, mWORKL, nWORKL; + int INFO, mINFO, nINFO; + + int minlhs = 1, minrhs = 19, maxlhs = 9, maxrhs = 19; + int LDZ, LDV, LWORKL; + int sizeWORKL = 0; + + /* [D,Z,RESID,V,IPARAM,IPNTR,WORKD,WORKL,INFO]=dseupd... + (RVEC,HOWMANY,SELECT,D,Z,SIGMA,BMAT,N,WHICH,NEV,TOL,RESID,NCV,V,IPARAM,IPNTR,WORKD,WORKL,INFO) */ + + CheckInputArgument(pvApiCtx, minrhs, maxrhs); + CheckOutputArgument(pvApiCtx, minlhs, maxlhs); + + /* VARIABLE = NUMBER */ + sciErr = getVarAddressFromPosition(pvApiCtx, 1, &piAddrpRVEC); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 1. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpRVEC, &mRVEC, &nRVEC, &pRVEC); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 1); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 3, &piAddrpSELECT); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 3. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpSELECT, &mSELECT, &nSELECT, &pSELECT); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 3); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 4, &piAddrpD); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 4. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpD, &mD, &nD, &pD); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 4); + return 1; + } + + D = 4; + sciErr = getVarAddressFromPosition(pvApiCtx, 5, &piAddrpZ); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 5. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpZ, &mZ, &nZ, &pZ); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 5); + return 1; + } + + Z = 5; + sciErr = getVarAddressFromPosition(pvApiCtx, 6, &piAddrpSIGMA); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 6. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpSIGMA, &mSIGMA, &nSIGMA, &pSIGMA); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 6); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 8, &piAddrpN); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 8. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpN, &mN, &nN, &pN); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 8); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 10, &piAddrpNEV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 10. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpNEV, &mNEV, &nNEV, &pNEV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 10); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 11, &piAddrpTOL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 11. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpTOL, &mTOL, &nTOL, &pTOL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 11); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 12, &piAddrpRESID); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 12. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpRESID, &mRESID, &nRESID, &pRESID); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 12); + return 1; + } + + RESID = 12; + sciErr = getVarAddressFromPosition(pvApiCtx, 13, &piAddrpNCV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 13. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpNCV, &mNCV, &nNCV, &pNCV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 13); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 14, &piAddrpV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 14. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpV, &mV, &nV, &pV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 14); + return 1; + } + + V = 14; + sciErr = getVarAddressFromPosition(pvApiCtx, 15, &piAddrpIPARAM); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 15. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpIPARAM, &mIPARAM, &nIPARAM, &pIPARAM); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 15); + return 1; + } + + IPARAM = 15; + sciErr = getVarAddressFromPosition(pvApiCtx, 16, &piAddrpIPNTR); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 16. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpIPNTR, &mIPNTR, &nIPNTR, &pIPNTR); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 16); + return 1; + } + + IPNTR = 16; + sciErr = getVarAddressFromPosition(pvApiCtx, 17, &piAddrpWORKD); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 17. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpWORKD, &mWORKD, &nWORKD, &pWORKD); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 17); + return 1; + } + + WORKD = 17; + sciErr = getVarAddressFromPosition(pvApiCtx, 18, &piAddrpWORKL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 18. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpWORKL, &mWORKL, &nWORKL, &pWORKL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 18); + return 1; + } + + WORKL = 18; + sciErr = getVarAddressFromPosition(pvApiCtx, 19, &piAddrpINFO); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 19. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpINFO, &mINFO, &nINFO, &pINFO); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 19); + return 1; + } + + INFO = 19; + + LWORKL = mWORKL * nWORKL; + LDV = Max(1, pN[0]); + LDZ = LDV; + + /* Check some sizes */ + if (mIPARAM*nIPARAM != 11) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "IPARAM", 11); + return 1; + } + + if (mIPNTR*nIPNTR != 14) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "IPNTR", 14); + return 1; + } + + if (mRESID*nRESID != pN[0]) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "RESID", pN[0]); + return 1; + } + + if (mWORKD * nWORKD < 3 * pN[0]) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "WORKD", 3 * pN[0]); + return 1; + } + + if (mSELECT*nSELECT != pNCV[0]) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "SELECT", pNCV[0]); + return 1; + } + + if (mD*nD != (pNEV[0])) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "D", pNEV[0]); + return 1; + } + + if ((mZ != pN[0]) || (nZ != pNEV[0])) + { + Scierror(999, _("%s: Wrong size for input argument %s: A matrix of size %dx%d expected.\n"), fname, "Z", pN[0], pNEV[0]); + return 1; + } + + if ((mV != pN[0]) || (nV != pNCV[0])) + { + Scierror(999, _("%s: Wrong size for input argument %s: A matrix of size %dx%d expected.\n"), fname, "V", pN[0], pNCV[0]); + return 1; + } + + sizeWORKL = pNCV[0] * pNCV[0] + 8 * pNCV[0]; + + if ((mWORKL * nWORKL < sizeWORKL)) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "WORKL", sizeWORKL); + return 1; + } + + + sciErr = getVarAddressFromPosition(pvApiCtx, 2, &piAddrpHOWMANY); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 2. + if (getAllocatedSingleString(pvApiCtx, piAddrpHOWMANY, &pHOWMANY)) + { + Scierror(202, _("%s: Wrong type for argument #%d: A string expected.\n"), fname, 2); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 7, &piAddrpBMAT); + if (sciErr.iErr) + { + freeAllocatedSingleString(pHOWMANY); + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 7. + if (getAllocatedSingleString(pvApiCtx, piAddrpBMAT, &pBMAT)) + { + freeAllocatedSingleString(pHOWMANY); + Scierror(202, _("%s: Wrong type for argument #%d: A string expected.\n"), fname, 7); + return 1; + } + + + sciErr = getVarAddressFromPosition(pvApiCtx, 9, &piAddrpWHICH); + if (sciErr.iErr) + { + freeAllocatedSingleString(pBMAT); + freeAllocatedSingleString(pHOWMANY); + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 9. + if (getAllocatedSingleString(pvApiCtx, piAddrpWHICH, &pWHICH)) + { + freeAllocatedSingleString(pBMAT); + freeAllocatedSingleString(pHOWMANY); + Scierror(202, _("%s: Wrong type for argument #%d: A string expected.\n"), fname, 9); + return 1; + } + + C2F(dseupd)(pRVEC, pHOWMANY, pSELECT, + pD, pZ, &LDZ, + pSIGMA, pBMAT, pN, pWHICH, + pNEV, pTOL, pRESID, + pNCV, pV, &LDV, + pIPARAM, pIPNTR, + pWORKD, pWORKL, &LWORKL, + pINFO, 1L, 1L, 1L, 2L); + + freeAllocatedSingleString(pHOWMANY); + freeAllocatedSingleString(pBMAT); + + if (pINFO[0] < 0) + { + C2F(errorinfo)("dseupd", pINFO, 6L); + return 0; + } + + AssignOutputVariable(pvApiCtx, 1) = D; + AssignOutputVariable(pvApiCtx, 2) = Z; + AssignOutputVariable(pvApiCtx, 3) = RESID; + AssignOutputVariable(pvApiCtx, 4) = V; + AssignOutputVariable(pvApiCtx, 5) = IPARAM; + AssignOutputVariable(pvApiCtx, 6) = IPNTR; + AssignOutputVariable(pvApiCtx, 7) = WORKD; + AssignOutputVariable(pvApiCtx, 8) = WORKL; + AssignOutputVariable(pvApiCtx, 9) = INFO; + + ReturnArguments(pvApiCtx); + + return 0; +} +/*--------------------------------------------------------------------------*/ + diff --git a/modules/arnoldi/sci_gateway/c/sci_eigs.c b/modules/arnoldi/sci_gateway/c/sci_eigs.c new file mode 100755 index 000000000..99b425254 --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/sci_eigs.c @@ -0,0 +1,841 @@ +/* +* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +* Copyright (C) 2012 - Scilab Enterprises - Adeline CARNIS +* +* 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.1-en.txt +* +*/ + +#include <math.h> +#include <string.h> +#include "stack-c.h" +#include "isanan.h" +#include "core_math.h" +#include "gw_arnoldi.h" +#include "localization.h" +#include "Scierror.h" +#include "api_scilab.h" +#include "stdio.h" +#include "stdlib.h" +#include "sciprint.h" +#include "doublecomplex.h" +#include "MALLOC.h" +#include "eigs.h" + +int sci_eigs(char *fname, unsigned long fname_len) +{ + SciErr sciErr; + + int *piAddressVarOne = NULL; + int iRowsOne = 0; + int iColsOne = 0; + double elemt1 = 0; + double elemt2 = 0; + double* Areal = NULL; + doublecomplex* Acplx = NULL; + int Asym = 1; + int Acomplex = 0; + int N = 0; + + int *piAddressVarTwo = NULL; + int iTypeVarTwo = 0; + int iRowsTwo = 0; + int iColsTwo = 0; + double* Breal = NULL; + doublecomplex* Bcplx = NULL; + int Bcomplex = 0; + int matB = 0; + + int *piAddressVarThree = NULL; + double dblNEV = 0; + int iNEV = 0; + + int *piAddressVarFour = NULL; + int iTypeVarFour = 0; + int iRowsFour = 0; + int iColsFour = 0; + int iLen = 0; + char* pstData = NULL; + doublecomplex SIGMA; + + int *piAddressVarFive = NULL; + double dblMAXITER = 0; + + int *piAddressVarSix = NULL; + double dblTOL = 0; + + int *piAddressVarSeven = NULL; + int TypeVarSeven = 0; + int RowsSeven = 0; + int ColsSeven = 0; + double* dblNCV = NULL; + + int *piAddressVarEight = NULL; + int iTypeVarEight = 0; + double dblCHOLB = 0; + int iCHOLB = 0; + + int *piAddressVarNine = NULL; + int iTypeVarNine = 0; + int iRowsNine = 0; + int iColsNine = 0; + double* RESID = NULL; + doublecomplex* RESIDC = NULL; + + int *piAddressVarTen = NULL; + int iINFO = 0; + int RVEC = 0; + // Output arguments + double* eigenvalue = NULL; + double* eigenvector = NULL; + doublecomplex* eigenvalueC = NULL; + doublecomplex* eigenvectorC = NULL; + + double* mat_eigenvalue = NULL; + doublecomplex* mat_eigenvalueC = NULL; + int INFO_EUPD = 0; + int error = 0; + + int iErr = 0; + int i = 0; + int j = 0; + + CheckInputArgument(pvApiCtx, 1, 10); + CheckOutputArgument(pvApiCtx, 0, 2); + + /**************************************** + * First variable : A * + *****************************************/ + + sciErr = getVarAddressFromPosition(pvApiCtx, 1, &piAddressVarOne); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Can not read input argument #%d.\n"), fname, 1); + return 1; + } + + sciErr = getVarDimension(pvApiCtx, piAddressVarOne, &iRowsOne, &iColsOne); + //check if A is a square matrix + if (iRowsOne * iColsOne == 1 || iRowsOne != iColsOne) + { + Scierror(999, _("%s: Wrong type for input argument #%d: A square matrix expected.\n"), "eigs", 1); + return 1; + } + + N = iRowsOne; + + //check if A is complex + if (isVarComplex(pvApiCtx, piAddressVarOne)) + { + sciErr = getComplexZMatrixOfDouble(pvApiCtx, piAddressVarOne, &iRowsOne, &iColsOne, &Acplx); + Acomplex = 1; + } + else + { + sciErr = getMatrixOfDouble(pvApiCtx, piAddressVarOne, &iRowsOne, &iColsOne, &Areal); + + for (i = 0; i < iColsOne; i++) + { + for (j = 0; j < i; j++) + { + elemt1 = Areal[j + i * iColsOne]; + elemt2 = Areal[j * iColsOne + i]; + if (fabs(elemt1 - elemt2) > 0) + { + Asym = 0; + break; + } + } + if (Asym == 0) + { + break; + } + } + } + + /**************************************** + * Second variable : B * + *****************************************/ + sciErr = getVarAddressFromPosition(pvApiCtx, 2, &piAddressVarTwo); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Can not read input argument #%d.\n"), fname, 2); + return 1; + } + + sciErr = getVarType(pvApiCtx, piAddressVarTwo, &iTypeVarTwo); + if (sciErr.iErr || iTypeVarTwo != sci_matrix) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Wrong type for input argument #%d: An empty matrix or full or sparse square matrix expected.\n"), "eigs", 2); + return 1; + } + + sciErr = getVarDimension(pvApiCtx, piAddressVarTwo, &iRowsTwo, &iColsTwo); + matB = iRowsTwo * iColsTwo; + if (matB && (iRowsTwo != iRowsOne || iColsTwo != iColsOne)) + { + Scierror(999, _("%s: Wrong dimension for input argument #%d: B must have the same size as A.\n"), "eigs", 2); + return 1; + } + + if (isVarComplex(pvApiCtx, piAddressVarTwo)) + { + sciErr = getComplexZMatrixOfDouble(pvApiCtx, piAddressVarTwo, &iRowsTwo, &iColsTwo, &Bcplx); + Bcomplex = 1; + } + else + { + sciErr = getMatrixOfDouble(pvApiCtx, piAddressVarTwo, &iRowsTwo, &iColsTwo, &Breal); + } + + if (matB != 0) + { + if (Acomplex && !Bcomplex) + { + Bcplx = (doublecomplex*)MALLOC(N * N * sizeof(doublecomplex)); + memset(Bcplx, 0, N * N * sizeof(doublecomplex)); + Bcomplex = 1; + for (i = 0 ; i < N * N ; i++) + { + Bcplx[i].r = Breal[i]; + } + } + if (!Acomplex && Bcomplex) + { + Acplx = (doublecomplex*)MALLOC(N * N * sizeof(doublecomplex)); + memset(Acplx, 0, N * N * sizeof(doublecomplex)); + Acomplex = 1; + for (i = 0 ; i < N * N ; i++) + { + Acplx[i].r = Areal[i]; + } + } + } + + + /**************************************** + * NEV * + *****************************************/ + sciErr = getVarAddressFromPosition(pvApiCtx, 3, &piAddressVarThree); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Can not read input argument #%d.\n"), fname, 3); + FREE(Acplx); + return 1; + } + + iErr = getScalarDouble(pvApiCtx, piAddressVarThree, &dblNEV); + if (iErr) + { + Scierror(999, _("%s: Wrong type for input argument #%d: A scalar expected.\n"), "eigs", 3); + return 1; + } + + if (isVarComplex(pvApiCtx, piAddressVarThree)) + { + Scierror(999, _("%s: Wrong type for input argument #%d: A scalar expected.\n"), "eigs", 3); + return 1; + } + + if (dblNEV != floor(dblNEV) || (dblNEV <= 0)) + { + Scierror(999, _("%s: Wrong type for input argument #%d: k must be a positive integer.\n"), "eigs", 3); + return 1; + } + + if (!finite(dblNEV)) + { + Scierror(999, _("%s: Wrong value for input argument #%d: k must be in the range 1 to N.\n"), "eigs", 3); + return 1; + } + + + iNEV = (int)dblNEV; + + /**************************************** + * SIGMA AND WHICH * + *****************************************/ + sciErr = getVarAddressFromPosition(pvApiCtx, 4, &piAddressVarFour); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Can not read input argument #%d.\n"), fname, 4); + return 1; + } + + sciErr = getVarType(pvApiCtx, piAddressVarFour, &iTypeVarFour); + if (sciErr.iErr || (iTypeVarFour != sci_matrix && iTypeVarFour != sci_strings)) + { + Scierror(999, _("%s: Wrong type for input argument #%d: A scalar expected.\n"), "eigs", 4); + return 1; + } + + if (iTypeVarFour == sci_strings) + { + int iErr = getAllocatedSingleString(pvApiCtx, piAddressVarFour, &pstData); + if (iErr) + { + return 1; + } + + if (strcmp(pstData, "LM") != 0 && strcmp(pstData, "SM") != 0 && strcmp(pstData, "LR") != 0 && strcmp(pstData, "SR") != 0 && strcmp(pstData, "LI") != 0 + && strcmp(pstData, "SI") != 0 && strcmp(pstData, "LA") != 0 && strcmp(pstData, "SA") != 0 && strcmp(pstData, "BE") != 0) + { + if (!Acomplex && Asym) + { + Scierror(999, _("%s: Wrong value for input argument #%d: Unrecognized sigma value.\n Sigma must be one of '%s', '%s', '%s', '%s' or '%s'.\n" ), + "eigs", 4, "LM", "SM", "LA", "SA", "BE"); + return 1; + } + else + { + Scierror(999, _("%s: Wrong value for input argument #%d: Unrecognized sigma value.\n Sigma must be one of '%s', '%s', '%s', '%s', '%s' or '%s'.\n " ), + "eigs", 4, "LM", "SM", "LR", "SR", "LI", "SI"); + return 1; + } + } + + if ((Acomplex || !Asym) && (strcmp(pstData, "LA") == 0 || strcmp(pstData, "SA") == 0 || strcmp(pstData, "BE") == 0)) + { + Scierror(999, _("%s: Invalid sigma value for complex or non symmetric problem.\n"), "eigs", 4); + return 1; + } + + if (!Acomplex && Asym && (strcmp(pstData, "LR") == 0 || strcmp(pstData, "SR") == 0 || strcmp(pstData, "LI") == 0 || strcmp(pstData, "SI") == 0)) + { + Scierror(999, _("%s: Invalid sigma value for real symmetric problem.\n"), "eigs", 4); + return 1; + } + + SIGMA.r = 0; + SIGMA.i = 0; + } + + if (iTypeVarFour == sci_matrix) + { + sciErr = getVarDimension(pvApiCtx, piAddressVarFour, &iRowsFour, &iColsFour); + if (iRowsFour * iColsFour != 1) + { + Scierror(999, _("%s: Wrong type for input argument #%d: A scalar expected.\n"), "eigs", 4); + return 1; + } + + if (getScalarComplexDouble(pvApiCtx, piAddressVarFour, &SIGMA.r, &SIGMA.i)) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Can not read input argument #%d.\n"), fname, 4); + return 1; + } + + if (C2F(isanan)(&SIGMA.r) || C2F(isanan)(&SIGMA.i)) + { + Scierror(999, _("%s: Wrong type for input argument #%d: sigma must be a real.\n"), "eigs", 4); + return 1; + } + + pstData = "LM"; + } + + /**************************************** + * MAXITER * + *****************************************/ + sciErr = getVarAddressFromPosition(pvApiCtx, 5, &piAddressVarFive); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Can not read input argument #%d.\n"), fname, 5); + return 0; + } + + iErr = getScalarDouble(pvApiCtx, piAddressVarFive, &dblMAXITER); + if (iErr) + { + Scierror(999, _("%s: Wrong type for input argument #%d: %s must be a scalar.\n"), "eigs", 5, "opts.maxiter"); + return 1; + } + + if ((dblMAXITER != floor(dblMAXITER)) || (dblMAXITER <= 0)) + { + Scierror(999, _("%s: Wrong type for input argument #%d: %s must be an integer positive value.\n"), "eigs", 5, "opts.maxiter"); + return 1; + } + + /**************************************** + * TOL * + *****************************************/ + sciErr = getVarAddressFromPosition(pvApiCtx, 6, &piAddressVarSix); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Can not read input argument #%d.\n"), fname, 6); + return 1; + } + + iErr = getScalarDouble(pvApiCtx, piAddressVarSix, &dblTOL); + if (iErr) + { + Scierror(999, _("%s: Wrong type for input argument #%d: %s must be a real scalar.\n"), "eigs", 6, "opts.tol"); + return 1; + } + + if (C2F(isanan)(&dblTOL)) + { + Scierror(999, _("%s: Wrong type for input argument #%d: %s must be a real scalar.\n"), "eigs", 6, "opts.tol"); + return 1; + } + + /**************************************** + * NCV * + *****************************************/ + sciErr = getVarAddressFromPosition(pvApiCtx, 7, &piAddressVarSeven); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Can not read input argument #%d.\n"), fname, 7); + return 1; + } + + sciErr = getVarType(pvApiCtx, piAddressVarSeven, &TypeVarSeven); + if (sciErr.iErr || TypeVarSeven != sci_matrix) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Wrong type for input argument #%d: %s must be an integer scalar.\n"), "eigs", 7, "opts.ncv"); + return 1; + } + else + { + if (isVarComplex(pvApiCtx, piAddressVarSeven)) + { + Scierror(999, _("%s: Wrong type for input argument #%d: %s must be an integer scalar.\n"), "eigs", 7, "opts.ncv"); + 0; + } + else + { + sciErr = getVarDimension(pvApiCtx, piAddressVarSeven, &RowsSeven, &ColsSeven); + if (RowsSeven * ColsSeven > 1) + { + Scierror(999, _("%s: Wrong type for input argument #%d: %s must be an integer scalar.\n"), "eigs", 7, "opts.ncv"); + return 1; + } + + if (RowsSeven * ColsSeven == 1) + { + sciErr = getMatrixOfDouble(pvApiCtx, piAddressVarSeven, &RowsSeven, &ColsSeven, &dblNCV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Can not read input argument #%d.\n"), fname, 7); + return 1; + } + + if (dblNCV[0] != floor(dblNCV[0])) + { + Scierror(999, _("%s: Wrong type for input argument #%d: %s must be an integer scalar.\n"), "eigs", 7, "opts.ncv"); + return 1; + } + } + } + } + + /**************************************** + * CHOLB * + *****************************************/ + sciErr = getVarAddressFromPosition(pvApiCtx, 8, &piAddressVarEight); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Can not read input argument #%d.\n"), fname, 8); + return 1; + } + + sciErr = getVarType(pvApiCtx, piAddressVarEight, &iTypeVarEight); + if (sciErr.iErr || iTypeVarEight != sci_matrix && iTypeVarEight != sci_boolean) + { + Scierror(999, _("%s: Wrong type for input argument #%d: %s must be an integer scalar or a boolean.\n"), "eigs", 8, "opts.cholB"); + return 1; + } + + if (iTypeVarEight == sci_boolean) + { + iErr = getScalarBoolean(pvApiCtx, piAddressVarEight, &iCHOLB); + if (iErr) + { + Scierror(999, _("%s: Wrong type for input argument #%d: %s must be an integer scalar or a boolean.\n"), "eigs", 8, "opts.cholB"); + return 1; + } + + if (iCHOLB != 1 && iCHOLB != 0) + { + Scierror(999, _("%s: Wrong value for input argument #%d: %s must be %s or %s.\n"), "eigs", 8, "opts.cholB", "%f", "%t"); + return 1; + } + dblCHOLB = (double) iCHOLB; + } + + if (iTypeVarEight == sci_matrix) + { + iErr = getScalarDouble(pvApiCtx, piAddressVarEight, &dblCHOLB); + if (iErr) + { + Scierror(999, _("%s: Wrong type for input argument #%d: %s must be an integer scalar or a boolean.\n"), "eigs", 8, "opts.cholB"); + return 1; + } + + if (dblCHOLB != 1 && dblCHOLB != 0) + { + Scierror(999, _("%s: Wrong value for input argument #%d: %s must be %s or %s.\n"), "eigs", 8, "opts.cholB", "%f", "%t"); + return 1; + } + } + + if ( dblCHOLB ) // check that B is upper triangular with non zero element on the diagonal + { + if (!Bcomplex) + { + for (i = 0; i < N; i++) + { + for (j = 0; j <= i; j++) + { + if (i == j && Breal[i + j * N] == 0) + { + Scierror(999, _("%s: B is not positive definite. Try with sigma='SM' or sigma=scalar.\n"), "eigs"); + return 0; + } + else + { + if ( j < i && Breal[i + j * N] != 0 ) + { + Scierror(999, _("%s: If opts.cholB is true, B should be upper triangular.\n"), "eigs"); + return 0; + } + } + } + } + } + else + { + for (i = 0; i < N; i++) + { + for (j = 0; j <= i; j++) + { + if (i == j && Bcplx[i + i * N].r == 0 && Bcplx[i + i * N].i == 0) + { + Scierror(999, _("%s: B is not positive definite. Try with sigma='SM' or sigma=scalar.\n"), "eigs"); + return 0; + } + else + { + if ( j < i && (Bcplx[i + j * N].r != 0 || Bcplx[i + j * N].i != 0) ) + { + Scierror(999, _("%s: If opts.cholB is true, B should be upper triangular.\n"), "eigs"); + return 0; + } + } + } + } + } + } + + /**************************************** + * RESID * + *****************************************/ + sciErr = getVarAddressFromPosition(pvApiCtx, 9, &piAddressVarNine); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Can not read input argument #%d.\n"), fname, 9); + return 1; + } + + sciErr = getVarType(pvApiCtx, piAddressVarNine, &iTypeVarNine); + if (sciErr.iErr || iTypeVarNine != sci_matrix) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Wrong type for input argument #%d: A real or complex matrix expected.\n"), "eigs", 9); + return 1; + } + else + { + sciErr = getVarDimension(pvApiCtx, piAddressVarNine, &iRowsNine, &iColsNine); + if (iRowsNine * iColsNine == 1 || iRowsNine * iColsNine != N) + { + Scierror(999, _("%s: Wrong dimension for input argument #%d: Start vector %s must be N by 1.\n"), "eigs", 9, "opts.resid"); + return 1; + } + } + + if (!Acomplex && !Bcomplex) + { + if (isVarComplex(pvApiCtx, piAddressVarNine)) + { + Scierror(999, _("%s: Wrong type for input argument #%d: Start vector %s must be real for real problems.\n"), "eigs", 9, "opts.resid"); + return 1; + } + else + { + sciErr = getMatrixOfDouble(pvApiCtx, piAddressVarNine, &iRowsNine, &iColsNine, &RESID); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Can not read input argument #%d.\n"), "eigs", 9); + return 1; + } + } + } + else + { + sciErr = getComplexZMatrixOfDouble(pvApiCtx, piAddressVarNine, &iRowsNine, &iColsNine, &RESIDC); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Can not read input argument #%d.\n"), "eigs", 9); + return 1; + } + } + + /**************************************** + * INFO * + *****************************************/ + sciErr = getVarAddressFromPosition(pvApiCtx, 10, &piAddressVarTen); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Can not read input argument #%d.\n"), "eigs", 9); + return 1; + } + + iErr = getScalarInteger32(pvApiCtx, piAddressVarTen, &iINFO); + if (iErr) + { + Scierror(999, _("%s: Wrong type for input argument #%d: An integer expected.\n"), "eigs", 1); + return 1; + } + + // Initialization output arguments + if (nbOutputArgument(pvApiCtx) > 1) + { + RVEC = 1; + } + + if (Acomplex || Bcomplex || !Asym) + { + eigenvalueC = (doublecomplex*)CALLOC((iNEV + 1), sizeof(doublecomplex)); + if (RVEC) + { + eigenvectorC = (doublecomplex*)CALLOC(N * (iNEV + 1), sizeof(doublecomplex)); + } + } + else + { + eigenvalue = (double*)CALLOC(iNEV, sizeof(double)); + /* we should allocate eigenvector only if RVEC is true, but dseupd segfaults + if Z is not allocated even when RVEC is false, contrary to the docs.*/ + eigenvector = (double*)CALLOC(iNEV * N, sizeof(double)); + } + + error = eigs(Areal, Acplx, N, Acomplex, Asym, Breal, Bcplx, Bcomplex, matB, iNEV, SIGMA, pstData, &dblMAXITER, + &dblTOL, dblNCV, RESID, RESIDC, &iINFO, &dblCHOLB, INFO_EUPD, eigenvalue, eigenvector, eigenvalueC, eigenvectorC, RVEC); + + switch (error) + { + case -1 : + if (Asym && !Acomplex && !Bcomplex) + { + Scierror(999, _("%s: Wrong value for input argument #%d: For real symmetric problems, NCV must be k < NCV <= N.\n"), "eigs", 7); + } + else + { + if (!Asym && !Acomplex && !Bcomplex) + { + Scierror(999, _("%s: Wrong value for input argument #%d: For real non symmetric problems, NCV must be k + 2 < NCV <= N.\n"), "eigs", 7); + } + else + { + Scierror(999, _("%s: Wrong value for input argument #%d: For complex problems, NCV must be k + 1 < NCV <= N.\n"), "eigs", 7); + } + } + ReturnArguments(pvApiCtx); + return 1; + + case -2 : + if (Asym && !Acomplex && !Bcomplex) + { + Scierror(999, _("%s: Wrong value for input argument #%d: For real symmetric problems, k must be an integer in the range 1 to N - 1.\n"), "eigs", 3); + } + else + { + Scierror(999, _("%s: Wrong value for input argument #%d: For real non symmetric or complex problems, k must be an integer in the range 1 to N - 2.\n"), "eigs", 3); + } + ReturnArguments(pvApiCtx); + return 1; + + case -3 : + Scierror(999, _("%s: Error with input argument #%d: B is not positive definite. Try with sigma='SM' or sigma=scalar.\n"), "eigs", 2); + ReturnArguments(pvApiCtx); + return 0; + + case -4 : + if (!Acomplex && !Bcomplex) + { + if (Asym) + { + Scierror(999, _("%s: Error with %s: info = %d \n"), "eigs", "DSAUPD", iINFO); + } + else + { + Scierror(999, _("%s: Error with %s: info = %d \n"), "eigs", "DNAUPD", iINFO); + } + } + else + { + Scierror(999, _("%s: Error with %s: info = %d \n"), "eigs", "ZNAUPD", iINFO); + } + ReturnArguments(pvApiCtx); + return 1; + + case -5 : + if (!Acomplex && !Bcomplex) + { + if (Asym) + { + Scierror(999, _("%s: Error with %s: unknown mode returned.\n"), "eigs", "DSAUPD"); + } + else + { + Scierror(999, _("%s: Error with %s: unknown mode returned.\n"), "eigs", "DNAUPD"); + } + } + else + { + Scierror(999, _("%s: Error with %s: unknown mode returned.\n"), "eigs", "ZNAUPD"); + } + ReturnArguments(pvApiCtx); + return 1; + + case -6 : + if (!Acomplex && !Bcomplex) + { + if (Asym) + { + Scierror(999, _("%s: Error with %s: info = %d \n"), "eigs", "DSEUPD", INFO_EUPD); + } + else + { + Scierror(999, _("%s: Error with %s: info = %d \n"), "eigs", "DNEUPD", INFO_EUPD); + } + } + else + { + Scierror(999, _("%s: Error with %s: info = %d \n"), "eigs", "ZNEUPD", INFO_EUPD); + } + ReturnArguments(pvApiCtx); + FREE(mat_eigenvalue); + return 1; + } + + if (nbOutputArgument(pvApiCtx) <= 1) + { + if (eigenvalue) + { + sciErr = createMatrixOfDouble(pvApiCtx, nbInputArgument(pvApiCtx) + 1, iNEV, 1, eigenvalue); + FREE(eigenvalue); + FREE(eigenvector); + } + else if (eigenvalueC) + { + sciErr = createComplexZMatrixOfDouble(pvApiCtx, nbInputArgument(pvApiCtx) + 1, iNEV, 1, eigenvalueC); + FREE(eigenvalueC); + } + + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Memory allocation error.\n"), fname); + return 1; + } + + AssignOutputVariable(pvApiCtx, 1) = nbInputArgument(pvApiCtx) + 1; + } + else + { + // create a matrix which contains the eigenvalues + if (eigenvalue) + { + mat_eigenvalue = (double*)CALLOC(iNEV * iNEV, sizeof(double)); + for (i = 0; i < iNEV; i++) + { + mat_eigenvalue[i * iNEV + i] = eigenvalue[i]; + } + sciErr = createMatrixOfDouble(pvApiCtx, nbInputArgument(pvApiCtx) + 1, iNEV, iNEV, mat_eigenvalue); + FREE(eigenvalue); + FREE(mat_eigenvalue); + } + else if (eigenvalueC) + { + mat_eigenvalueC = (doublecomplex*)CALLOC(iNEV * iNEV, sizeof(doublecomplex)); + for (i = 0; i < iNEV; i++) + { + mat_eigenvalueC[i * iNEV + i] = eigenvalueC[i]; + } + sciErr = createComplexZMatrixOfDouble(pvApiCtx, nbInputArgument(pvApiCtx) + 1, iNEV, iNEV, mat_eigenvalueC); + FREE(eigenvalueC); + FREE(mat_eigenvalueC); + } + + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Memory allocation error.\n"), fname); + return 1; + } + + if (eigenvector) + { + sciErr = createMatrixOfDouble(pvApiCtx, nbInputArgument(pvApiCtx) + 2, N, iNEV, eigenvector); + FREE(eigenvector); + } + else if (eigenvectorC) + { + sciErr = createComplexZMatrixOfDouble(pvApiCtx, nbInputArgument(pvApiCtx) + 2, N, iNEV, eigenvectorC); + FREE(eigenvectorC); + } + + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(999, _("%s: Memory allocation error.\n"), fname); + return 1; + } + + AssignOutputVariable(pvApiCtx, 1) = nbInputArgument(pvApiCtx) + 1; + AssignOutputVariable(pvApiCtx, 2) = nbInputArgument(pvApiCtx) + 2; + } + + if (iTypeVarFour == sci_strings) + { + freeAllocatedSingleString(pstData); + } + + if (matB != 0) + { + if (Acomplex && !Bcomplex) + { + FREE(Bcplx); + } + if (!Acomplex && Bcomplex) + { + FREE(Acplx); + } + } + + ReturnArguments(pvApiCtx); + return 0; +} diff --git a/modules/arnoldi/sci_gateway/c/sci_znaupd.c b/modules/arnoldi/sci_gateway/c/sci_znaupd.c new file mode 100755 index 000000000..ff203d37d --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/sci_znaupd.c @@ -0,0 +1,418 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) ????-2008 - INRIA + * + * 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.1-en.txt + * + */ + +#include <math.h> +#include <string.h> +#include "api_scilab.h" +#include "core_math.h" +#include "gw_arnoldi.h" +#include "localization.h" +#include "Scierror.h" +/*--------------------------------------------------------------------------*/ +extern int C2F(znaupd)(int * ido, char * bmat, int * n, char * which, + int * nev, double * tol, doublecomplex * resid, + int * ncv, doublecomplex * v, int * ldv, int * iparam, + int * ipntr, doublecomplex * workd, + doublecomplex * workl, int * lworkl, double * rwork, + int * info); +/*--------------------------------------------------------------------------*/ +int sci_znaupd(char *fname, unsigned long fname_len) +{ + SciErr sciErr; + + int* piAddrpIDO = NULL; + int* pIDO = NULL; + int* piAddrpBMAT = NULL; + char* pBMAT = NULL; + int* piAddrpN = NULL; + int* pN = NULL; + int* piAddrpWHICH = NULL; + char* pWHICH = NULL; + int* piAddrpNEV = NULL; + int* pNEV = NULL; + int* piAddrpTOL = NULL; + double* pTOL = NULL; + int* piAddrpNCV = NULL; + int* pNCV = NULL; + int* piAddrpIPARAM = NULL; + int* pIPARAM = NULL; + int* piAddrpIPNTR = NULL; + int* pIPNTR = NULL; + int* piAddrpRWORK = NULL; + double* pRWORK = NULL; + int* piAddrpINFO = NULL; + int* pINFO = NULL; + int* piAddrpV = NULL; + + doublecomplex* pV = NULL; + int* piAddrpRESID = NULL; + doublecomplex* pRESID = NULL; + int* piAddrpWORKD = NULL; + doublecomplex* pWORKD = NULL; + int* piAddrpWORKL = NULL; + doublecomplex* pWORKL = NULL; + + int IDO, mIDO, nIDO; + int mBMAT, nBMAT; + int mN, nN; + int mWHICH, nWHICH; + int mNEV, nNEV; + int mTOL, nTOL; + int RESID, mRESID, nRESID; + int mNCV, nNCV; + int V, mV, nV; + int IPARAM, mIPARAM, nIPARAM; + int IPNTR, mIPNTR, nIPNTR; + int WORKD, mWORKD, nWORKD; + int WORKL, mWORKL, nWORKL; + int RWORK, mRWORK, nRWORK; + int INFO, mINFO, nINFO; + + int minlhs = 1, minrhs = 15, maxlhs = 9, maxrhs = 15; + int LDV, LWORKL; + int sizeWORKL = 0; + + CheckInputArgument(pvApiCtx, minrhs, maxrhs); + CheckOutputArgument(pvApiCtx, minlhs, maxlhs); + + /* VARIABLE = NUMBER */ + sciErr = getVarAddressFromPosition(pvApiCtx, 1, &piAddrpIDO); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 1. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpIDO, &mIDO, &nIDO, &pIDO); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 1); + return 1; + } + + IDO = 1; + + sciErr = getVarAddressFromPosition(pvApiCtx, 3, &piAddrpN); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 3. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpN, &mN, &nN, &pN); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 3); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 5, &piAddrpNEV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 5. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpNEV, &mNEV, &nNEV, &pNEV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 5); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 6, &piAddrpTOL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 6. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpTOL, &mTOL, &nTOL, &pTOL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 6); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 7, &piAddrpRESID); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 7. + sciErr = getComplexZMatrixOfDouble(pvApiCtx, piAddrpRESID, &mRESID, &nRESID, &pRESID); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 7); + return 1; + } + + RESID = 7; + sciErr = getVarAddressFromPosition(pvApiCtx, 8, &piAddrpNCV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 8. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpNCV, &mNCV, &nNCV, &pNCV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 8); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 9, &piAddrpV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 9. + sciErr = getComplexZMatrixOfDouble(pvApiCtx, piAddrpV, &mV, &nV, &pV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 9); + return 1; + } + + V = 9; + sciErr = getVarAddressFromPosition(pvApiCtx, 10, &piAddrpIPARAM); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 10. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpIPARAM, &mIPARAM, &nIPARAM, &pIPARAM); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 10); + return 1; + } + + IPARAM = 10; + sciErr = getVarAddressFromPosition(pvApiCtx, 11, &piAddrpIPNTR); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 11. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpIPNTR, &mIPNTR, &nIPNTR, &pIPNTR); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 11); + return 1; + } + + IPNTR = 11; + + sciErr = getVarAddressFromPosition(pvApiCtx, 12, &piAddrpWORKD); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 12. + sciErr = getComplexZMatrixOfDouble(pvApiCtx, piAddrpWORKD, &mWORKD, &nWORKD, &pWORKD); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 12); + return 1; + } + + WORKD = 12; + + sciErr = getVarAddressFromPosition(pvApiCtx, 13, &piAddrpWORKL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 13. + sciErr = getComplexZMatrixOfDouble(pvApiCtx, piAddrpWORKL, &mWORKL, &nWORKL, &pWORKL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 13); + return 1; + } + + WORKL = 13; + sciErr = getVarAddressFromPosition(pvApiCtx, 14, &piAddrpRWORK); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 14. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpRWORK, &mRWORK, &nRWORK, &pRWORK); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 14); + return 1; + } + + RWORK = 14; + sciErr = getVarAddressFromPosition(pvApiCtx, 15, &piAddrpINFO); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 15. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpINFO, &mINFO, &nINFO, &pINFO); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 15); + return 1; + } + + INFO = 15; + + LWORKL = mWORKL * nWORKL; + LDV = Max(1, pN[0]); + + /* Don't call dnaupd if ido == 99 */ + if (pIDO[0] == 99) + { + Scierror(999, _("%s: the computation is already terminated\n"), fname); + return 0; + } + + /* Check some sizes */ + if (mIPARAM*nIPARAM != 11) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "IPARAM", 11); + return 0; + } + + if (mIPNTR*nIPNTR != 14) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "IPNTR", 14); + return 0; + } + + if (mRESID*nRESID != pN[0]) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "RESID", pN[0]); + return 0; + } + + if ((mV != pN[0]) || (nV != pNCV[0])) + { + Scierror(999, _("%s: Wrong size for input argument %s: A matrix of size %dx%d expected.\n"), fname, "V", pN[0], pNCV[0]); + return 0; + } + + if (mWORKD * nWORKD < 3 * pN[0]) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "WORKD", 3 * pN[0]); + return 0; + } + + sizeWORKL = 3 * pNCV[0] * pNCV[0] + 5 * pNCV[0]; + + if (mWORKL * nWORKL < sizeWORKL) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "WORKL", sizeWORKL); + return 0; + } + + + sciErr = getVarAddressFromPosition(pvApiCtx, 2, &piAddrpBMAT); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 2. + if (getAllocatedSingleString(pvApiCtx, piAddrpBMAT, &pBMAT)) + { + Scierror(202, _("%s: Wrong type for argument #%d: A string expected.\n"), fname, 2); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 4, &piAddrpWHICH); + if (sciErr.iErr) + { + freeAllocatedSingleString(pBMAT); + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 4. + if (getAllocatedSingleString(pvApiCtx, piAddrpWHICH, &pWHICH)) + { + freeAllocatedSingleString(pBMAT); + Scierror(202, _("%s: Wrong type for argument #%d: A string expected.\n"), fname, 4); + return 1; + } + + C2F(znaupd)(pIDO, pBMAT, pN, + pWHICH, pNEV, pTOL, + pRESID, pNCV, pV, &LDV, + pIPARAM, pIPNTR, pWORKD, + pWORKL, &LWORKL, pRWORK, pINFO); + + freeAllocatedSingleString(pBMAT); + freeAllocatedSingleString(pWHICH); + + if (pINFO[0] < 0) + { + C2F(errorinfo)("znaupd", pINFO, 6L); + return 0; + } + + AssignOutputVariable(pvApiCtx, 1) = IDO; + AssignOutputVariable(pvApiCtx, 2) = RESID; + AssignOutputVariable(pvApiCtx, 3) = V; + AssignOutputVariable(pvApiCtx, 4) = IPARAM; + AssignOutputVariable(pvApiCtx, 5) = IPNTR; + AssignOutputVariable(pvApiCtx, 6) = WORKD; + AssignOutputVariable(pvApiCtx, 7) = WORKL; + AssignOutputVariable(pvApiCtx, 8) = RWORK; + AssignOutputVariable(pvApiCtx, 9) = INFO; + + ReturnArguments(pvApiCtx); + + return 0; +} +/*--------------------------------------------------------------------------*/ diff --git a/modules/arnoldi/sci_gateway/c/sci_zneupd.c b/modules/arnoldi/sci_gateway/c/sci_zneupd.c new file mode 100755 index 000000000..3a01b5f80 --- /dev/null +++ b/modules/arnoldi/sci_gateway/c/sci_zneupd.c @@ -0,0 +1,553 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) ????-2008 - INRIA + * + * 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.1-en.txt + * + */ + +#include <math.h> +#include <string.h> +#include "api_scilab.h" +#include "gw_arnoldi.h" +#include "core_math.h" +#include "localization.h" +#include "Scierror.h" +/*--------------------------------------------------------------------------*/ +extern int C2F(zneupd)(int * rvec, char * howmny, int * select, + doublecomplex * d, doublecomplex * z, int * ldz, + doublecomplex * sigma, doublecomplex * workev, + char * bmat, int * n, char * which, int * nev, + double * tol, doublecomplex * resid, int * ncv, + doublecomplex * v, int * ldv, int * iparam, int * ipntr, + doublecomplex * workd, doublecomplex * workl, + int * lworkl, double * rwork, int * info); +/*--------------------------------------------------------------------------*/ +int sci_zneupd(char *fname, unsigned long fname_len) +{ + SciErr sciErr; + + int* piAddrpRVEC = NULL; + int* pRVEC = NULL; + int* piAddrpHOWMANY = NULL; + char* pHOWMANY = NULL; + int* piAddrpSELECT = NULL; + int* pSELECT = NULL; + int* piAddrpBMAT = NULL; + char* pBMAT = NULL; + int* piAddrpN = NULL; + int* pN = NULL; + int* piAddrpWHICH = NULL; + char* pWHICH = NULL; + int* piAddrpNEV = NULL; + int* pNEV = NULL; + int* piAddrpTOL = NULL; + double* pTOL = NULL; + int* piAddrpNCV = NULL; + int* pNCV = NULL; + int* piAddrpIPARAM = NULL; + int* pIPARAM = NULL; + int* piAddrpIPNTR = NULL; + int* pIPNTR = NULL; + int* piAddrpRWORK = NULL; + double* pRWORK = NULL; + int* piAddrpINFO = NULL; + int* pINFO = NULL; + + int* piAddrpD = NULL; + doublecomplex* pD = NULL; + int* piAddrpZ = NULL; + doublecomplex* pZ = NULL; + int* piAddrpSIGMA = NULL; + doublecomplex* pSIGMA = NULL; + int* piAddrpWORKev = NULL; + doublecomplex* pWORKev = NULL; + int* piAddrpRESID = NULL; + doublecomplex* pRESID = NULL; + int* piAddrpWORKD = NULL; + doublecomplex* pV = NULL; + int* piAddrpV = NULL; + doublecomplex* pWORKD = NULL; + int* piAddrpWORKL = NULL; + doublecomplex* pWORKL = NULL; + + int mRVEC, nRVEC; + int mHOWMANY, nHOWMANY; + int mSELECT, nSELECT; + int D, mD, nD; + int Z, mZ, nZ; + int mSIGMA, nSIGMA; + int mWORKev, nWORKev; + int mBMAT, nBMAT; + int mN, nN; + int mWHICH, nWHICH; + int mNEV, nNEV; + int mTOL, nTOL; + int RESID, mRESID, nRESID; + int mNCV, nNCV; + int mV, nV; + int IPARAM, mIPARAM, nIPARAM; + int IPNTR, mIPNTR, nIPNTR; + int WORKD, mWORKD, nWORKD; + int WORKL, mWORKL, nWORKL; + int RWORK, mRWORK, nRWORK; + int INFO, mINFO, nINFO; + + int minlhs = 1, minrhs = 21, maxlhs = 9, maxrhs = 21; + int LDZ, LDV, LWORKL; + int sizeWORKL = 0; + + CheckInputArgument(pvApiCtx, minrhs, maxrhs); + CheckOutputArgument(pvApiCtx, minlhs, maxlhs); + + /* VARIABLE = NUMBER */ + sciErr = getVarAddressFromPosition(pvApiCtx, 1, &piAddrpRVEC); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 1. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpRVEC, &mRVEC, &nRVEC, &pRVEC); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 1); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 3, &piAddrpSELECT); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 3. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpSELECT, &mSELECT, &nSELECT, &pSELECT); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 3); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 4, &piAddrpD); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 4. + sciErr = getComplexZMatrixOfDouble(pvApiCtx, piAddrpD, &mD, &nD, &pD); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 4); + return 1; + } + D = 4; + + sciErr = getVarAddressFromPosition(pvApiCtx, 5, &piAddrpZ); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 5. + sciErr = getComplexZMatrixOfDouble(pvApiCtx, piAddrpZ, &mZ, &nZ, &pZ); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 5); + return 1; + } + Z = 5; + + sciErr = getVarAddressFromPosition(pvApiCtx, 6, &piAddrpSIGMA); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 6. + sciErr = getComplexZMatrixOfDouble(pvApiCtx, piAddrpSIGMA, &mSIGMA, &nSIGMA, &pSIGMA); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 6); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 7, &piAddrpWORKev); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 7. + sciErr = getComplexZMatrixOfDouble(pvApiCtx, piAddrpWORKev, &mWORKev, &nWORKev, &pWORKev); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 7); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 9, &piAddrpN); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 9. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpN, &mN, &nN, &pN); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 9); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 11, &piAddrpNEV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 11. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpNEV, &mNEV, &nNEV, &pNEV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 11); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 12, &piAddrpTOL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 12. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpTOL, &mTOL, &nTOL, &pTOL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 12); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 13, &piAddrpRESID); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 13. + sciErr = getComplexZMatrixOfDouble(pvApiCtx, piAddrpRESID, &mRESID, &nRESID, &pRESID); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 13); + return 1; + } + RESID = 13; + + sciErr = getVarAddressFromPosition(pvApiCtx, 14, &piAddrpNCV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 14. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpNCV, &mNCV, &nNCV, &pNCV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 14); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 15, &piAddrpV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 15. + sciErr = getComplexZMatrixOfDouble(pvApiCtx, piAddrpV, &mV, &nV, &pV); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 15); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 16, &piAddrpIPARAM); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 16. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpIPARAM, &mIPARAM, &nIPARAM, &pIPARAM); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 16); + return 1; + } + + IPARAM = 16; + sciErr = getVarAddressFromPosition(pvApiCtx, 17, &piAddrpIPNTR); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 17. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpIPNTR, &mIPNTR, &nIPNTR, &pIPNTR); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 17); + return 1; + } + + IPNTR = 17; + + sciErr = getVarAddressFromPosition(pvApiCtx, 18, &piAddrpWORKD); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 18. + sciErr = getComplexZMatrixOfDouble(pvApiCtx, piAddrpWORKD, &mWORKD, &nWORKD, &pWORKD); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 18); + return 1; + } + WORKD = 18; + + sciErr = getVarAddressFromPosition(pvApiCtx, 19, &piAddrpWORKL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 19. + sciErr = getComplexZMatrixOfDouble(pvApiCtx, piAddrpWORKL, &mWORKL, &nWORKL, &pWORKL); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 19); + return 1; + } + WORKL = 19; + + sciErr = getVarAddressFromPosition(pvApiCtx, 20, &piAddrpRWORK); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 20. + sciErr = getMatrixOfDouble(pvApiCtx, piAddrpRWORK, &mRWORK, &nRWORK, &pRWORK); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 20); + return 1; + } + + RWORK = 20; + sciErr = getVarAddressFromPosition(pvApiCtx, 21, &piAddrpINFO); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 21. + sciErr = getMatrixOfDoubleAsInteger(pvApiCtx, piAddrpINFO, &mINFO, &nINFO, &pINFO); + if (sciErr.iErr) + { + printError(&sciErr, 0); + Scierror(202, _("%s: Wrong type for argument #%d: A real expected.\n"), fname, 21); + return 1; + } + + INFO = 21; + + LWORKL = mWORKL * nWORKL; + LDV = Max(1, pN[0]); + LDZ = LDV; + + /* Check some sizes */ + if (mIPARAM*nIPARAM != 11) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "IPARAM", 11); + return 1; + } + + if (mIPNTR*nIPNTR != 14) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "IPNTR", 14); + return 1; + } + + if (mRESID*nRESID != pN[0]) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "RESID", pN[0]); + return 1; + } + + if (mWORKD * nWORKD < 3 * pN[0]) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "WORKD", 3 * pN[0]); + return 1; + } + + if (mSELECT*nSELECT != pNCV[0]) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "SELECT", pNCV[0]); + return 1; + } + + if (mD*nD != (pNEV[0] + 1)) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "D", pNEV[0] + 1); + return 1; + } + + if ((mZ != pN[0]) || (nZ != pNEV[0])) + { + Scierror(999, _("%s: Wrong size for input argument %s: A matrix of size %dx%d expected.\n"), fname, "Z", pN[0], pNEV[0]); + return 1; + } + + if (mWORKev*nWORKev != 2 * pNCV[0]) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "WORKev", 2 * pNCV[0]); + return 1; + } + + if ((mV != pN[0]) || (nV != pNCV[0])) + { + Scierror(999, _("%s: Wrong size for input argument %s: A matrix of size %dx%d expected.\n"), fname, "V", pN[0], pNCV[0]); + return 1; + } + + sizeWORKL = 3 * pNCV[0] * pNCV[0] + 5 * pNCV[0]; + + if ((mWORKL * nWORKL < sizeWORKL)) + { + Scierror(999, _("%s: Wrong size for input argument %s: An array of size %d expected.\n"), fname, "WORKL", sizeWORKL); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 2, &piAddrpHOWMANY); + if (sciErr.iErr) + { + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 2. + if (getAllocatedSingleString(pvApiCtx, piAddrpHOWMANY, &pHOWMANY)) + { + Scierror(202, _("%s: Wrong type for argument #%d: A string expected.\n"), fname, 2); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 8, &piAddrpBMAT); + if (sciErr.iErr) + { + freeAllocatedSingleString(pHOWMANY); + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 8. + if (getAllocatedSingleString(pvApiCtx, piAddrpBMAT, &pBMAT)) + { + freeAllocatedSingleString(pHOWMANY); + Scierror(202, _("%s: Wrong type for argument #%d: A string expected.\n"), fname, 8); + return 1; + } + + sciErr = getVarAddressFromPosition(pvApiCtx, 10, &piAddrpWHICH); + if (sciErr.iErr) + { + freeAllocatedSingleString(pHOWMANY); + freeAllocatedSingleString(pBMAT); + printError(&sciErr, 0); + return 1; + } + + // Retrieve a matrix of double at position 10. + if (getAllocatedSingleString(pvApiCtx, piAddrpWHICH, &pWHICH)) + { + freeAllocatedSingleString(pHOWMANY); + freeAllocatedSingleString(pBMAT); + Scierror(202, _("%s: Wrong type for argument #%d: A string expected.\n"), fname, 10); + return 1; + } + + C2F(zneupd)(pRVEC, pHOWMANY, pSELECT, pD, + pZ, &LDZ, pSIGMA, pWORKev, + pBMAT, pN, pWHICH, pNEV, + pTOL, pRESID, pNCV, pV, + &LDV, pIPARAM, pIPNTR, pWORKD, + pWORKL, &LWORKL, pRWORK, pINFO); + + freeAllocatedSingleString(pHOWMANY); + freeAllocatedSingleString(pBMAT); + freeAllocatedSingleString(pWHICH); + + if (pINFO[0] < 0) + { + C2F(errorinfo)("zneupd", pINFO, 6L); + return 0; + } + + AssignOutputVariable(pvApiCtx, 1) = D; + AssignOutputVariable(pvApiCtx, 2) = Z; + AssignOutputVariable(pvApiCtx, 3) = RESID; + AssignOutputVariable(pvApiCtx, 4) = IPARAM; + AssignOutputVariable(pvApiCtx, 5) = IPNTR; + AssignOutputVariable(pvApiCtx, 6) = WORKD; + AssignOutputVariable(pvApiCtx, 7) = WORKL; + AssignOutputVariable(pvApiCtx, 8) = RWORK; + AssignOutputVariable(pvApiCtx, 9) = INFO; + + ReturnArguments(pvApiCtx); + + return 0; +} +/*--------------------------------------------------------------------------*/ |