diff options
author | Ankit Raj | 2017-06-21 10:26:59 +0530 |
---|---|---|
committer | Ankit Raj | 2017-06-21 10:26:59 +0530 |
commit | 958577cac90a99124cd673fde1926781d966d91f (patch) | |
tree | 134d9fe7f5b97a647cb055bb7b4c21820a749f49 /src/c/statisticsFunctions | |
download | Scilab2C_fossee_old-958577cac90a99124cd673fde1926781d966d91f.tar.gz Scilab2C_fossee_old-958577cac90a99124cd673fde1926781d966d91f.tar.bz2 Scilab2C_fossee_old-958577cac90a99124cd673fde1926781d966d91f.zip |
Updated Scilab2C
Diffstat (limited to 'src/c/statisticsFunctions')
232 files changed, 26928 insertions, 0 deletions
diff --git a/src/c/statisticsFunctions/Makefile.am b/src/c/statisticsFunctions/Makefile.am new file mode 100644 index 0000000..e87f386 --- /dev/null +++ b/src/c/statisticsFunctions/Makefile.am @@ -0,0 +1,21 @@ +## +## Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +## Copyright (C) 2006-2008 - INRIA - Bruno JOFRET +## +## This file must be used under the terms of the CeCILL. +## This source file is licensed as described in the file COPYING, which +## you should have received as part of this distribution. The terms +## are also available at +## http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt +## +## + +SUBDIRS= mean \ + sum\ + variance\ + prod\ + min\ + max\ + meanf\ + variancef\ + stdevf diff --git a/src/c/statisticsFunctions/Makefile.in b/src/c/statisticsFunctions/Makefile.in new file mode 100644 index 0000000..6df9918 --- /dev/null +++ b/src/c/statisticsFunctions/Makefile.in @@ -0,0 +1,569 @@ +# Makefile.in generated by automake 1.11.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +subdir = src/c/statisticsFunctions +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/includes/machine.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +SOURCES = +DIST_SOURCES = +RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ + html-recursive info-recursive install-data-recursive \ + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ + $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ + distdir +ETAGS = etags +CTAGS = ctags +DIST_SUBDIRS = $(SUBDIRS) +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +F77 = @F77@ +FFLAGS = @FFLAGS@ +FGREP = @FGREP@ +GREP = @GREP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBMATH = @LIBMATH@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +ac_ct_F77 = @ac_ct_F77@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +lt_ECHO = @lt_ECHO@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +SUBDIRS = mean \ + sum\ + variance\ + prod\ + min\ + max\ + meanf\ + variancef\ + stdevf + +all: all-recursive + +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/c/statisticsFunctions/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/c/statisticsFunctions/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +# This directory's subdirectories are mostly independent; you can cd +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. +$(RECURSIVE_TARGETS): + @fail= failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +$(RECURSIVE_CLEAN_TARGETS): + @fail= failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ + done; \ + rev="$$rev ."; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done +ctags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + done + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + set x; \ + here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: CTAGS +CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done + @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + fi; \ + done + @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + am__skip_mode_fix=: \ + distdir) \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-recursive +all-am: Makefile +installdirs: installdirs-recursive +installdirs-am: +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +uninstall: uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-recursive + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-recursive + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +html-am: + +info: info-recursive + +info-am: + +install-data-am: + +install-dvi: install-dvi-recursive + +install-dvi-am: + +install-exec-am: + +install-html: install-html-recursive + +install-html-am: + +install-info: install-info-recursive + +install-info-am: + +install-man: + +install-pdf: install-pdf-recursive + +install-pdf-am: + +install-ps: install-ps-recursive + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ + install-am install-strip tags-recursive + +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am check check-am clean clean-generic clean-libtool \ + ctags ctags-recursive distclean distclean-generic \ + distclean-libtool distclean-tags distdir dvi dvi-am html \ + html-am info info-am install install-am install-data \ + install-data-am install-dvi install-dvi-am install-exec \ + install-exec-am install-html install-html-am install-info \ + install-info-am install-man install-pdf install-pdf-am \ + install-ps install-ps-am install-strip installcheck \ + installcheck-am installdirs installdirs-am maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \ + uninstall uninstall-am + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/src/c/statisticsFunctions/includes/dynlib_statisticsfunctions.h b/src/c/statisticsFunctions/includes/dynlib_statisticsfunctions.h new file mode 100644 index 0000000..b6dab50 --- /dev/null +++ b/src/c/statisticsFunctions/includes/dynlib_statisticsfunctions.h @@ -0,0 +1,26 @@ +/*
+* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+* Copyright (C) 2009 - DIGITEO - 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-en.txt
+*
+*/
+
+#ifndef __DYNLIB_STATISTICSFUNCTIONS_H__
+#define __DYNLIB_STATISTICSFUNCTIONS_H__
+
+#if defined(_MSC_VER) && defined(_USRDLL)
+ #if STATISTICSFUNCTIONS_EXPORTS
+ #define EXTERN_STATFUNC __declspec (dllexport)
+ #else
+ #define EXTERN_STATFUNC __declspec (dllimport)
+ #endif
+#else
+ #define EXTERN_STATFUNC
+#endif
+
+#endif /* __DYNLIB_STATISTICSFUNCTIONS_H__ */
diff --git a/src/c/statisticsFunctions/includes/mean.h b/src/c/statisticsFunctions/includes/mean.h new file mode 100644 index 0000000..d87c4ca --- /dev/null +++ b/src/c/statisticsFunctions/includes/mean.h @@ -0,0 +1,99 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#ifndef __MEAN_H__ +#define __MEAN_H__ + +#include "dynlib_statisticsfunctions.h" +#include "division.h" +#include "addition.h" + +#ifdef __cplusplus +extern "C" { +#endif +/* +** \brief Mean of a scalar element, just returns it +*/ +#define smeans(in) in +#define srowmeans(in) in +#define scolumnmeans(in) in +#define smatlabmeans(in) in + +/* +** \brief Mean of a scalar element, just returns it +*/ +#define dmeans(in) in +#define drowmeans(in) in +#define dcolumnmeans(in) in +#define dmatlabmeans(in) in + +/* +** \brief Mean of a scalar element, just returns it +*/ +#define cmeans(in) in +#define crowmeans(in) in +#define ccolumnmeans(in) in +#define cmatlabmeans(in) in + +/* +** \brief Mean of a scalar element, just returns it +*/ +#define zmeans(in) in +#define zrowmeans(in) in +#define zcolumnmeans(in) in +#define zmatlabmeans(in) in + +/* +** \brief Mean of a float array +** \param in the float array to process +** \param size, the size of the array +** \returns the mean. +*/ +EXTERN_STATFUNC float smeana(float *in, int size); +EXTERN_STATFUNC void srowmeana(float *in, int lines, int columns, float* out); +EXTERN_STATFUNC void scolumnmeana(float *in, int lines, int columns, float* out); + +/* +** \brief Mean of a double array +** \param in the double array to process +** \param size, the size of the array +** \returns the mean. +*/ +EXTERN_STATFUNC double dmeana(double *in, int size); +EXTERN_STATFUNC void drowmeana(double *in, int lines, int columns, double* out); +EXTERN_STATFUNC void dcolumnmeana(double *in, int lines, int columns, double* out); + +/* +** \brief Mean of a float complex array +** \param in the float array to process +** \param size, the size of the array +** \returns the mean. +*/ +EXTERN_STATFUNC floatComplex cmeana(floatComplex *in, int size); +EXTERN_STATFUNC void crowmeana(floatComplex *in, int lines, int columns, floatComplex* out); +EXTERN_STATFUNC void ccolumnmeana(floatComplex *in, int lines, int columns, floatComplex* out); + +/* +** \brief Mean of a double complex array +** \param in the double array to process +** \param size, the size of the array +** \returns the mean. +*/ +EXTERN_STATFUNC doubleComplex zmeana(doubleComplex *in, int size); +EXTERN_STATFUNC void zrowmeana(doubleComplex *in, int lines, int columns, doubleComplex* out); +EXTERN_STATFUNC void zcolumnmeana(doubleComplex *in, int lines, int columns, doubleComplex* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__MEAN_H__ */ diff --git a/src/c/statisticsFunctions/includes/meanf.h b/src/c/statisticsFunctions/includes/meanf.h new file mode 100644 index 0000000..c0d687c --- /dev/null +++ b/src/c/statisticsFunctions/includes/meanf.h @@ -0,0 +1,106 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2009 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#ifndef __MEANF_H__ +#define __MEANF_H__ + +#include "dynlib_statisticsfunctions.h" +#include "division.h" +#include "addition.h" + +#ifdef __cplusplus +extern "C" { +#endif +/* +** \brief Meanf of a scalar element, just returns it +*/ +#define smeanfs(in1,in2) in1 +#define srowmeanfs(in1,in2) in1 +#define scolumnmeanfs(in1,in2) in1 +#define smatlabmeanfs(in1,in2) in1 + +/* +** \brief Meanf of a scalar element, just returns it +*/ +#define dmeanfs(in1,in2) in1 +#define drowmeanfs(in1,in2) in1 +#define dcolumnmeanfs(in1,in2) in1 +#define dmatlabmeanfs(in1,in2) in1 + +/* +** \brief Meanf of a scalar element, just returns it +*/ +#define cmeanfs(in1,in2) in1 +#define crowmeanfs(in1,in2) in1 +#define ccolumnmeanfs(in1,in2) in1 +#define cmatlabmeanfs(in1,in2) in1 + +/* +** \brief Meanf of a scalar element, just returns it +*/ +#define zmeanfs(in1,in2) in1 +#define zrowmeanfs(in1,in2) in1 +#define zcolumnmeanfs(in1,in2) in1 +#define zmatlabmeanfs(in1,in2) in1 + +/* +** \brief Meanf of a float array +** \param in the float array to process +** \param size, the size of the array +** \returns the meanf. +*/ +EXTERN_STATFUNC float smeanfa(float *in1, int size, float *in2); +EXTERN_STATFUNC void srowmeanfa(float *in1, int lines, int columns, float *in2, float* out); +EXTERN_STATFUNC void scolumnmeanfa(float *in1, int lines, int columns, float *in2, float* out); + +/* +** \brief Meanf of a double array +** \param in the double array to process +** \param size, the size of the array +** \returns the meanf. +*/ +EXTERN_STATFUNC double dmeanfa(double *in1, int size, double *in2); +EXTERN_STATFUNC void drowmeanfa(double *in1, int lines, int columns, double *in2, double* out); +EXTERN_STATFUNC void dcolumnmeanfa(double *in1, int lines, int columns, double *in2, double* out); + +/* +** \brief Meanf of a float complex array +** \param in the float array to process +** \param size, the size of the array +** \returns the meanf. +*/ +EXTERN_STATFUNC floatComplex cmeanfa(floatComplex *in1, int size, floatComplex *in2); +EXTERN_STATFUNC void crowmeanfa(floatComplex *in1, int lines, int columns, floatComplex *in2, floatComplex* out); +EXTERN_STATFUNC void ccolumnmeanfa(floatComplex *in1, int lines, int columns, floatComplex *in2, floatComplex* out); + +/* +** \brief Meanf of a double complex array +** \param in the double array to process +** \param size, the size of the array +** \returns the meanf. +*/ +EXTERN_STATFUNC doubleComplex zmeanfa(doubleComplex *in1, int size, doubleComplex *in2); +EXTERN_STATFUNC void zrowmeanfa(doubleComplex *in1, int lines, int columns, doubleComplex *in2, doubleComplex* out); +EXTERN_STATFUNC void zcolumnmeanfa(doubleComplex *in1, int lines, int columns, doubleComplex *in2, doubleComplex* out); + +/* for convenience with interface */ +doubleComplex zmeanfzd (doubleComplex* in1 ,int lines , int columns , double* in2); +doubleComplex zmeanfdz (double* in1 ,int lines , int columns , doubleComplex* in2); + +floatComplex cmeanfcs (floatComplex* in1 ,int lines , int columns , float* in2); +floatComplex cmeanfsc (float* in1 ,int lines , int columns , floatComplex* in2); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__MEAN_H__ */ diff --git a/src/c/statisticsFunctions/includes/prod.h b/src/c/statisticsFunctions/includes/prod.h new file mode 100644 index 0000000..a5fde84 --- /dev/null +++ b/src/c/statisticsFunctions/includes/prod.h @@ -0,0 +1,100 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#ifndef __PROD_H__ +#define __PROD_H__ + +#include "dynlib_statisticsfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" + +#ifdef __cplusplus +extern "C" { +#endif +/* +** \brief Sum of a scalar element, just returns it +*/ +#define sprods(in) in +#define srowprods(in) in +#define scolumnprods(in) in +#define smatlabprods(in) in + +/* +** \brief Sum of a scalar element, just returns it +*/ +#define dprods(in) in +#define drowprods(in) in +#define dcolumnprods(in) in +#define dmatlabprods(in) in + +/* +** \brief Sum of a scalar element, just returns it +*/ +#define cprods(in) in +#define crowprods(in) in +#define ccolumnprods(in) in +#define cmatlabprods(in) in + +/* +** \brief Sum of a scalar element, just returns it +*/ +#define zprods(in) in +#define zrowprods(in) in +#define zcolumnprods(in) in +#define zmatlabprods(in) in + +/* +** \brief Sum of a float array +** \param in the float array to process +** \param size, the size of the array +** \returns the prod. +*/ +EXTERN_STATFUNC float sproda(float *in, int size); +EXTERN_STATFUNC void srowproda(float *in, int lines, int columns, float* out); +EXTERN_STATFUNC void scolumnproda(float *in, int lines, int columns, float* out); + +/* +** \brief Sum of a double array +** \param in the double array to process +** \param size, the size of the array +** \returns the prod. +*/ +EXTERN_STATFUNC double dproda(double *in, int size); +EXTERN_STATFUNC void drowproda(double *in, int lines, int columns, double* out); +EXTERN_STATFUNC void dcolumnproda(double *in, int lines, int columns, double* out); + +/* +** \brief Sum of a float complex array +** \param in the float array to process +** \param size, the size of the array +** \returns the prod. +*/ +EXTERN_STATFUNC floatComplex cproda(floatComplex *in, int size); +EXTERN_STATFUNC void crowproda(floatComplex *in, int lines, int columns, floatComplex* out); +EXTERN_STATFUNC void ccolumnproda(floatComplex *in, int lines, int columns, floatComplex* out); + +/* +** \brief Sum of a double complex array +** \param in the double array to process +** \param size, the size of the array +** \returns the prod. +*/ +EXTERN_STATFUNC doubleComplex zproda(doubleComplex *in, int size); +EXTERN_STATFUNC void zrowproda(doubleComplex *in, int lines, int columns, doubleComplex* out); +EXTERN_STATFUNC void zcolumnproda(doubleComplex *in, int lines, int columns, doubleComplex* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + + +#endif /* !__PROD_H__ */ diff --git a/src/c/statisticsFunctions/includes/statMax.h b/src/c/statisticsFunctions/includes/statMax.h new file mode 100644 index 0000000..8e5d12b --- /dev/null +++ b/src/c/statisticsFunctions/includes/statMax.h @@ -0,0 +1,130 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#ifndef __STAT_MAX_H__ +#define __STAT_MAX_H__ + +#include "dynlib_statisticsfunctions.h" +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +//#define max(a,b) (a>=b?a:b) + +#define maxa(a,size1,b,size2,out) {int i;\ + for (i=0;i<size1[0]*size2[1];i++) out[i]=max(a[i],b[i]);\ + } + +/* +** \brief max of a scalar element, just returns it +*/ +#define smaxs(in) in +#define srowmaxs(in) in +#define scolumnmaxs(in) in +#define smatlabmaxs(in) in + +/* +** \brief max of a scalar element, just returns it +*/ +#define dmaxs(in) in +#define drowmaxs(in) in +#define dcolumnmaxs(in) in +#define dmatlabmaxs(in) in + +/* +** \brief max of a scalar element, just returns it +*/ +#define u8maxs(in) (uint8)in +#define u8rowmaxs(in) (uint8)in +#define u8columnmaxs(in) (uint8)in +#define u8matlabmaxs(in) (uint8)in +#define u16maxs(in) (uint16)in +#define u16rowmaxs(in) (uint16)in +#define u16columnmaxs(in) (uint16)in +#define u16matlabmaxs(in) (uint16)in +#define i8maxs(in) (int8)in +#define i8rowmaxs(in) (int8)in +#define i8columnmaxs(in) (int8)in +#define i8matlabmaxs(in) (int8)in +#define i16maxs(in) (int16)in +#define i16rowmaxs(in) (int16)in +#define i16columnmaxs(in) (int16)in +#define i16matlabmaxs(in) (int16)in + + + +/* +** \brief Sum of a float array +** \param in the float array to process +** \param size, the size of the array +** \returns the max. +*/ +EXTERN_STATFUNC float smaxa(float *in, int size); +EXTERN_STATFUNC void srowmaxa(float *in, int lines, int columns, float* out); +EXTERN_STATFUNC void scolumnmaxa(float *in, int lines, int columns, float* out); + +/* +** \brief Sum of a double array +** \param in the double array to process +** \param size, the size of the array +** \returns the max. +*/ +EXTERN_STATFUNC double dmaxa(double *in, int size); +EXTERN_STATFUNC void drowmaxa(double *in, int lines, int columns, double* out); +EXTERN_STATFUNC void dcolumnmaxa(double *in, int lines, int columns, double* out); + +/* +** \brief Sum of a uint8 array +** \param in the uint8 array to process +** \param size, the size of the array +** \returns the max. +*/ +EXTERN_STATFUNC uint8 u8maxa(uint8 *in, int size); +EXTERN_STATFUNC void u8rowmaxa(uint8 *in, int lines, int columns, uint8* out); +EXTERN_STATFUNC void u8columnmaxa(uint8 *in, int lines, int columns, uint8* out); + +/* +** \brief Sum of a uint16 array +** \param in the uint16 array to process +** \param size, the size of the array +** \returns the max. +*/ +EXTERN_STATFUNC uint16 u16maxa(uint16 *in, int size); +EXTERN_STATFUNC void u16rowmaxa(uint16 *in, int lines, int columns, uint16* out); +EXTERN_STATFUNC void u16columnmaxa(uint16 *in, int lines, int columns, uint16* out); + +/* +** \brief Sum of a int8 array +** \param in the int8 array to process +** \param size, the size of the array +** \returns the max. +*/ +EXTERN_STATFUNC int8 i8maxa(int8 *in, int size); +EXTERN_STATFUNC void i8rowmaxa(int8 *in, int lines, int columns, int8* out); +EXTERN_STATFUNC void i8columnmaxa(int8 *in, int lines, int columns, int8* out); + +/* +** \brief Sum of a int16 array +** \param in the int16 array to process +** \param size, the size of the array +** \returns the max. +*/ +EXTERN_STATFUNC int16 i16maxa(int16 *in, int size); +EXTERN_STATFUNC void i16rowmaxa(int16 *in, int lines, int columns, int16* out); +EXTERN_STATFUNC void i16columnmaxa(int16 *in, int lines, int columns, int16* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif +#endif /* !__STAT_MAX_H__ */ diff --git a/src/c/statisticsFunctions/includes/statMin.h b/src/c/statisticsFunctions/includes/statMin.h new file mode 100644 index 0000000..f3b8268 --- /dev/null +++ b/src/c/statisticsFunctions/includes/statMin.h @@ -0,0 +1,130 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#ifndef __STAT_MIN_H__ +#define __STAT_MIN_H__ + +#include "dynlib_statisticsfunctions.h" +#include "types.h" + +#ifdef __cplusplus +extern "C" { +#endif + +//#define min(a,b) (a<=b?a:b) + +#define mina(a,size1,b,size2,out) {int i;\ + for (i=0;i<size1[0]*size2[1];i++) out[i]=min(a[i],b[i]);\ + } + +/* +** \brief min of a scalar element, just returns it +*/ +#define smins(in) in +#define srowmins(in) in +#define scolumnmins(in) in +#define smatlabmins(in) in + +/* +** \brief min of a scalar element, just returns it +*/ +#define dmins(in) in +#define drowmins(in) in +#define dcolumnmins(in) in +#define dmatlabmins(in) in + +/* +** \brief min of a scalar element, just returns it +*/ +#define u8mins(in) (uint8)in +#define u8rowmins(in) (uint8)in +#define u8columnmins(in) (uint8)in +#define u8matlabmins(in) (uint8)in +#define u16mins(in) (uint16)in +#define u16rowmins(in) (uint16)in +#define u16columnmins(in) (uint16)in +#define u16matlabmins(in) (uint16)in +#define i8mins(in) (int8)in +#define i8rowmins(in) (int8)in +#define i8columnmins(in) (int8)in +#define i8matlabmins(in) (int8)in +#define i16mins(in) (int16)in +#define i16rowmins(in) (int16)in +#define i16columnmins(in) (int16)in +#define i16matlabmins(in) (int16)in + + + +/* +** \brief Sum of a float array +** \param in the float array to process +** \param size, the size of the array +** \returns the min. +*/ +EXTERN_STATFUNC float smina(float *in, int size); +EXTERN_STATFUNC void srowmina(float *in, int lines, int columns, float* out); +EXTERN_STATFUNC void scolumnmina(float *in, int lines, int columns, float* out); + +/* +** \brief Sum of a double array +** \param in the double array to process +** \param size, the size of the array +** \returns the min. +*/ +EXTERN_STATFUNC double dmina(double *in, int size); +EXTERN_STATFUNC void drowmina(double *in, int lines, int columns, double* out); +EXTERN_STATFUNC void dcolumnmina(double *in, int lines, int columns, double* out); + +/* +** \brief Sum of a uint8 array +** \param in the uint8 array to process +** \param size, the size of the array +** \returns the min. +*/ +EXTERN_STATFUNC uint8 u8mina(uint8 *in, int size); +EXTERN_STATFUNC void u8rowmina(uint8 *in, int lines, int columns, uint8* out); +EXTERN_STATFUNC void u8columnmina(uint8 *in, int lines, int columns, uint8* out); + +/* +** \brief Sum of a uint16 array +** \param in the uint16 array to process +** \param size, the size of the array +** \returns the min. +*/ +EXTERN_STATFUNC uint16 u16mina(uint16 *in, int size); +EXTERN_STATFUNC void u16rowmina(uint16 *in, int lines, int columns, uint16* out); +EXTERN_STATFUNC void u16columnmina(uint16 *in, int lines, int columns, uint16* out); + +/* +** \brief Sum of a int8 array +** \param in the int8 array to process +** \param size, the size of the array +** \returns the min. +*/ +EXTERN_STATFUNC int8 i8mina(int8 *in, int size); +EXTERN_STATFUNC void i8rowmina(int8 *in, int lines, int columns, int8* out); +EXTERN_STATFUNC void i8columnmina(int8 *in, int lines, int columns, int8* out); + +/* +** \brief Sum of a int16 array +** \param in the int16 array to process +** \param size, the size of the array +** \returns the min. +*/ +EXTERN_STATFUNC int16 i16mina(int16 *in, int size); +EXTERN_STATFUNC void i16rowmina(int16 *in, int lines, int columns, int16* out); +EXTERN_STATFUNC void i16columnmina(int16 *in, int lines, int columns, int16* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif +#endif /* !__STAT_MIN_H__ */ diff --git a/src/c/statisticsFunctions/includes/stdevf.h b/src/c/statisticsFunctions/includes/stdevf.h new file mode 100644 index 0000000..c9e4859 --- /dev/null +++ b/src/c/statisticsFunctions/includes/stdevf.h @@ -0,0 +1,129 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#ifndef __STDEVF_H__ +#define __STDEVF_H__ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> + + +#include "dynlib_statisticsfunctions.h" +#include "subtraction.h" +#include "division.h" + + +#include "pow.h" +#include "sum.h" +#include "size.h" +#include "sqrt.h" +#include "meanf.h" + + + +#ifdef __cplusplus +extern "C" { +#endif + + + + + +/* +** \brief Standard deviation of a scalar element, just returns it +*/ +#define sstdevfs(in1,in2) 0.0f +#define srowstdevfs(in1,in2) 0.0f +#define scolumnstdevfs(in1,in2) 0.0f + + +/* +** \brief Standard deviation of a scalar element, just returns it +*/ +#define dstdevfs(in1,in2) 0.0 +#define drowstdevfs(in1,in2) 0.0 +#define dcolumnstdevfs(in1,in2) 0.0 + + +/* +** \brief Standard deviation of a scalar element, just returns it +*/ +#define cstdevfs(in1,in2) FloatComplex(0.0f , 0.0f) +#define crowstdevfs(in1,in2) FloatComplex(0.0f , 0.0f) +#define ccolumnstdevfs(in1,in2) FloatComplex(0.0f , 0.0f) + + +/* +** \brief Standard deviation of a scalar element, just returns it +*/ +#define zstdevfs(in1,in2) DoubleComplex(0.0 , 0.0) +#define zrowstdevfs(in1,in2) DoubleComplex(0.0 , 0.0) +#define zcolumnstdevfs(in1,in2) DoubleComplex(0.0 , 0.0) + + +/* +** \brief Standard deviation of a float array +** \param in the float array to process +** \param size, the size of the array +** \returns the stdevf. +*/ +EXTERN_STATFUNC float sstdevfa(float *in1, int lines, int columns, float *in2); +EXTERN_STATFUNC void srowstdevfa(float *in1, int lines, int columns, float *in2, float* out); +EXTERN_STATFUNC void scolumnstdevfa(float *in1, int lines, int columns, float *in2, float* out); + +/* +** \brief Standard deviation of a double array +** \param in the double array to process +** \param size, the size of the array +** \returns the stdevf. +*/ +EXTERN_STATFUNC double dstdevfa(double *in1, int lines, int columns, double *in2); +EXTERN_STATFUNC void drowstdevfa(double *in1, int lines, int columns, double *in2, double* out); +EXTERN_STATFUNC void dcolumnstdevfa(double *in1, int lines, int columns, double *in2, double* out); + +/* +** \brief Standard deviation of a float complex array +** \param in the float array to process +** \param size, the size of the array +** \returns the stdevf. +*/ +EXTERN_STATFUNC floatComplex cstdevfa(floatComplex *in1, int lines, int columns, floatComplex *in2); +EXTERN_STATFUNC void crowstdevfa(floatComplex *in1, int lines, int columns, floatComplex *in2, floatComplex* out); +EXTERN_STATFUNC void ccolumnstdevfa(floatComplex *in1, int lines, int columns, floatComplex *in2, floatComplex* out); + +/* +** \brief Standard deviation of a double complex array +** \param in the double array to process +** \param size, the size of the array +** \returns the stdevf. +*/ +EXTERN_STATFUNC doubleComplex zstdevfa(doubleComplex *in1, int lines, int columns, doubleComplex *in2); +EXTERN_STATFUNC void zrowstdevfa(doubleComplex *in1, int lines, int columns, doubleComplex *in2, doubleComplex* out); +EXTERN_STATFUNC void zcolumnstdevfa(doubleComplex *in1, int lines, int columns, doubleComplex *in2, doubleComplex* out); + +/* +** convenience functions +*/ + +EXTERN_STATFUNC floatComplex cstdevfcs(floatComplex *in1, int lines, int columns, float *in2); +EXTERN_STATFUNC floatComplex cstdevfsc(float *in1, int lines, int columns, floatComplex *in2); + +EXTERN_STATFUNC doubleComplex zstdevfzd(doubleComplex *in1, int lines, int columns, double *in2); +EXTERN_STATFUNC doubleComplex zstdevfdz(double *in1, int lines, int columns, doubleComplex *in2); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + + +#endif /* !__STDEVF_H__ */ diff --git a/src/c/statisticsFunctions/includes/sum.h b/src/c/statisticsFunctions/includes/sum.h new file mode 100644 index 0000000..2910792 --- /dev/null +++ b/src/c/statisticsFunctions/includes/sum.h @@ -0,0 +1,102 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#ifndef __SUM_H__ +#define __SUM_H__ + +#include "dynlib_statisticsfunctions.h" +#include "floatComplex.h" +#include "doubleComplex.h" +#include "addition.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* +** \brief Sum of a scalar element, just returns it +*/ +#define ssums(in) in +#define srowsums(in) in +#define scolumnsums(in) in +#define smatlabsums(in) in + +/* +** \brief Sum of a scalar element, just returns it +*/ +#define dsums(in) in +#define drowsums(in) in +#define dcolumnsums(in) in +#define dmatlabsums(in) in + +/* +** \brief Sum of a scalar element, just returns it +*/ +#define csums(in) in +#define crowsums(in) in +#define ccolumnsums(in) in +#define cmatlabsums(in) in + +/* +** \brief Sum of a scalar element, just returns it +*/ +#define zsums(in) in +#define zrowsums(in) in +#define zcolumnsums(in) in +#define zmatlabsums(in) in + +/* +** \brief Sum of a float array +** \param in the float array to process +** \param size, the size of the array +** \returns the sum. +*/ +EXTERN_STATFUNC float ssuma(float *in, int size); +EXTERN_STATFUNC void srowsuma(float *in, int lines, int columns, float* out); +EXTERN_STATFUNC void scolumnsuma(float *in, int lines, int columns, float* out); + +/* +** \brief Sum of a double array +** \param in the double array to process +** \param size, the size of the array +** \returns the sum. +*/ +EXTERN_STATFUNC double dsuma(double *in, int size); +EXTERN_STATFUNC void drowsuma(double *in, int lines, int columns, double* out); +EXTERN_STATFUNC void dcolumnsuma(double *in, int lines, int columns, double* out); + +/* +** \brief Sum of a float complex array +** \param in the float array to process +** \param size, the size of the array +** \returns the sum. +*/ +EXTERN_STATFUNC floatComplex csuma(floatComplex *in, int size); +EXTERN_STATFUNC void crowsuma(floatComplex *in, int lines, int columns, floatComplex* out); +EXTERN_STATFUNC void ccolumnsuma(floatComplex *in, int lines, int columns, floatComplex* out); + +/* +** \brief Sum of a double complex array +** \param in the double array to process +** \param size, the size of the array +** \returns the sum. +*/ +EXTERN_STATFUNC doubleComplex zsuma(doubleComplex *in, int size); +EXTERN_STATFUNC void zrowsuma(doubleComplex *in, int lines, int columns, doubleComplex* out); +EXTERN_STATFUNC void zcolumnsuma(doubleComplex *in, int lines, int columns, doubleComplex* out); + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* !__SUM_H__ */ diff --git a/src/c/statisticsFunctions/includes/variance.h b/src/c/statisticsFunctions/includes/variance.h new file mode 100644 index 0000000..a058bb7 --- /dev/null +++ b/src/c/statisticsFunctions/includes/variance.h @@ -0,0 +1,117 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#ifndef __VARIANCE_H__ +#define __VARIANCE_H__ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> + + +#include "dynlib_statisticsfunctions.h" +#include "subtraction.h" +#include "division.h" + +#include "pow.h" +#include "sum.h" + +#include "mean.h" +#include "matrixTranspose.h" + + +#ifdef __cplusplus +extern "C" { +#endif + + + + + +/* +** \brief Variance of a scalar element, just returns it +*/ +#define svariances(in) in +#define srowvariances(in) in +#define scolumnvariances(in) in + + +/* +** \brief Variance of a scalar element, just returns it +*/ +#define dvariances(in) in +#define drowvariances(in) in +#define dcolumnvariances(in) in + + +/* +** \brief Variance of a scalar element, just returns it +*/ +#define cvariances(in) in +#define crowvariances(in) in +#define ccolumnvariances(in) in + + +/* +** \brief Variance of a scalar element, just returns it +*/ +#define zvariances(in) in +#define zrowvariances(in) in +#define zcolumnvariances(in) in + + +/* +** \brief Variance of a float array +** \param in the float array to process +** \param size, the size of the array +** \returns the variance. +*/ +EXTERN_STATFUNC float svariancea(float *in, int size); +EXTERN_STATFUNC void srowvariancea(float *in, int lines, int columns, float* out); +EXTERN_STATFUNC void scolumnvariancea(float *in, int lines, int columns, float* out); + +/* +** \brief Variance of a double array +** \param in the double array to process +** \param size, the size of the array +** \returns the variance. +*/ +EXTERN_STATFUNC double dvariancea(double *in, int size); +EXTERN_STATFUNC void drowvariancea(double *in, int lines, int columns, double* out); +EXTERN_STATFUNC void dcolumnvariancea(double *in, int lines, int columns, double* out); + +/* +** \brief Variance of a float complex array +** \param in the float array to process +** \param size, the size of the array +** \returns the variance. +*/ +EXTERN_STATFUNC floatComplex cvariancea(floatComplex *in, int size); +EXTERN_STATFUNC void crowvariancea(floatComplex *in, int lines, int columns, floatComplex* out); +EXTERN_STATFUNC void ccolumnvariancea(floatComplex *in, int lines, int columns, floatComplex* out); + +/* +** \brief Variance of a double complex array +** \param in the double array to process +** \param size, the size of the array +** \returns the variance. +*/ +EXTERN_STATFUNC doubleComplex zvariancea(doubleComplex *in, int size); +EXTERN_STATFUNC void zrowvariancea(doubleComplex *in, int lines, int columns, doubleComplex* out); +EXTERN_STATFUNC void zcolumnvariancea(doubleComplex *in, int lines, int columns, doubleComplex* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + + +#endif /* !__VARIANCE_H__ */ diff --git a/src/c/statisticsFunctions/includes/variancef.h b/src/c/statisticsFunctions/includes/variancef.h new file mode 100644 index 0000000..e682a18 --- /dev/null +++ b/src/c/statisticsFunctions/includes/variancef.h @@ -0,0 +1,117 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#ifndef __VARIANCEF_H__ +#define __VARIANCEF_H__ + +#include <stdio.h> +#include <stdlib.h> +#include <math.h> + + +#include "dynlib_statisticsfunctions.h" +#include "subtraction.h" +#include "division.h" + + +#include "pow.h" +#include "sum.h" + +#include "meanf.h" + + +#ifdef __cplusplus +extern "C" { +#endif + + + + + +/* +** \brief Variance of a scalar element, just returns it +*/ +#define svariancefs(in1,in2) 0.0f +#define srowvariancefs(in1,in2) 0.0f +#define scolumnvariancefs(in1,in2) 0.0f + + +/* +** \brief Variance of a scalar element, just returns it +*/ +#define dvariancefs(in1,in2) 0.0 +#define drowvariancefs(in1,in2) 0.0 +#define dcolumnvariancefs(in1,in2) 0.0 + + +/* +** \brief Variance of a scalar element, just returns it +*/ +#define cvariancefs(in1,in2) FloatComplex(0.0f , 0.0f) +#define crowvariancefs(in1,in2) FloatComplex(0.0f , 0.0f) +#define ccolumnvariancefs(in1,in2) FloatComplex(0.0f , 0.0f) + + +/* +** \brief Variance of a scalar element, just returns it +*/ +#define zvariancefs(in1,in2) DoubleComplex(0.0 , 0.0) +#define zrowvariancefs(in1,in2) DoubleComplex(0.0 , 0.0) +#define zcolumnvariancefs(in1,in2) DoubleComplex(0.0 , 0.0) + + +/* +** \brief Variance of a float array +** \param in the float array to process +** \param size, the size of the array +** \returns the variancef. +*/ +EXTERN_STATFUNC float svariancefa(float *in1, int size, float *in2); +EXTERN_STATFUNC void srowvariancefa(float *in1, int lines, int columns, float *in2, float* out); +EXTERN_STATFUNC void scolumnvariancefa(float *in1, int lines, int columns, float *in2, float* out); + +/* +** \brief Variance of a double array +** \param in the double array to process +** \param size, the size of the array +** \returns the variancef. +*/ +EXTERN_STATFUNC double dvariancefa(double *in1, int size, double *in2); +EXTERN_STATFUNC void drowvariancefa(double *in1, int lines, int columns, double *in2, double* out); +EXTERN_STATFUNC void dcolumnvariancefa(double *in1, int lines, int columns, double *in2, double* out); + +/* +** \brief Variance of a float complex array +** \param in the float array to process +** \param size, the size of the array +** \returns the variancef. +*/ +EXTERN_STATFUNC floatComplex cvariancefa(floatComplex *in1, int size, floatComplex *in2); +EXTERN_STATFUNC void crowvariancefa(floatComplex *in1, int lines, int columns, floatComplex *in2, floatComplex* out); +EXTERN_STATFUNC void ccolumnvariancefa(floatComplex *in1, int lines, int columns, floatComplex *in2, floatComplex* out); + +/* +** \brief Variance of a double complex array +** \param in the double array to process +** \param size, the size of the array +** \returns the variancef. +*/ +EXTERN_STATFUNC doubleComplex zvariancefa(doubleComplex *in1, int size, doubleComplex *in2); +EXTERN_STATFUNC void zrowvariancefa(doubleComplex *in1, int lines, int columns, doubleComplex *in2, doubleComplex* out); +EXTERN_STATFUNC void zcolumnvariancefa(doubleComplex *in1, int lines, int columns, doubleComplex *in2, doubleComplex* out); + +#ifdef __cplusplus +} /* extern "C" */ +#endif + + +#endif /* !__VARIANCEF_H__ */ diff --git a/src/c/statisticsFunctions/interfaces/int_mean.h b/src/c/statisticsFunctions/interfaces/int_mean.h new file mode 100644 index 0000000..d1d301c --- /dev/null +++ b/src/c/statisticsFunctions/interfaces/int_mean.h @@ -0,0 +1,71 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_MEAN_H__ +#define __INT_MEAN_H__ + +#define s0means0(in) smeans(in) + +#define d0meand0(in) dmeans(in) + +#define c0meanc0(in) cmeans(in) + +#define z0meanz0(in) zmeans(in) + +#define s2means0(in,size) smeana(in, size[0]*size[1]) + +#define d2meand0(in,size) dmeana(in, size[0]*size[1]) + +#define c2meanc0(in,size) cmeana(in, size[0]*size[1]) + +#define z2meanz0(in,size) zmeana(in, size[0]*size[1]) + + +#define s0s0means0(in1,in2) (in2==1) ? srowmeans(in1) : scolumnmeans(in1) + +#define d0d0meand0(in1,in2) (in2==1) ? drowmeans(in1) : dcolumnmeans(in1) + +#define c0s0meanc0(in1,in2) (in2==1) ? crowmeans(in1) : ccolumnmeans(in1) + +#define z0d0meanz0(in1,in2) (in2==1) ? zrowmeans(in1) : zcolumnmeans(in1) + +#define s2s0means2(in1,size,in2,out) (in2==1) ? srowmeana(in1,size[0],size[1],out) : scolumnmeana(in1,size[0],size[1],out) + +#define d2d0meand2(in1,size,in2,out) (in2==1) ? drowmeana(in1,size[0],size[1],out) : dcolumnmeana(in1,size[0],size[1],out) + +#define c2s0meanc2(in1,size,in2,out) (in2==1) ? crowmeana(in1,size[0],size[1],out) : ccolumnmeana(in1,size[0],size[1],out) + +#define z2d0meanz2(in1,size,in2,out) (in2==1) ? zrowmeana(in1,size[0],size[1],out) : zcolumnmeana(in1,size[0],size[1],out) + + /*'r' and 'c' case */ +#define s0g2means0(in1,in2,size2) (in2[0]=='r') ? srowmeans(in1) : scolumnmeans(in1) + +#define d0g2meand0(in1,in2,size2) (in2[0]=='r') ? drowmeans(in1) : dcolumnmeans(in1) + +#define c0g2meanc0(in1,in2,size2) (in2[0]=='r') ? crowmeans(in1) : ccolumnmeans(in1) + +#define z0g2meanz0(in1,in2,size2) (in2[0]=='r') ? zrowmeans(in1) : zcolumnmeans(in1) + +#define s2g2means2(in1,size,in2,size2,out) (in2[0]=='r') ? srowmeana(in1,size[0],size[1],out) : scolumnmeana(in1,size[0],size[1],out) + +#define d2g2meand2(in1,size,in2,size2,out) (in2[0]=='r') ? drowmeana(in1,size[0],size[1],out) : dcolumnmeana(in1,size[0],size[1],out) + +#define c2g2meanc2(in1,size,in2,size2,out) (in2[0]=='r') ? crowmeana(in1,size[0],size[1],out) : ccolumnmeana(in1,size[0],size[1],out) + +#define z2g2meanz2(in1,size,in2,size2,out) (in2[0]=='r') ? zrowmeana(in1,size[0],size[1],out) : zcolumnmeana(in1,size[0],size[1],out) + + + + +#endif /* !__INT_MEAN_H__ */ diff --git a/src/c/statisticsFunctions/interfaces/int_meanf.h b/src/c/statisticsFunctions/interfaces/int_meanf.h new file mode 100644 index 0000000..c7fb4da --- /dev/null +++ b/src/c/statisticsFunctions/interfaces/int_meanf.h @@ -0,0 +1,183 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_MEANF_H__ +#define __INT_MEANF_H__ + +#define s0s0meanfs0(in1,in2) smeanfs(in1,in2) + +#define d0d0meanfd0(in1,in2) dmeanfs(in1,in2) + +#define c0s0meanfc0(in1,in2) cmeanfs(in1,FloatComplex(in2 , 0.0f)) + +#define z0d0meanfz0(in1,in2) zmeanfs(in1,DoubleComplex(in2, 0.0)) + +#define s2s2meanfs0(in1, size1, in2, size2) smeanfa(in1, size1[0]*size1[1], in2) + +#define d2d2meanfd0(in1, size1, in2, size2) dmeanfa(in1, size1[0]*size1[1], in2) + +#define c2s2meanfc0(in1, size1, in2, size2) cmeanfcs(in1, size1[0], size1[1], in2) + +#define z2d2meanfz0(in1, size1, in2, size2) zmeanfzd(in1, size1[0], size1[1], in2) + + +/*by rows or columns */ + +#define s0s0s0meanfs0(in1,in2,in3) (in3==1) ? srowmeanfs(in1,in2) : scolumnmeanfs(in1,in2) + +#define d0d0d0meanfd0(in1,in2,in3) (in3==1) ? drowmeanfs(in1,in2) : dcolumnmeanfs(in1,in2) + +#define c0s0s0meanfc0(in1,in2,in3) (in3==1) ? crowmeanfs(in1,FloatComplex(in2 , 0.0f)) : ccolumnmeanfs(in1,FloatComplex(in2 , 0.0f)) + +#define z0d0d0meanfz0(in1,in2,in3) (in3==1) ? zrowmeanfs(in1,DoubleComplex(in2, 0.0)) : zcolumnmeanfs(in1,DoubleComplex(in2, 0.0)) + + +#define s2s2s0meanfs2(in1, size1, in2, size2,in3,out) (in3==1) ? srowmeanfa(in1,size1[0],size1[1],in2,out) : scolumnmeanfa(in1,size1[0],size1[1],in2,out) + +#define d2d2d0meanfd2(in1, size1, in2, size2,in3,out) (in3==1) ? drowmeanfa(in1,size1[0],size1[1],in2,out) : dcolumnmeanfa(in1,size1[0],size1[1],in2,out) + + + + + +#define c2s2s0meanfc2(in1, size1, in2, size2,in3,out) if (in3==1) {float* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(float));\ + sfilla(temp,size1[0],size1[1],0);\ + crowmeanfa(in1,size1[0],size1[1],FloatComplexMatrix(in2,temp,size1[0]*size1[1]),out);\ + free(temp);\ + }\ + else\ + {float* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(float));\ + sfilla(temp,size1[0],size1[1],0);\ + ccolumnmeanfa(in1,size1[0],size1[1],FloatComplexMatrix(in2,temp,size1[0]*size1[1]),out);\ + free(temp);\ + } + +#define z2d2d0meanfz2(in1, size1, in2, size2,in3,out) if (in3==1) {double* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(double));\ + dfilla(temp,size1[0],size1[1],0);\ + zrowmeanfa(in1,size1[0],size1[1],DoubleComplexMatrix(in2,temp,size1[0]*size1[1]),out);\ + free(temp);\ + }\ + else\ + {double* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(double));\ + dfilla(temp,size1[0],size1[1],0);\ + zcolumnmeanfa(in1,size1[0],size1[1],DoubleComplexMatrix(in2,temp,size1[0]*size1[1]),out);\ + free(temp);\ + } + + +/**/ + + +#define s0c0meanfs0(in1,in2) creals (cmeanfs(FloatComplex(in1 , 0.0f),in2)) +#define s0c0meanfc0(in1,in2) cmeanfs(FloatComplex(in1 , 0.0f),in2) + +#define d0z0meanfd0(in1,in2) zreals(zmeanfs(DoubleComplex(in1, 0.0 ),in2)) +#define d0z0meanfz0(in1,in2) zmeanfs(DoubleComplex(in1, 0.0 ),in2) + +#define c0c0meanfc0(in1,in2) cmeanfs(in1,in2) + +#define z0z0meanfz0(in1,in2) zmeanfs(in1,in2) + + +#define s2c2meanfs0(in1, size1, in2, size2) creals (cmeanfsc(in1, size1[0],size1[1], in2)) +#define s2c2meanfc0(in1, size1, in2, size2) cmeanfsc(in1, size1[0],size1[1], in2) + +#define d2z2meanfd0(in1, size1, in2, size2) zreals(zmeanfdz(in1, size1[0],size1[1], in2)) +#define d2z2meanfz0(in1, size1, in2, size2) zmeanfdz(in1, size1[0],size1[1], in2) + +#define c2c2meanfc0(in1, size1, in2, size2) cmeanfa(in1, size1[0]* size1[1], in2) + +#define z2z2meanfz0(in1, size1, in2, size2) zmeanfa(in1, size1[0]* size1[1], in2) + + +/*by rows or columns */ + +#define s0c0s0meanfs0(in1,in2,in3) (in3==1) ? crowmeanfs(FloatComplex(in1, 0.0f),in2) : ccolumnmeanfs(FloatComplex(in1, 0.0f),in2) + +#define d0z0d0meanfd0(in1,in2,in3) (in3==1) ? zrowmeanfs(DoubleComplex(in1, 0.0),in2) : zcolumnmeanfs(DoubleComplex(in1, 0.0),in2) + +#define c0c0s0meanfc0(in1,in2,in3) (in3==1) ? crowmeanfs(in1,in2) : ccolumnmeanfs(in1,in2) + +#define z0z0d0meanfz0(in1,in2,in3) (in3==1) ? zrowmeanfs(in1,in2) : zcolumnmeanfs(in1,in2) + + +#define s2c2s0meanfs2(in1, size1, in2, size2,in3,out) if (in3==1) {float* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(float));\ + sfilla(temp,size1[0],size1[1],0);\ + crowmeanfa(FloatComplexMatrix(in1,temp,size1[0]*size1[1]),size1[0],size1[1],in2,out);\ + free(temp);\ + }\ + else\ + {float* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(float));\ + sfilla(temp,size1[0],size1[1],0);\ + ccolumnmeanfa(FloatComplexMatrix(in1,temp,size1[0]*size1[1]),size1[0],size1[1],in2,out);\ + free(temp);\ + } + +#define d2z2d0meanfd2(in1, size1, in2, size2,in3,out) if (in3==1) {double* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(double));\ + dfilla(temp,size1[0],size1[1],0);\ + zrowmeanfa(DoubleComplexMatrix(in1,temp,size1[0]*size1[1]),size1[0],size1[1],in2,out);\ + free(temp);\ + }\ + else\ + {double* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(double));\ + dfilla(temp,size1[0],size1[1],0);\ + zcolumnmeanfa(DoubleComplexMatrix(in1,temp,size1[0]*size1[1]),size1[0],size1[1],in2,out);\ + free(temp);\ + } + +/*complex output*/ +#define s2c2s0meanfc2(in1, size1, in2, size2,in3,out) if (in3==1) {float* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(float));\ + sfilla(temp,size1[0],size1[1],0);\ + crowmeanfa(FloatComplexMatrix(in1,temp,size1[0]*size1[1]),size1[0],size1[1],in2,out);\ + free(temp);\ + }\ + else\ + {float* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(float));\ + sfilla(temp,size1[0],size1[1],0);\ + ccolumnmeanfa(FloatComplexMatrix(in1,temp,size1[0]*size1[1]),size1[0],size1[1],in2,out);\ + free(temp);\ + } + +#define d2z2d0meanfz2(in1, size1, in2, size2,in3,out) if (in3==1) {double* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(double));\ + dfilla(temp,size1[0],size1[1],0);\ + zrowmeanfa(DoubleComplexMatrix(in1,temp,size1[0]*size1[1]),size1[0],size1[1],in2,out);\ + free(temp);\ + }\ + else\ + {double* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(double));\ + dfilla(temp,size1[0],size1[1],0);\ + zcolumnmeanfa(DoubleComplexMatrix(in1,temp,size1[0]*size1[1]),size1[0],size1[1],in2,out);\ + free(temp);\ + } + + + +#define c2c2s0meanfc2(in1, size1, in2, size2,in3,out) (in3==1) ? crowmeanfa(in1,size1[0],size1[1],in2,out) : ccolumnmeanfa(in1,size1[0],size1[1],in2,out) + +#define z2z2d0meanfz2(in1, size1, in2, size2,in3,out) (in3==1) ? zrowmeanfa(in1,size1[0],size1[1],in2,out) : zcolumnmeanfa(in1,size1[0],size1[1],in2,out) + + +#endif /* !__INT_MEANF_H__ */ diff --git a/src/c/statisticsFunctions/interfaces/int_prod.h b/src/c/statisticsFunctions/interfaces/int_prod.h new file mode 100644 index 0000000..dfec854 --- /dev/null +++ b/src/c/statisticsFunctions/interfaces/int_prod.h @@ -0,0 +1,71 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_PROD_H__ +#define __INT_PROD_H__ + +#define s0prods0(in) sprods(in) + +#define d0prodd0(in) dprods(in) + +#define c0prodc0(in) cprods(in) + +#define z0prodz0(in) zprods(in) + +#define s2prods0(in,size) sproda(in, size[0]*size[1]) + +#define d2prodd0(in,size) dproda(in, size[0]*size[1]) + +#define c2prodc0(in,size) cproda(in, size[0]*size[1]) + +#define z2prodz0(in,size) zproda(in, size[0]*size[1]) + + +#define s0s0prods0(in1,in2) (in2==1) ? srowprods(in1) : scolumnprods(in1) + +#define d0d0prodd0(in1,in2) (in2==1) ? drowprods(in1) : dcolumnprods(in1) + +#define c0s0prodc0(in1,in2) (in2==1) ? crowprods(in1) : ccolumnprods(in1) + +#define z0d0prodz0(in1,in2) (in2==1) ? zrowprods(in1) : zcolumnprods(in1) + +#define s2s0prods2(in1,size,in2,out) (in2==1) ? srowproda(in1,size[0],size[1],out) : scolumnproda(in1,size[0],size[1],out) + +#define d2d0prodd2(in1,size,in2,out) (in2==1) ? drowproda(in1,size[0],size[1],out) : dcolumnproda(in1,size[0],size[1],out) + +#define c2s0prodc2(in1,size,in2,out) (in2==1) ? crowproda(in1,size[0],size[1],out) : ccolumnproda(in1,size[0],size[1],out) + +#define z2d0prodz2(in1,size,in2,out) (in2==1) ? zrowproda(in1,size[0],size[1],out) : zcolumnproda(in1,size[0],size[1],out) + + /*'r' and 'c' case */ +#define s0g2prods0(in1,in2,size2) (in2[0]=='r') ? srowprods(in1) : scolumnprods(in1) + +#define d0g2prodd0(in1,in2,size2) (in2[0]=='r') ? drowprods(in1) : dcolumnprods(in1) + +#define c0g2prodc0(in1,in2,size2) (in2[0]=='r') ? crowprods(in1) : ccolumnprods(in1) + +#define z0g2prodz0(in1,in2,size2) (in2[0]=='r') ? zrowprods(in1) : zcolumnprods(in1) + +#define s2g2prods2(in1,size,in2,size2,out) (in2[0]=='r') ? srowproda(in1,size[0],size[1],out) : scolumnproda(in1,size[0],size[1],out) + +#define d2g2prodd2(in1,size,in2,size2,out) (in2[0]=='r') ? drowproda(in1,size[0],size[1],out) : dcolumnproda(in1,size[0],size[1],out) + +#define c2g2prodc2(in1,size,in2,size2,out) (in2[0]=='r') ? crowproda(in1,size[0],size[1],out) : ccolumnproda(in1,size[0],size[1],out) + +#define z2g2prodz2(in1,size,in2,size2,out) (in2[0]=='r') ? zrowproda(in1,size[0],size[1],out) : zcolumnproda(in1,size[0],size[1],out) + + + + +#endif /* !__INT_PROD_H__ */ diff --git a/src/c/statisticsFunctions/interfaces/int_statMax.h b/src/c/statisticsFunctions/interfaces/int_statMax.h new file mode 100644 index 0000000..6d28186 --- /dev/null +++ b/src/c/statisticsFunctions/interfaces/int_statMax.h @@ -0,0 +1,161 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_STATMAX_H__ +#define __INT_STATMAX_H__ +//#ifndef __INT_MAX_H__ +//#define __INT_MAX_H__ + +#define s0maxs0(in) in + +#define d0maxd0(in) in + +#define u80maxu80(in) (uint8)in + +#define u160maxu160(in) (uint16)in + +#define i80maxi80(in) (int8)in + +#define i160maxi160(in) (int16)in + +#define s2maxs0(in,size) smaxa(in, size[0]*size[1]) + +#define d2maxd0(in,size) dmaxa(in, size[0]*size[1]) + +#define c2maxc0(in,size) cmaxa(in, size[0]*size[1]) + +#define z2maxz0(in,size) zmaxa(in, size[0]*size[1]) + +#define u82maxu80(in,size) u8maxa(in, size[0]*size[1]) + +#define u162maxu160(in,size) u16maxa(in, size[0]*size[1]) + +#define i82maxi80(in,size) i8maxa(in, size[0]*size[1]) + +#define i162maxi160(in,size) i16maxa(in, size[0]*size[1]) + + + +#define s0s0maxs0(in1,in2) max(in1,in2) + +#define d0d0maxd0(in1,in2) max(in1,in2) + +#define u80u80maxu80(in1,in2) max(in1,in2) + +#define u160u160maxu160(in1,in2) max(in1,in2) + +#define i80i80maxi80(in1,in2) max(in1,in2) + +#define i160i160maxi160(in1,in2) max(in1,in2) + +#define s2s2maxs2(in1,size1,in2,size2,out) maxa(in1, size1, in2, size2, out) + +#define d2d2maxd2(in1,size1,in2,size2,out) maxa(in1, size1, in2, size2, out) + +#define u82u82maxu82(in1,size1,in2,size2,out) maxa(in1, size1, in2, size2, out) + +#define u162u162maxu162(in1,size1,in2,size2,out) maxa(in1, size1, in2, size2, out) + +#define i82i82maxi82(in1,size1,in2,size2,out) maxa(in1, size1, in2, size2, out) + +#define i162i162maxi162(in1,size1,in2,size2,out) maxa(in1, size1, in2, size2, out) + + +#define s2s0maxs2(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=max(in1[i],in2);\ + } + +#define d2d0maxd2(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=max(in1[i],in2);\ + } + +#define u82u80maxu82(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=max(in1[i],in2);\ + } + +#define u162u160maxu162(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=max(in1[i],in2);\ + } + +#define i82i80maxi82(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=max(in1[i],in2);\ + } + +#define i162i160maxi162(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=max(in1[i],in2);\ + } + +#define s0s2maxs2(in1,in2,size,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=max(in1,in2[i]);\ + } + +#define d0d2maxd2(in1,in2,size,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=max(in1,in2[i]);\ + } + +#define u80u82maxu82(in1,in2,size,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=max(in1,in2[i]);\ + } + +#define u160u162maxu162(in1,in2,size,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=max(in1,in2[i]);\ + } + +#define i80i82maxi82(in1,in2,size,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=max(in1,in2[i]);\ + } + +#define i160i162maxi162(in1,in2,size,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=max(in1,in2[i]);\ + } + +/*'r' and 'c' case */ +#define s0g2maxs0(in1,in2,size2) (in2[0]=='r') ? srowmaxs(in1) : scolumnmaxs(in1) + +#define d0g2maxd0(in1,in2,size2) (in2[0]=='r') ? drowmaxs(in1) : dcolumnmaxs(in1) + +#define c0g2maxc0(in1,in2,size2) (in2[0]=='r') ? crowmaxs(in1) : ccolumnmaxs(in1) + +#define z0g2maxz0(in1,in2,size2) (in2[0]=='r') ? zrowmaxs(in1) : zcolumnmaxs(in1) + +#define u80g2maxu80(in1,in2,size2) (in2[0]=='r') ? u8rowmaxs(in1) : u8columnmaxs(in1) + +#define u160g2maxu160(in1,in2,size2) (in2[0]=='r') ? u16rowmaxs(in1) : u16columnmaxs(in1) + +#define i80g2maxi80(in1,in2,size2) (in2[0]=='r') ? i8rowmaxs(in1) : i8columnmaxs(in1) + +#define i160g2maxi160(in1,in2,size2) (in2[0]=='r') ? i16rowmaxs(in1) : i16columnmaxs(in1) + + +#define s2g2maxs2(in1,size1,in2,size2,out) (in2[0]=='r') ? srowmaxa(in1,size1[0],size1[1],out) : scolumnmaxa(in1,size1[0],size1[1],out) + +#define d2g2maxd2(in1,size1,in2,size2,out) (in2[0]=='r') ? drowmaxa(in1,size1[0],size1[1],out) : dcolumnmaxa(in1,size1[0],size1[1],out) + +#define c2g2maxc2(in1,size1,in2,size2,out) (in2[0]=='r') ? crowmaxa(in1,size1[0],size1[1],out) : ccolumnmaxa(in1,size1[0],size1[1],out) + +#define z2g2maxz2(in1,size1,in2,size2,out) (in2[0]=='r') ? zrowmaxa(in1,size1[0],size1[1],out) : zcolumnmaxa(in1,size1[0],size1[1],out) + +#define u82g2maxu82(in1,size1,in2,size2,out) (in2[0]=='r') ? u8rowmaxa(in1,size1[0],size1[1],out) : u8columnmaxa(in1,size1[0],size1[1],out) + +#define u162g2maxu162(in1,size1,in2,size2,out) (in2[0]=='r') ? u16rowmaxa(in1,size1[0],size1[1],out) : u16columnmaxa(in1,size1[0],size1[1],out) + +#define i82g2maxi82(in1,size1,in2,size2,out) (in2[0]=='r') ? i8rowmaxa(in1,size1[0],size1[1],out) : i8columnmaxa(in1,size1[0],size1[1],out) + +#define i162g2maxi162(in1,size1,in2,size2,out) (in2[0]=='r') ? i16rowmaxa(in1,size1[0],size1[1],out) : i16columnmaxa(in1,size1[0],size1[1],out) + + + + + +#endif /* !__INT_STATMAX_H__ */ diff --git a/src/c/statisticsFunctions/interfaces/int_statMin.h b/src/c/statisticsFunctions/interfaces/int_statMin.h new file mode 100644 index 0000000..39187ef --- /dev/null +++ b/src/c/statisticsFunctions/interfaces/int_statMin.h @@ -0,0 +1,162 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_STATMIN_H__ +#define __INT_STATMIN_H__ +//#ifndef __INT_MIN_H__ +//#define __INT_MIN_H__ + +#define s0mins0(in) in + +#define d0mind0(in) in + +#define u80minu80(in) (uint8)in + +#define u160minu160(in) (uint16)in + +#define i80mini80(in) (int8)in + +#define i160mini160(in) (int16)in + +#define s2mins0(in,size) smina(in, size[0]*size[1]) + +#define d2mind0(in,size) dmina(in, size[0]*size[1]) + +#define c2minc0(in,size) cmina(in, size[0]*size[1]) + +#define z2minz0(in,size) zmina(in, size[0]*size[1]) + +#define u82minu80(in,size) u8mina(in, size[0]*size[1]) + +#define u162minu160(in,size) u16mina(in, size[0]*size[1]) + +#define i82mini80(in,size) i8mina(in, size[0]*size[1]) + +#define i162mini160(in,size) i16mina(in, size[0]*size[1]) + + + +#define s0s0mins0(in1,in2) min(in1,in2) + +#define d0d0mind0(in1,in2) min(in1,in2) + +#define u80u80minu80(in1,in2) min(in1,in2) + +#define u160u160minu160(in1,in2) min(in1,in2) + +#define i80i80mini80(in1,in2) min(in1,in2) + +#define i160i160mini160(in1,in2) min(in1,in2) + +#define s2s2mins2(in1,size1,in2,size2,out) mina(in1, size1, in2, size2, out) + +#define d2d2mind2(in1,size1,in2,size2,out) mina(in1, size1, in2, size2, out) + +#define u82u82minu82(in1,size1,in2,size2,out) mina(in1, size1, in2, size2, out) + +#define u162u162minu162(in1,size1,in2,size2,out) mina(in1, size1, in2, size2, out) + +#define i82i82mini82(in1,size1,in2,size2,out) mina(in1, size1, in2, size2, out) + +#define i162i162mini162(in1,size1,in2,size2,out) mina(in1, size1, in2, size2, out) + + +#define s2s0mins2(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=min(in1[i],in2);\ + } + +#define d2d0mind2(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=min(in1[i],in2);\ + } + +#define u82u80minu82(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=min(in1[i],in2);\ + } + +#define u162u160minu162(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=min(in1[i],in2);\ + } + +#define i82i80mini82(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=min(in1[i],in2);\ + } + +#define i162i160mini162(in1,size,in2,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=min(in1[i],in2);\ + } + +#define s0s2mins2(in1,in2,size,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=min(in1,in2[i]);\ + } + +#define d0d2mind2(in1,in2,size,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=min(in1,in2[i]);\ + } + +#define u80u82minu82(in1,in2,size,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=min(in1,in2[i]);\ + } + +#define u160u162minu162(in1,in2,size,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=min(in1,in2[i]);\ + } + +#define i80i82mini82(in1,in2,size,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=min(in1,in2[i]);\ + } + +#define i160i162mini162(in1,in2,size,out) {int i;\ + for (i=0;i<size[0]*size[1];i++) out[i]=min(in1,in2[i]);\ + } + + +/*'r' and 'c' case */ +#define s0g2mins0(in1,in2,size2) (in2[0]=='r') ? srowmins(in1) : scolumnmins(in1) + +#define d0g2mind0(in1,in2,size2) (in2[0]=='r') ? drowmins(in1) : dcolumnmins(in1) + +#define c0g2minc0(in1,in2,size2) (in2[0]=='r') ? crowmins(in1) : ccolumnmins(in1) + +#define z0g2minz0(in1,in2,size2) (in2[0]=='r') ? zrowmins(in1) : zcolumnmins(in1) + +#define u80g2minu80(in1,in2,size2) (in2[0]=='r') ? u8rowmins(in1) : u8columnmins(in1) + +#define u160g2minu160(in1,in2,size2) (in2[0]=='r') ? u16rowmins(in1) : u16columnmins(in1) + +#define i80g2mini80(in1,in2,size2) (in2[0]=='r') ? i8rowmins(in1) : i8columnmins(in1) + +#define i160g2mini160(in1,in2,size2) (in2[0]=='r') ? i16rowmins(in1) : i16columnmins(in1) + + +#define s2g2mins2(in1,size,in2,size2,out) (in2[0]=='r') ? srowmina(in1,size[0],size[1],out) : scolumnmina(in1,size[0],size[1],out) + +#define d2g2mind2(in1,size,in2,size2,out) (in2[0]=='r') ? drowmina(in1,size[0],size[1],out) : dcolumnmina(in1,size[0],size[1],out) + +#define c2g2minc2(in1,size,in2,size2,out) (in2[0]=='r') ? crowmina(in1,size[0],size[1],out) : ccolumnmina(in1,size[0],size[1],out) + +#define z2g2minz2(in1,size,in2,size2,out) (in2[0]=='r') ? zrowmina(in1,size[0],size[1],out) : zcolumnmina(in1,size[0],size[1],out) + +#define u82g2minu82(in1,size,in2,size2,out) (in2[0]=='r') ? u8rowmina(in1,size[0],size[1],out) : u8columnmina(in1,size[0],size[1],out) + +#define u162g2minu162(in1,size,in2,size2,out) (in2[0]=='r') ? u16rowmina(in1,size[0],size[1],out) : u16columnmina(in1,size[0],size[1],out) + +#define i82g2mini82(in1,size,in2,size2,out) (in2[0]=='r') ? i8rowmina(in1,size[0],size[1],out) : i8columnmina(in1,size[0],size[1],out) + +#define i162g2mini162(in1,size,in2,size2,out) (in2[0]=='r') ? i16rowmina(in1,size[0],size[1],out) : i16columnmina(in1,size[0],size[1],out) + + + + + +#endif /* !__INT_STATMIN_H__ */ diff --git a/src/c/statisticsFunctions/interfaces/int_stdevf.h b/src/c/statisticsFunctions/interfaces/int_stdevf.h new file mode 100644 index 0000000..940b415 --- /dev/null +++ b/src/c/statisticsFunctions/interfaces/int_stdevf.h @@ -0,0 +1,188 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_STDEVF_H__ +#define __INT_STDEVF_H__ + +#define s0s0stdevfs0(in1,in2) sstdevfs(in1,in2) + +#define d0d0stdevfd0(in1,in2) dstdevfs(in1,in2) + +#define c0s0stdevfc0(in1,in2) cstdevfs(in1,FloatComplex(in2 , 0.0f)) + +#define z0d0stdevfz0(in1,in2) zstdevfs(in1,DoubleComplex(in2, 0.0)) + +#define s2s2stdevfs0(in1, size1, in2, size2) sstdevfa(in1, size1[0],size1[1], in2) + +#define d2d2stdevfd0(in1, size1, in2, size2) dstdevfa(in1, size1[0],size1[1], in2) + +#define c2s2stdevfc0(in1, size1, in2, size2) cstdevfcs(in1, size1[0], size1[1], in2) + +#define z2d2stdevfz0(in1, size1, in2, size2) zstdevfzd(in1, size1[0], size1[1], in2) + + +/*by rows or columns */ + +#define s0s0s0stdevfs0(in1,in2,in3) (in3==1) ? srowstdevfs(in1,in2) : scolumnstdevfs(in1,in2) + +#define d0d0d0stdevfd0(in1,in2,in3) (in3==1) ? drowstdevfs(in1,in2) : dcolumnstdevfs(in1,in2) + +#define c0s0s0stdevfc0(in1,in2,in3) (in3==1) ? crowstdevfs(in1,FloatComplex(in2 , 0.0f)) : ccolumnstdevfs(in1,FloatComplex(in2 , 0.0f)) + +#define z0d0d0stdevfz0(in1,in2,in3) (in3==1) ? zrowstdevfs(in1,DoubleComplex(in2, 0.0)) : zcolumnstdevfs(in1,DoubleComplex(in2, 0.0)) + + +#define s2s2s0stdevfs2(in1, size1, in2, size2,in3,out) (in3==1) ? srowstdevfa(in1,size1[0],size1[1],in2,out) : scolumnstdevfa(in1,size1[0],size1[1],in2,out) + +#define d2d2d0stdevfd2(in1, size1, in2, size2,in3,out) (in3==1) ? drowstdevfa(in1,size1[0],size1[1],in2,out) : dcolumnstdevfa(in1,size1[0],size1[1],in2,out) + + + + + +#define c2s2s0stdevfc2(in1, size1, in2, size2,in3,out) if (in3 == 1) {float* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(float));\ + sfilla(temp,size1[0],size1[1],0);\ + crowstdevfa(in1,size1[0],size1[1],FloatComplexMatrix(in2,temp,size1[0]*size1[1]),out);\ + free(temp);\ + }\ + else\ + {float* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(float));\ + sfilla(temp,size1[0],size1[1],0);\ + ccolumnstdevfa(in1,size1[0],size1[1],FloatComplexMatrix(in2,temp,size1[0]*size1[1]),out);\ + free(temp);\ + } + +#define z2d2d0stdevfz2(in1, size1, in2, size2,in3,out) if (in3 == 1) {double* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(double));\ + dfilla(temp,size1[0],size1[1],0);\ + zrowstdevfa(in1,size1[0],size1[1],DoubleComplexMatrix(in2,temp,size1[0]*size1[1]),out);\ + free(temp);\ + }\ + else\ + {double* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(double));\ + dfilla(temp,size1[0],size1[1],0);\ + zcolumnstdevfa(in1,size1[0],size1[1],DoubleComplexMatrix(in2,temp,size1[0]*size1[1]),out);\ + free(temp);\ + } + + +/**/ + + +#define s0c0stdevfs0(in1,in2) creals (cstdevfs(FloatComplex(in1 , 0.0f),in2)) +#define s0c0stdevfc0(in1,in2) cstdevfs(FloatComplex(in1 , 0.0f),in2) + +#define d0z0stdevfd0(in1,in2) zreals(zstdevfs(DoubleComplex(in1, 0.0 ),in2) +#define d0z0stdevfz0(in1,in2) zstdevfs(DoubleComplex(in1, 0.0 ),in2) + + +#define c0c0stdevfc0(in1,in2) cstdevfs(in1,in2) + +#define z0z0stdevfz0(in1,in2) zstdevfs(in1,in2) + + +#define s2c2stdevfs0(in1, size1, in2, size2) creals(cstdevfsc(in1, size1[0],size1[1], in2)) +#define s2c2stdevfc0(in1, size1, in2, size2) cstdevfsc(in1, size1[0],size1[1], in2) + +#define d2z2stdevfd0(in1, size1, in2, size2) zreals(zstdevfdz(in1, size1[0],size1[1], in2)) +#define d2z2stdevfz0(in1, size1, in2, size2) zstdevfdz(in1, size1[0],size1[1], in2) + +#define c2c2stdevfc0(in1, size1, in2, size2) cstdevfa(in1, size1[0], size1[1], in2) + +#define z2z2stdevfz0(in1, size1, in2, size2) zstdevfa(in1, size1[0], size1[1], in2) + + +/*by rows or columns */ + +#define s0c0s0stdevfs0(in1,in2,in3) (in3==1) ? creals(crowstdevfs(FloatComplex(in1, 0.0f),in2)) : creals(ccolumnstdevfs(FloatComplex(in1, 0.0f),in2)) + +#define d0z0d0stdevfd0(in1,in2,in3) (in3==1) ? zreals(zrowstdevfs(DoubleComplex(in1, 0.0),in2)) : zreals(zcolumnstdevfs(DoubleComplex(in1, 0.0),in2)) + +#define c0c0s0stdevfc0(in1,in2,in3) (in3==1) ? crowstdevfs(in1,in2) : ccolumnstdevfs(in1,in2) + +#define z0z0d0stdevfz0(in1,in2,in3) (in3==1) ? zrowstdevfs(in1,in2) : zcolumnstdevfs(in1,in2) + + +#define s2c2s0stdevfs2(in1, size1, in2, size2,in3,out) if (in3 == 1) {float* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(float));\ + sfilla(temp,size1[0],size1[1],0);\ + crowstdevfa(FloatComplexMatrix(in1,temp,size1[0]*size1[1]),size1[0],size1[1],in2,FloatComplexMatrix(out,temp,size1[0]*size1[1]));\ + free(temp);\ + }\ + else\ + {float* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(float));\ + sfilla(temp,size1[0],size1[1],0);\ + ccolumnstdevfa(FloatComplexMatrix(in1,temp,size1[0]*size1[1]),size1[0],size1[1],in2,FloatComplexMatrix(out,temp,size1[0]*size1[1]));\ + free(temp);\ + } + +#define d2z2d0stdevfd2(in1, size1, in2, size2,in3,out) if (in3 == 1) {double* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(double));\ + dfilla(temp,size1[0],size1[1],0);\ + zrowstdevfa(DoubleComplexMatrix(in1,temp,size1[0]*size1[1]),size1[0],size1[1],in2,DoubleComplexMatrix(out,temp,size1[0]));\ + free(temp);\ + }\ + else\ + {double* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(double));\ + dfilla(temp,size1[0],size1[1],0);\ + zcolumnstdevfa(DoubleComplexMatrix(in1,temp,size1[0]*size1[1]),size1[0],size1[1],in2,DoubleComplexMatrix(out,temp,size1[0]));\ + free(temp);\ + } + + +/*complex output*/ + +#define s2c2s0stdevfc2(in1, size1, in2, size2,in3,out) if (in3 == 1) {float* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(float));\ + sfilla(temp,size1[0],size1[1],0);\ + crowstdevfa(FloatComplexMatrix(in1,temp,size1[0]*size1[1]),size1[0],size1[1],in2,out);\ + free(temp);\ + }\ + else\ + {float* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(float));\ + sfilla(temp,size1[0],size1[1],0);\ + ccolumnstdevfa(FloatComplexMatrix(in1,temp,size1[0]*size1[1]),size1[0],size1[1],in2,out);\ + free(temp);\ + } + +#define d2z2d0stdevfz2(in1, size1, in2, size2,in3,out) if (in3 == 1) {double* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(double));\ + dfilla(temp,size1[0],size1[1],0);\ + zrowstdevfa(DoubleComplexMatrix(in1,temp,size1[0]*size1[1]),size1[0],size1[1],in2,out);\ + free(temp);\ + }\ + else\ + {double* temp;\ + temp=malloc((uint)(size1[0]*size1[1])*sizeof(double));\ + dfilla(temp,size1[0],size1[1],0);\ + zcolumnstdevfa(DoubleComplexMatrix(in1,temp,size1[0]*size1[1]),size1[0],size1[1],in2,out);\ + free(temp);\ + } + + + +#define c2c2s0stdevfc2(in1, size1, in2, size2,in3,out) (in3==1) ? crowstdevfa(in1,size1[0],size1[1],in2,out) : ccolumnstdevfa(in1,size1[0],size1[1],in2,out) + +#define z2z2d0stdevfz2(in1, size1, in2, size2,in3,out) (in3==1) ? zrowstdevfa(in1,size1[0],size1[1],in2,out) : zcolumnstdevfa(in1,size1[0],size1[1],in2,out) + + +/**/ + +#endif /* !__INT_STDEVF_H__ */ diff --git a/src/c/statisticsFunctions/interfaces/int_sum.h b/src/c/statisticsFunctions/interfaces/int_sum.h new file mode 100644 index 0000000..08f01fe --- /dev/null +++ b/src/c/statisticsFunctions/interfaces/int_sum.h @@ -0,0 +1,70 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_SUM_H__ +#define __INT_SUM_H__ + +#define s0sums0(in) ssums(in) + +#define d0sumd0(in) dsums(in) + +#define c0sumc0(in) csums(in) + +#define z0sumz0(in) zsums(in) + +#define s2sums0(in,size) ssuma(in, size[0]*size[1]) + +#define d2sumd0(in,size) dsuma(in, size[0]*size[1]) + +#define c2sumc0(in,size) csuma(in, size[0]*size[1]) + +#define z2sumz0(in,size) zsuma(in, size[0]*size[1]) + + +#define s0s0sums0(in1,in2) (in2==1) ? srowsums(in1) : scolumnsums(in1) + +#define d0d0sumd0(in1,in2) (in2==1) ? drowsums(in1) : dcolumnsums(in1) + +#define c0s0sumc0(in1,in2) (in2==1) ? crowsums(in1) : ccolumnsums(in1) + +#define z0d0sumz0(in1,in2) (in2==1) ? zrowsums(in1) : zcolumnsums(in1) + +#define s2s0sums2(in1,size,in2,out) (in2==1) ? srowsuma(in1,size[0],size[1],out) : scolumnsuma(in1,size[0],size[1],out) + +#define d2d0sumd2(in1,size,in2,out) (in2==1) ? drowsuma(in1,size[0],size[1],out) : dcolumnsuma(in1,size[0],size[1],out) + +#define c2s0sumc2(in1,size,in2,out) (in2==1) ? crowsuma(in1,size[0],size[1],out) : ccolumnsuma(in1,size[0],size[1],out) + +#define z2d0sumz2(in1,size,in2,out) (in2==1) ? zrowsuma(in1,size[0],size[1],out) : zcolumnsuma(in1,size[0],size[1],out) + + +/*'r' and 'c' case */ +#define s0g2sums0(in1,in2,size2) (in2[0]=='r') ? srowsums(in1) : scolumnsums(in1) + +#define d0g2sumd0(in1,in2,size2) (in2[0]=='r') ? drowsums(in1) : dcolumnsums(in1) + +#define c0g2sumc0(in1,in2,size2) (in2[0]=='r') ? crowsums(in1) : ccolumnsums(in1) + +#define z0g2sumz0(in1,in2,size2) (in2[0]=='r') ? zrowsums(in1) : zcolumnsums(in1) + +#define s2g2sums2(in1,size,in2,size2,out) (in2[0]=='r') ? srowsuma(in1,size[0],size[1],out) : scolumnsuma(in1,size[0],size[1],out) + +#define d2g2sumd2(in1,size,in2,size2,out) (in2[0]=='r') ? drowsuma(in1,size[0],size[1],out) : dcolumnsuma(in1,size[0],size[1],out) + +#define c2g2sumc2(in1,size,in2,size2,out) (in2[0]=='r') ? crowsuma(in1,size[0],size[1],out) : ccolumnsuma(in1,size[0],size[1],out) + +#define z2g2sumz2(in1,size,in2,size2,out) (in2[0]=='r') ? zrowsuma(in1,size[0],size[1],out) : zcolumnsuma(in1,size[0],size[1],out) + + +#endif /* !__INT_SUM_H__ */ diff --git a/src/c/statisticsFunctions/interfaces/int_variance.h b/src/c/statisticsFunctions/interfaces/int_variance.h new file mode 100644 index 0000000..dfc191c --- /dev/null +++ b/src/c/statisticsFunctions/interfaces/int_variance.h @@ -0,0 +1,71 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_VARIANCE_H__ +#define __INT_VARIANCE_H__ + +#define s0variances0(in) svariances(in) + +#define d0varianced0(in) dvariances(in) + +#define c0variancec0(in) cvariances(in) + +#define z0variancez0(in) zvariances(in) + +#define s2variances0(in,size) svariancea(in, size[0]*size[1]) + +#define d2varianced0(in,size) dvariancea(in, size[0]*size[1]) + +#define c2variancec0(in,size) cvariancea(in, size[0]*size[1]) + +#define z2variancez0(in,size) zvariancea(in, size[0]*size[1]) + + +#define s0s0variances0(in1,in2) (in2==1) ? srowvariances(in1) : scolumnvariances(in1) + +#define d0d0varianced0(in1,in2) (in2==1) ? drowvariances(in1) : dcolumnvariances(in1) + +#define c0s0variancec0(in1,in2) (in2==1) ? crowvariances(in1) : ccolumnvariances(in1) + +#define z0d0variancez0(in1,in2) (in2==1) ? zrowvariances(in1) : zcolumnvariances(in1) + +#define s2s0variances2(in1,size,in2,out) (in2==1) ? srowvariancea(in1,size[0],size[1],out) : scolumnvariancea(in1,size[0],size[1],out) + +#define d2d0varianced2(in1,size,in2,out) (in2==1) ? drowvariancea(in1,size[0],size[1],out) : dcolumnvariancea(in1,size[0],size[1],out) + +#define c2s0variancec2(in1,size,in2,out) (in2==1) ? crowvariancea(in1,size[0],size[1],out) : ccolumnvariancea(in1,size[0],size[1],out) + +#define z2d0variancez2(in1,size,in2,out) (in2==1) ? zrowvariancea(in1,size[0],size[1],out) : zcolumnvariancea(in1,size[0],size[1],out) + + + /*'r' and 'c' case */ +#define s0g2variances0(in1,in2,size2) (in2[0]=='r') ? srowvariances(in1) : scolumnvariances(in1) + +#define d0g2varianced0(in1,in2,size2) (in2[0]=='r') ? drowvariances(in1) : dcolumnvariances(in1) + +#define c0g2variancec0(in1,in2,size2) (in2[0]=='r') ? crowvariances(in1) : ccolumnvariances(in1) + +#define z0g2variancez0(in1,in2,size2) (in2[0]=='r') ? zrowvariances(in1) : zcolumnvariances(in1) + +#define s2g2variances2(in1,size,in2,size2,out) (in2[0]=='r') ? srowvariancea(in1,size[0],size[1],out) : scolumnvariancea(in1,size[0],size[1],out) + +#define d2g2varianced2(in1,size,in2,size2,out) (in2[0]=='r') ? drowvariancea(in1,size[0],size[1],out) : dcolumnvariancea(in1,size[0],size[1],out) + +#define c2g2variancec2(in1,size,in2,size2,out) (in2[0]=='r') ? crowvariancea(in1,size[0],size[1],out) : ccolumnvariancea(in1,size[0],size[1],out) + +#define z2g2variancez2(in1,size,in2,size2,out) (in2[0]=='r') ? zrowvariancea(in1,size[0],size[1],out) : zcolumnvariancea(in1,size[0],size[1],out) + + + +#endif /* !__INT_VARIANCE_H__ */ diff --git a/src/c/statisticsFunctions/interfaces/int_variancef.h b/src/c/statisticsFunctions/interfaces/int_variancef.h new file mode 100644 index 0000000..dfac1a3 --- /dev/null +++ b/src/c/statisticsFunctions/interfaces/int_variancef.h @@ -0,0 +1,58 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +/* THIS IS AN AUTOMATICALLY GENERATED FILE : DO NOT EDIT BY HAND. */ + +#ifndef __INT_VARIANCEF_H__ +#define __INT_VARIANCEF_H__ + +#define s0s0variancefs0(in1,in2) svariancefs(in1,in2) + +#define d0d0variancefd0(in1,in2) dvariancefs(in1,in2) + +#define c0s0variancefc0(in1,in2) cvariancefs(in1,in2) + +#define z0d0variancefz0(in1,in2) zvariancefs(in1,in2) + +#define s2s2variancefs0(in1, size1, in2, size2) svariancefa(in1, size1[0]*size1[1], in2) + +#define d2d2variancefd0(in1, size1, in2, size2) dvariancefa(in1, size1[0]*size1[1], in2) + +#define c2s2variancefc0(in1, size1, in2, size2) cvariancefv(in1, size1[0], size1[1], in2) + +#define z2d2variancefz0(in1, size1, in2, size2) zvariancefv(in1, size1[0], size1[1], in2) + + +/*by rows or columns */ + +#define s0s0s0variancefs0(in1,in2,in3) (in3==1) ? srowvariancefs(in1,in2) : scolumnvariancefs(in1,in2) + +#define d0d0d0variancefd0(in1,in2,in3) (in3==1) ? drowvariancefs(in1,in2) : dcolumnvariancefs(in1,in2) + +#define c0s0s0variancefc0(in1,in2,in3) (in3==1) ? crowvariancefs(in1,in2) : ccolumnvariancefs(in1,in2) + +#define z0d0d0variancefz0(in1,in2,in3) (in3==1) ? zrowvariancefs(in1,in2) : zcolumnvariancefs(in1,in2) + +#define s2s2s0variancefs2(in1, size1, in2, size2,in3,out) (in3==1) ? srowvariancefa(in1,size1[0],size1[1],in2,out) : scolumnvariancefa(in1,size1[0],size1[1],in2,out) + +#define d2d2d0variancefd2(in1, size1, in2, size2,in3,out) (in3==1) ? drowvariancefa(in1,size1[0],size1[1],in2,out) : dcolumnvariancefa(in1,size1[0],size1[1],in2,out) + +#define c2s2s0variancefc2(in1, size1, in2, size2,in3,out) (in3==1) ? crowvariancefa(in1,size1[0],size1[1],in2,out) : ccolumnvariancefa(in1,size1[0],size1[1],in2,out) + +#define z2d2d0variancefz2(in1, size1, in2, size2,in3,out) (in3==1) ? zrowvariancefa(in1,size1[0],size1[1],in2,out) : zcolumnvariancefa(in1,size1[0],size1[1],in2,out) + +/* +#define d2d2d0variancefd2(in1,size1,in2,size2 ,in3 ,out) (in3==1) ? drowvariancefa(in1,size1[0],size1[1],in2 ,out) : dcolumnvariancefa(in1,size1[0],size1[1], in2,out) +*/ + + +#endif /* !__INT_VARIANCEF_H__ */ diff --git a/src/c/statisticsFunctions/max/Makefile.am b/src/c/statisticsFunctions/max/Makefile.am new file mode 100644 index 0000000..8c12256 --- /dev/null +++ b/src/c/statisticsFunctions/max/Makefile.am @@ -0,0 +1,51 @@ +## +## Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +## Copyright (C) 2006-2008 - INRIA - Bruno JOFRET +## +## This file must be used under the terms of the CeCILL. +## This source file is licensed as described in the file COPYING, which +## you should have received as part of this distribution. The terms +## are also available at +## http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt +## +## + +libMax_la_CFLAGS = -I $(top_builddir)/src/c/statisticsFunctions/includes + +instdir = $(top_builddir)/lib + +pkglib_LTLIBRARIES = libMax.la + +libMax_la_SOURCES = $(HEAD) $(SRC) + +SRC = smaxa.c \ + srowmaxa.c \ + scolumnmaxa.c \ + dmaxa.c \ + drowmaxa.c \ + dcolumnmaxa.c + +HEAD = ../includes/statMax.h + +#### +# Checking Part +#### + +check_INCLUDES = -I $(top_builddir)/src/c/statisticsFunctions/includes + +check_LDADD = $(top_builddir)/src/c/statisticsFunctions/max/libMax.la + +check_PROGRAMS = testFloatMax testDoubleMax + +TESTS = testFloatMax testDoubleMax + +# +# -*- Max Tests -*- +# +testFloatMax_SOURCES = testFloatMax.c +testFloatMax_CFLAGS = $(check_INCLUDES) +testFloatMax_LDADD = $(check_LDADD) + +testDoubleMax_SOURCES =testDoubleMax.c +testDoubleMax_CFLAGS = $(check_INCLUDES) +testDoubleMax_LDADD = $(check_LDADD) diff --git a/src/c/statisticsFunctions/max/Makefile.in b/src/c/statisticsFunctions/max/Makefile.in new file mode 100644 index 0000000..5298c5a --- /dev/null +++ b/src/c/statisticsFunctions/max/Makefile.in @@ -0,0 +1,759 @@ +# Makefile.in generated by automake 1.11.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +check_PROGRAMS = testFloatMax$(EXEEXT) testDoubleMax$(EXEEXT) +TESTS = testFloatMax$(EXEEXT) testDoubleMax$(EXEEXT) +subdir = src/c/statisticsFunctions/max +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/includes/machine.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__installdirs = "$(DESTDIR)$(pkglibdir)" +LTLIBRARIES = $(pkglib_LTLIBRARIES) +libMax_la_LIBADD = +am__objects_1 = +am__objects_2 = libMax_la-smaxa.lo libMax_la-srowmaxa.lo \ + libMax_la-scolumnmaxa.lo libMax_la-dmaxa.lo \ + libMax_la-drowmaxa.lo libMax_la-dcolumnmaxa.lo +am_libMax_la_OBJECTS = $(am__objects_1) $(am__objects_2) +libMax_la_OBJECTS = $(am_libMax_la_OBJECTS) +libMax_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(libMax_la_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +am_testDoubleMax_OBJECTS = testDoubleMax-testDoubleMax.$(OBJEXT) +testDoubleMax_OBJECTS = $(am_testDoubleMax_OBJECTS) +testDoubleMax_DEPENDENCIES = $(check_LDADD) +testDoubleMax_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testDoubleMax_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +am_testFloatMax_OBJECTS = testFloatMax-testFloatMax.$(OBJEXT) +testFloatMax_OBJECTS = $(am_testFloatMax_OBJECTS) +testFloatMax_DEPENDENCIES = $(check_LDADD) +testFloatMax_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testFloatMax_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/includes +depcomp = $(SHELL) $(top_srcdir)/config/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +CCLD = $(CC) +LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ + $(LDFLAGS) -o $@ +SOURCES = $(libMax_la_SOURCES) $(testDoubleMax_SOURCES) \ + $(testFloatMax_SOURCES) +DIST_SOURCES = $(libMax_la_SOURCES) $(testDoubleMax_SOURCES) \ + $(testFloatMax_SOURCES) +ETAGS = etags +CTAGS = ctags +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +F77 = @F77@ +FFLAGS = @FFLAGS@ +FGREP = @FGREP@ +GREP = @GREP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBMATH = @LIBMATH@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +ac_ct_F77 = @ac_ct_F77@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +lt_ECHO = @lt_ECHO@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +libMax_la_CFLAGS = -I $(top_builddir)/src/c/statisticsFunctions/includes +instdir = $(top_builddir)/lib +pkglib_LTLIBRARIES = libMax.la +libMax_la_SOURCES = $(HEAD) $(SRC) +SRC = smaxa.c \ + srowmaxa.c \ + scolumnmaxa.c \ + dmaxa.c \ + drowmaxa.c \ + dcolumnmaxa.c + +HEAD = ../includes/statMax.h + +#### +# Checking Part +#### +check_INCLUDES = -I $(top_builddir)/src/c/statisticsFunctions/includes +check_LDADD = $(top_builddir)/src/c/statisticsFunctions/max/libMax.la + +# +# -*- Max Tests -*- +# +testFloatMax_SOURCES = testFloatMax.c +testFloatMax_CFLAGS = $(check_INCLUDES) +testFloatMax_LDADD = $(check_LDADD) +testDoubleMax_SOURCES = testDoubleMax.c +testDoubleMax_CFLAGS = $(check_INCLUDES) +testDoubleMax_LDADD = $(check_LDADD) +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/c/statisticsFunctions/max/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/c/statisticsFunctions/max/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): +install-pkglibLTLIBRARIES: $(pkglib_LTLIBRARIES) + @$(NORMAL_INSTALL) + test -z "$(pkglibdir)" || $(MKDIR_P) "$(DESTDIR)$(pkglibdir)" + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + list2=; for p in $$list; do \ + if test -f $$p; then \ + list2="$$list2 $$p"; \ + else :; fi; \ + done; \ + test -z "$$list2" || { \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(pkglibdir)'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(pkglibdir)"; \ + } + +uninstall-pkglibLTLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(pkglibdir)/$$f'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(pkglibdir)/$$f"; \ + done + +clean-pkglibLTLIBRARIES: + -test -z "$(pkglib_LTLIBRARIES)" || rm -f $(pkglib_LTLIBRARIES) + @list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done +libMax.la: $(libMax_la_OBJECTS) $(libMax_la_DEPENDENCIES) + $(libMax_la_LINK) -rpath $(pkglibdir) $(libMax_la_OBJECTS) $(libMax_la_LIBADD) $(LIBS) + +clean-checkPROGRAMS: + @list='$(check_PROGRAMS)'; test -n "$$list" || exit 0; \ + echo " rm -f" $$list; \ + rm -f $$list || exit $$?; \ + test -n "$(EXEEXT)" || exit 0; \ + list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f" $$list; \ + rm -f $$list +testDoubleMax$(EXEEXT): $(testDoubleMax_OBJECTS) $(testDoubleMax_DEPENDENCIES) + @rm -f testDoubleMax$(EXEEXT) + $(testDoubleMax_LINK) $(testDoubleMax_OBJECTS) $(testDoubleMax_LDADD) $(LIBS) +testFloatMax$(EXEEXT): $(testFloatMax_OBJECTS) $(testFloatMax_DEPENDENCIES) + @rm -f testFloatMax$(EXEEXT) + $(testFloatMax_LINK) $(testFloatMax_OBJECTS) $(testFloatMax_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMax_la-dcolumnmaxa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMax_la-dmaxa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMax_la-drowmaxa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMax_la-scolumnmaxa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMax_la-smaxa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMax_la-srowmaxa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testDoubleMax-testDoubleMax.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testFloatMax-testFloatMax.Po@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c $< + +.c.obj: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< + +libMax_la-smaxa.lo: smaxa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMax_la_CFLAGS) $(CFLAGS) -MT libMax_la-smaxa.lo -MD -MP -MF $(DEPDIR)/libMax_la-smaxa.Tpo -c -o libMax_la-smaxa.lo `test -f 'smaxa.c' || echo '$(srcdir)/'`smaxa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMax_la-smaxa.Tpo $(DEPDIR)/libMax_la-smaxa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='smaxa.c' object='libMax_la-smaxa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMax_la_CFLAGS) $(CFLAGS) -c -o libMax_la-smaxa.lo `test -f 'smaxa.c' || echo '$(srcdir)/'`smaxa.c + +libMax_la-srowmaxa.lo: srowmaxa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMax_la_CFLAGS) $(CFLAGS) -MT libMax_la-srowmaxa.lo -MD -MP -MF $(DEPDIR)/libMax_la-srowmaxa.Tpo -c -o libMax_la-srowmaxa.lo `test -f 'srowmaxa.c' || echo '$(srcdir)/'`srowmaxa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMax_la-srowmaxa.Tpo $(DEPDIR)/libMax_la-srowmaxa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='srowmaxa.c' object='libMax_la-srowmaxa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMax_la_CFLAGS) $(CFLAGS) -c -o libMax_la-srowmaxa.lo `test -f 'srowmaxa.c' || echo '$(srcdir)/'`srowmaxa.c + +libMax_la-scolumnmaxa.lo: scolumnmaxa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMax_la_CFLAGS) $(CFLAGS) -MT libMax_la-scolumnmaxa.lo -MD -MP -MF $(DEPDIR)/libMax_la-scolumnmaxa.Tpo -c -o libMax_la-scolumnmaxa.lo `test -f 'scolumnmaxa.c' || echo '$(srcdir)/'`scolumnmaxa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMax_la-scolumnmaxa.Tpo $(DEPDIR)/libMax_la-scolumnmaxa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='scolumnmaxa.c' object='libMax_la-scolumnmaxa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMax_la_CFLAGS) $(CFLAGS) -c -o libMax_la-scolumnmaxa.lo `test -f 'scolumnmaxa.c' || echo '$(srcdir)/'`scolumnmaxa.c + +libMax_la-dmaxa.lo: dmaxa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMax_la_CFLAGS) $(CFLAGS) -MT libMax_la-dmaxa.lo -MD -MP -MF $(DEPDIR)/libMax_la-dmaxa.Tpo -c -o libMax_la-dmaxa.lo `test -f 'dmaxa.c' || echo '$(srcdir)/'`dmaxa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMax_la-dmaxa.Tpo $(DEPDIR)/libMax_la-dmaxa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dmaxa.c' object='libMax_la-dmaxa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMax_la_CFLAGS) $(CFLAGS) -c -o libMax_la-dmaxa.lo `test -f 'dmaxa.c' || echo '$(srcdir)/'`dmaxa.c + +libMax_la-drowmaxa.lo: drowmaxa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMax_la_CFLAGS) $(CFLAGS) -MT libMax_la-drowmaxa.lo -MD -MP -MF $(DEPDIR)/libMax_la-drowmaxa.Tpo -c -o libMax_la-drowmaxa.lo `test -f 'drowmaxa.c' || echo '$(srcdir)/'`drowmaxa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMax_la-drowmaxa.Tpo $(DEPDIR)/libMax_la-drowmaxa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='drowmaxa.c' object='libMax_la-drowmaxa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMax_la_CFLAGS) $(CFLAGS) -c -o libMax_la-drowmaxa.lo `test -f 'drowmaxa.c' || echo '$(srcdir)/'`drowmaxa.c + +libMax_la-dcolumnmaxa.lo: dcolumnmaxa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMax_la_CFLAGS) $(CFLAGS) -MT libMax_la-dcolumnmaxa.lo -MD -MP -MF $(DEPDIR)/libMax_la-dcolumnmaxa.Tpo -c -o libMax_la-dcolumnmaxa.lo `test -f 'dcolumnmaxa.c' || echo '$(srcdir)/'`dcolumnmaxa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMax_la-dcolumnmaxa.Tpo $(DEPDIR)/libMax_la-dcolumnmaxa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dcolumnmaxa.c' object='libMax_la-dcolumnmaxa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMax_la_CFLAGS) $(CFLAGS) -c -o libMax_la-dcolumnmaxa.lo `test -f 'dcolumnmaxa.c' || echo '$(srcdir)/'`dcolumnmaxa.c + +testDoubleMax-testDoubleMax.o: testDoubleMax.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleMax_CFLAGS) $(CFLAGS) -MT testDoubleMax-testDoubleMax.o -MD -MP -MF $(DEPDIR)/testDoubleMax-testDoubleMax.Tpo -c -o testDoubleMax-testDoubleMax.o `test -f 'testDoubleMax.c' || echo '$(srcdir)/'`testDoubleMax.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleMax-testDoubleMax.Tpo $(DEPDIR)/testDoubleMax-testDoubleMax.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleMax.c' object='testDoubleMax-testDoubleMax.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleMax_CFLAGS) $(CFLAGS) -c -o testDoubleMax-testDoubleMax.o `test -f 'testDoubleMax.c' || echo '$(srcdir)/'`testDoubleMax.c + +testDoubleMax-testDoubleMax.obj: testDoubleMax.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleMax_CFLAGS) $(CFLAGS) -MT testDoubleMax-testDoubleMax.obj -MD -MP -MF $(DEPDIR)/testDoubleMax-testDoubleMax.Tpo -c -o testDoubleMax-testDoubleMax.obj `if test -f 'testDoubleMax.c'; then $(CYGPATH_W) 'testDoubleMax.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleMax.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleMax-testDoubleMax.Tpo $(DEPDIR)/testDoubleMax-testDoubleMax.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleMax.c' object='testDoubleMax-testDoubleMax.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleMax_CFLAGS) $(CFLAGS) -c -o testDoubleMax-testDoubleMax.obj `if test -f 'testDoubleMax.c'; then $(CYGPATH_W) 'testDoubleMax.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleMax.c'; fi` + +testFloatMax-testFloatMax.o: testFloatMax.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatMax_CFLAGS) $(CFLAGS) -MT testFloatMax-testFloatMax.o -MD -MP -MF $(DEPDIR)/testFloatMax-testFloatMax.Tpo -c -o testFloatMax-testFloatMax.o `test -f 'testFloatMax.c' || echo '$(srcdir)/'`testFloatMax.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatMax-testFloatMax.Tpo $(DEPDIR)/testFloatMax-testFloatMax.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatMax.c' object='testFloatMax-testFloatMax.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatMax_CFLAGS) $(CFLAGS) -c -o testFloatMax-testFloatMax.o `test -f 'testFloatMax.c' || echo '$(srcdir)/'`testFloatMax.c + +testFloatMax-testFloatMax.obj: testFloatMax.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatMax_CFLAGS) $(CFLAGS) -MT testFloatMax-testFloatMax.obj -MD -MP -MF $(DEPDIR)/testFloatMax-testFloatMax.Tpo -c -o testFloatMax-testFloatMax.obj `if test -f 'testFloatMax.c'; then $(CYGPATH_W) 'testFloatMax.c'; else $(CYGPATH_W) '$(srcdir)/testFloatMax.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatMax-testFloatMax.Tpo $(DEPDIR)/testFloatMax-testFloatMax.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatMax.c' object='testFloatMax-testFloatMax.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatMax_CFLAGS) $(CFLAGS) -c -o testFloatMax-testFloatMax.obj `if test -f 'testFloatMax.c'; then $(CYGPATH_W) 'testFloatMax.c'; else $(CYGPATH_W) '$(srcdir)/testFloatMax.c'; fi` + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + set x; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) + $(MAKE) $(AM_MAKEFLAGS) check-TESTS +check: check-am +all-am: Makefile $(LTLIBRARIES) +installdirs: + for dir in "$(DESTDIR)$(pkglibdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-checkPROGRAMS clean-generic clean-libtool \ + clean-pkglibLTLIBRARIES mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-pkglibLTLIBRARIES + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-pkglibLTLIBRARIES + +.MAKE: check-am install-am install-strip + +.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \ + clean-checkPROGRAMS clean-generic clean-libtool \ + clean-pkglibLTLIBRARIES ctags distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-pkglibLTLIBRARIES install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ + uninstall-am uninstall-pkglibLTLIBRARIES + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/src/c/statisticsFunctions/max/dcolumnmaxa.c b/src/c/statisticsFunctions/max/dcolumnmaxa.c new file mode 100644 index 0000000..ec71777 --- /dev/null +++ b/src/c/statisticsFunctions/max/dcolumnmaxa.c @@ -0,0 +1,25 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "statMax.h" + +void dcolumnmaxa(double *in, int rows, int columns, double* out) { + int i = 0, j = 0; + + for (i = 0; i < rows; i++) { + out[i]=in[i*columns]; + for (j=0;j<columns;j++) + if (in[i+j*rows]>out[i]) + out[i] = in[i+j*rows]; + } + +} diff --git a/src/c/statisticsFunctions/max/dmaxa.c b/src/c/statisticsFunctions/max/dmaxa.c new file mode 100644 index 0000000..7292f3c --- /dev/null +++ b/src/c/statisticsFunctions/max/dmaxa.c @@ -0,0 +1,26 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "statMax.h" + +double dmaxa(double *in, int size) { + double out = in[0]; + int i = 0; + + for (i = 1; i < size; ++i) + { + if (in[i]>out) + out = in[i]; + } + return out; + +} diff --git a/src/c/statisticsFunctions/max/drowmaxa.c b/src/c/statisticsFunctions/max/drowmaxa.c new file mode 100644 index 0000000..596c535 --- /dev/null +++ b/src/c/statisticsFunctions/max/drowmaxa.c @@ -0,0 +1,24 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "statMax.h" + +void drowmaxa(double *in, int rows, int columns, double* out) { + int i = 0, j = 0; + for (i = 0; i < columns; i++) + { + out[i]=in[i*rows]; + for (j = 1 ; j < rows ; j++) + if (in[i*rows+j]>out[i]) + out[i] = in[i*rows+j]; + } +} diff --git a/src/c/statisticsFunctions/max/i16columnmaxa.c b/src/c/statisticsFunctions/max/i16columnmaxa.c new file mode 100644 index 0000000..87cc579 --- /dev/null +++ b/src/c/statisticsFunctions/max/i16columnmaxa.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "statMax.h" + +void i16columnmaxa(int16 *in, int rows, int columns, int16* out) { + int i = 0, j = 0; + + for (i = 0; i < rows; i++) { + out[i]=(int16)in[i*columns]; + for (j=0;j<columns;j++) + if (in[i+j*rows]>out[i]) + out[i] = (int16)in[i+j*rows]; + } + +} diff --git a/src/c/statisticsFunctions/max/i16maxa.c b/src/c/statisticsFunctions/max/i16maxa.c new file mode 100644 index 0000000..b2eab34 --- /dev/null +++ b/src/c/statisticsFunctions/max/i16maxa.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "statMax.h" + +int16 i16maxa(int16 *in, int size) { + int16 out = in[0]; + int i = 0; + + for (i = 1; i < size; ++i) + { + if (in[i]>out) + out = (int16)in[i]; + } + return out; + +} diff --git a/src/c/statisticsFunctions/max/i16rowmaxa.c b/src/c/statisticsFunctions/max/i16rowmaxa.c new file mode 100644 index 0000000..46c4ae2 --- /dev/null +++ b/src/c/statisticsFunctions/max/i16rowmaxa.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "statMax.h" + +void i16rowmaxa(int16 *in, int rows, int columns, int16* out) { + int i = 0, j = 0; + + for (i = 0; i < columns; i++) { + out[i]=(int16)in[i*rows]; + for (j = 1 ; j < rows ; j++) + if (in[i*rows+j]>out[i]) + out[i] = (int16)in[i*rows+j]; + } +} diff --git a/src/c/statisticsFunctions/max/i8columnmaxa.c b/src/c/statisticsFunctions/max/i8columnmaxa.c new file mode 100644 index 0000000..6c7ea25 --- /dev/null +++ b/src/c/statisticsFunctions/max/i8columnmaxa.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "statMax.h" + +void i8columnmaxa(int8 *in, int rows, int columns, int8* out) { + int i = 0, j = 0; + + for (i = 0; i < rows; i++) { + out[i]=(int8)in[i*columns]; + for (j=0;j<columns;j++) + if (in[i+j*rows]>out[i]) + out[i] = (int8)in[i+j*rows]; + } + +} diff --git a/src/c/statisticsFunctions/max/i8maxa.c b/src/c/statisticsFunctions/max/i8maxa.c new file mode 100644 index 0000000..d57b995 --- /dev/null +++ b/src/c/statisticsFunctions/max/i8maxa.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ +#include "statMax.h" + +int8 i8maxa(int8 *in, int size) { + int8 out = in[0]; + int i = 0; + + for (i = 1; i < size; ++i) + { + if (in[i]>out) + out = (int8)in[i]; + } + return out; + +} diff --git a/src/c/statisticsFunctions/max/i8rowmaxa.c b/src/c/statisticsFunctions/max/i8rowmaxa.c new file mode 100644 index 0000000..677c61c --- /dev/null +++ b/src/c/statisticsFunctions/max/i8rowmaxa.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "statMax.h" + +void i8rowmaxa(int8 *in, int rows, int columns, int8* out) { + int i = 0, j = 0; + + for (i = 0; i < columns; i++) { + out[i]=(int8)in[i*rows]; + for (j = 1 ; j < rows ; j++) + if (in[i*rows+j]>out[i]) + out[i] = (int8)in[i*rows+j]; + } +} diff --git a/src/c/statisticsFunctions/max/scolumnmaxa.c b/src/c/statisticsFunctions/max/scolumnmaxa.c new file mode 100644 index 0000000..185ab98 --- /dev/null +++ b/src/c/statisticsFunctions/max/scolumnmaxa.c @@ -0,0 +1,24 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "statMax.h" + +void scolumnmaxa(float *in, int rows, int columns, float* out) { + int i = 0, j = 0; + + for (i = 0; i < rows; i++) { + out[i]=in[i*columns]; + for (j=0;j<columns;j++) + if (in[i+j*rows]>out[i]) out[i] = in[i+j*rows]; + } + +} diff --git a/src/c/statisticsFunctions/max/smaxa.c b/src/c/statisticsFunctions/max/smaxa.c new file mode 100644 index 0000000..3410fae --- /dev/null +++ b/src/c/statisticsFunctions/max/smaxa.c @@ -0,0 +1,25 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ +#include "statMax.h" + + +float smaxa(float *in, int size) { + float out = in[0]; + int i = 0; + + for (i = 1; i < size; ++i) + { + if (in[i]>out) out = in[i]; + } + return out; + +} diff --git a/src/c/statisticsFunctions/max/srowmaxa.c b/src/c/statisticsFunctions/max/srowmaxa.c new file mode 100644 index 0000000..8f3b30e --- /dev/null +++ b/src/c/statisticsFunctions/max/srowmaxa.c @@ -0,0 +1,23 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ +#include "statMax.h" + + +void srowmaxa(float *in, int rows, int columns, float* out) { + int i = 0, j = 0; + + for (i = 0; i < columns; i++) { + out[i]=in[i*rows]; + for (j = 1 ; j < rows ; j++) + if (in[i*rows+j]>out[i]) out[i] = in[i*rows+j]; + } +} diff --git a/src/c/statisticsFunctions/max/testDoubleMax.c b/src/c/statisticsFunctions/max/testDoubleMax.c new file mode 100644 index 0000000..883b427 --- /dev/null +++ b/src/c/statisticsFunctions/max/testDoubleMax.c @@ -0,0 +1,93 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Arnaud Torset + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + + +#include "statMax.h" +//#include "max.h" +#include "assert.h" +#include "stdio.h" + + +static void dmaxaTest(void){ + double in[12]={4,5,7,1,2,6,4,1,2,5,4,3}; + double out; + + out = dmaxa(in,12); + assert(out-7==0); + +} + + +static void drowmaxaTest(void){ + double in[12]={4,5,7,1,2,6,4,1,2,5,4,3}; + double result2[2]={7,5}; + double result3[3]={7,6,5}; + double result4[4]={7,6,4,5}; + double result6[6]={5,7,6,4,5,4}; + double out1[1],out2[2],out3[3],out4[4],out6[6],out12[12]; + int i; + + + drowmaxa(in,12,1,out1); + drowmaxa(in,6,2,out2); + drowmaxa(in,4,3,out3); + drowmaxa(in,3,4,out4); + drowmaxa(in,2,6,out6); + drowmaxa(in,1,12,out12); + + assert(out1[0]-7==0); + for (i=0;i<2;i++) assert(out2[i]-result2[i]==0); + for (i=0;i<3;i++) assert(out3[i]-result3[i]==0); + for (i=0;i<4;i++) assert(out4[i]-result4[i]==0); + for (i=0;i<6;i++) assert(out6[i]-result6[i]==0); + for (i=0;i<12;i++) assert(out12[i]-in[i]==0); +} + + +static void dcolumnmaxaTest(void){ + double in[12]={4,5,7,1,2,6,4,1,2,5,4,3}; + double out1[1],out2[2],out3[3],out4[4],out6[6],out12[12]; + double result2[2]={7,6}; + double result3[3]={5,5,7}; + double result4[4]={4,6,7,3}; + double result6[6]={4,5,7,5,4,6}; + int i; + + + + dcolumnmaxa(in,12,1,out12); + dcolumnmaxa(in,6,2,out6); + dcolumnmaxa(in,4,3,out4); + dcolumnmaxa(in,3,4,out3); + dcolumnmaxa(in,2,6,out2); + dcolumnmaxa(in,1,12,out1); + + assert(out1[0]-7==0); + for (i=0;i<2;i++) assert(out2[i]-result2[i]==0); + for (i=0;i<3;i++) assert(out3[i]-result3[i]==0); + for (i=0;i<4;i++) assert(out4[i]-result4[i]==0); + for (i=0;i<6;i++) assert(out6[i]-result6[i]==0); + for (i=0;i<12;i++) assert(out12[i]-in[i]==0); +} + +static int maxTest(void){ + dmaxaTest(); + drowmaxaTest(); + dcolumnmaxaTest(); + return 0; +} + + +int main(void){ + assert(maxTest()==0); + return 0; +} diff --git a/src/c/statisticsFunctions/max/testFloatMax.c b/src/c/statisticsFunctions/max/testFloatMax.c new file mode 100644 index 0000000..cb572f7 --- /dev/null +++ b/src/c/statisticsFunctions/max/testFloatMax.c @@ -0,0 +1,93 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Arnaud Torset + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + + + +#include "statMax.h" +//#include "max.h" +#include "assert.h" +#include "stdio.h" + +static void smaxaTest(void){ + float in[12]={4,5,7,1,2,6,4,1,2,5,4,3}; + float out; + + out = smaxa(in,12); + assert(out-7==0); + +} + + +static void srowmaxaTest(void){ + float in[12]={4,5,7,1,2,6,4,1,2,5,4,3}; + float out1[1],out2[2],out3[3],out4[4],out6[6],out12[12]; + float result2[2]={7,5}; + float result3[3]={7,6,5}; + float result4[4]={7,6,4,5}; + float result6[6]={5,7,6,4,5,4}; + int i; + + + srowmaxa(in,12,1,out1); + srowmaxa(in,6,2,out2); + srowmaxa(in,4,3,out3); + srowmaxa(in,3,4,out4); + srowmaxa(in,2,6,out6); + srowmaxa(in,1,12,out12); + + assert(out1[0]-7==0); + for (i=0;i<2;i++) assert(out2[i]-result2[i]==0); + for (i=0;i<3;i++) assert(out3[i]-result3[i]==0); + for (i=0;i<4;i++) assert(out4[i]-result4[i]==0); + for (i=0;i<6;i++) assert(out6[i]-result6[i]==0); + for (i=0;i<12;i++) assert(out12[i]-in[i]==0); +} + + +static void scolumnmaxaTest(void){ + float in[12]={4,5,7,1,2,6,4,1,2,5,4,3}; + float out1[1],out2[2],out3[3],out4[4],out6[6],out12[12]; + float result2[2]={7,6}; + float result3[3]={5,5,7}; + float result4[4]={4,6,7,3}; + float result6[6]={4,5,7,5,4,6}; + int i; + + + + scolumnmaxa(in,12,1,out12); + scolumnmaxa(in,6,2,out6); + scolumnmaxa(in,4,3,out4); + scolumnmaxa(in,3,4,out3); + scolumnmaxa(in,2,6,out2); + scolumnmaxa(in,1,12,out1); + + assert(out1[0]-7==0); + for (i=0;i<2;i++) assert(out2[i]-result2[i]==0); + for (i=0;i<3;i++) assert(out3[i]-result3[i]==0); + for (i=0;i<4;i++) assert(out4[i]-result4[i]==0); + for (i=0;i<6;i++) assert(out6[i]-result6[i]==0); + for (i=0;i<12;i++) assert(out12[i]-in[i]==0); +} + +static int maxTest(void){ + smaxaTest(); + srowmaxaTest(); + scolumnmaxaTest(); + return 0; +} + + +int main(void){ + assert(maxTest()==0); + return 0; +} diff --git a/src/c/statisticsFunctions/max/test_DoubleMax/testDoubleMax.vcxproj b/src/c/statisticsFunctions/max/test_DoubleMax/testDoubleMax.vcxproj new file mode 100644 index 0000000..e941486 --- /dev/null +++ b/src/c/statisticsFunctions/max/test_DoubleMax/testDoubleMax.vcxproj @@ -0,0 +1,178 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{020991C0-9640-4097-B697-D514F08AA74C}</ProjectGuid>
+ <RootNamespace>testDoubleMax</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testDoubleMax.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\..\..\type\type.vcxproj">
+ <Project>{9b1bd750-1fef-4d6b-9422-782d16181cee}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ <ProjectReference Include="..\..\statisticsFunctions.vcxproj">
+ <Project>{e11ed064-3bf2-4f70-b66e-3223c737ec60}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/max/test_DoubleMax/testDoubleMax.vcxproj.filters b/src/c/statisticsFunctions/max/test_DoubleMax/testDoubleMax.vcxproj.filters new file mode 100644 index 0000000..73fb0a8 --- /dev/null +++ b/src/c/statisticsFunctions/max/test_DoubleMax/testDoubleMax.vcxproj.filters @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testDoubleMax.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/max/test_FloatMax/testFloatMax.vcxproj b/src/c/statisticsFunctions/max/test_FloatMax/testFloatMax.vcxproj new file mode 100644 index 0000000..da865fa --- /dev/null +++ b/src/c/statisticsFunctions/max/test_FloatMax/testFloatMax.vcxproj @@ -0,0 +1,178 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{0E4EC2A2-BADC-48C8-AF56-D1437094887A}</ProjectGuid>
+ <RootNamespace>testFloatMax</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testFloatMax.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\..\..\type\type.vcxproj">
+ <Project>{9b1bd750-1fef-4d6b-9422-782d16181cee}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ <ProjectReference Include="..\..\statisticsFunctions.vcxproj">
+ <Project>{e11ed064-3bf2-4f70-b66e-3223c737ec60}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/max/test_FloatMax/testFloatMax.vcxproj.filters b/src/c/statisticsFunctions/max/test_FloatMax/testFloatMax.vcxproj.filters new file mode 100644 index 0000000..c529a67 --- /dev/null +++ b/src/c/statisticsFunctions/max/test_FloatMax/testFloatMax.vcxproj.filters @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testFloatMax.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/max/u16columnmaxa.c b/src/c/statisticsFunctions/max/u16columnmaxa.c new file mode 100644 index 0000000..5b4f423 --- /dev/null +++ b/src/c/statisticsFunctions/max/u16columnmaxa.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "statMax.h" + +void u16columnmaxa(uint16 *in, int rows, int columns, uint16* out) { + int i = 0, j = 0; + + + for (i = 0; i < rows; i++) { + out[i]=(uint16)in[i]; + for (j=0;j<columns;j++) + if (in[i+j*rows]>out[i]) + out[i] = (uint16)in[i+j*rows]; + } + +} diff --git a/src/c/statisticsFunctions/max/u16maxa.c b/src/c/statisticsFunctions/max/u16maxa.c new file mode 100644 index 0000000..7c9078d --- /dev/null +++ b/src/c/statisticsFunctions/max/u16maxa.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ +#include "statMax.h" + +uint16 u16maxa(uint16 *in, int size) { + uint16 out = in[0]; + int i = 0; + + for (i = 1; i < size; ++i) + { + if (in[i]>out) + out = (uint16)in[i]; + } + return out; + +} diff --git a/src/c/statisticsFunctions/max/u16rowmaxa.c b/src/c/statisticsFunctions/max/u16rowmaxa.c new file mode 100644 index 0000000..eacbe84 --- /dev/null +++ b/src/c/statisticsFunctions/max/u16rowmaxa.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ +#include "statMax.h" + +void u16rowmaxa(uint16 *in, int rows, int columns, uint16* out) { + int i = 0, j = 0; + //out = malloc(columns*sizeof(uint16)); + for (i = 0; i < columns; i++) + { + out[i]=(uint16)in[i]; + for (j = 1 ; j < rows ; j++) + { + if (in[j*columns+i]>out[i]) + out[i] = (uint16)in[j*columns+i]; + } + } + +} diff --git a/src/c/statisticsFunctions/max/u8columnmaxa.c b/src/c/statisticsFunctions/max/u8columnmaxa.c new file mode 100644 index 0000000..ac9bc08 --- /dev/null +++ b/src/c/statisticsFunctions/max/u8columnmaxa.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ +#include "statMax.h" + + +void u8columnmaxa(uint8 *in, int rows, int columns, uint8* out) { + int i = 0, j = 0; + + for (i = 0; i < rows; i++) +{ + out[i]=(uint8)in[0]; + for (j=0;j<columns;j++) + if (in[j]>out[i]) + out[i] = (uint8)in[j]; + } + +} diff --git a/src/c/statisticsFunctions/max/u8maxa.c b/src/c/statisticsFunctions/max/u8maxa.c new file mode 100644 index 0000000..3f84af4 --- /dev/null +++ b/src/c/statisticsFunctions/max/u8maxa.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "statMax.h" + +uint8 u8maxa(uint8 *in, int size) { + uint8 out = in[0]; + int i = 0; + + for (i = 1; i < size; ++i) + { + if (in[i]>out) + out = (uint8)in[i]; + } + return out; + +} diff --git a/src/c/statisticsFunctions/max/u8rowmaxa.c b/src/c/statisticsFunctions/max/u8rowmaxa.c new file mode 100644 index 0000000..0ddae26 --- /dev/null +++ b/src/c/statisticsFunctions/max/u8rowmaxa.c @@ -0,0 +1,28 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ +#include "statMax.h" + + +void u8rowmaxa(uint8 *in, int rows, int columns, uint8* out) { + int i = 0, j = 0; + + + for (i = 0; i < columns; i++) + { + out[i]=(uint8)in[0]; + for (j = 0 ; j < rows ; j++) + { + if (in[j]>out[i]) + out[i] = (uint8)in[j]; + } + } +} diff --git a/src/c/statisticsFunctions/mean/Makefile.am b/src/c/statisticsFunctions/mean/Makefile.am new file mode 100644 index 0000000..2969a73 --- /dev/null +++ b/src/c/statisticsFunctions/mean/Makefile.am @@ -0,0 +1,69 @@ +## +## Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +## Copyright (C) 2006-2008 - INRIA - Bruno JOFRET +## +## This file must be used under the terms of the CeCILL. +## This source file is licensed as described in the file COPYING, which +## you should have received as part of this distribution. The terms +## are also available at +## http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt +## +## + +libMean_la_CFLAGS = -I $(top_builddir)/src/c/type \ + -I $(top_builddir)/src/c/operations/includes \ + -I ../includes + +instdir = $(top_builddir)/lib + +pkglib_LTLIBRARIES = libMean.la + +libMean_la_SOURCES = $(HEAD) $(SRC) + +SRC = smeana.c \ + srowmeana.c \ + scolumnmeana.c \ + dmeana.c \ + drowmeana.c \ + dcolumnmeana.c \ + cmeana.c \ + crowmeana.c \ + ccolumnmeana.c \ + zmeana.c \ + zrowmeana.c \ + zcolumnmeana.c + +HEAD = ../includes/mean.h + +#### +# Checking Part +#### + +check_INCLUDES = -I $(top_builddir)/src/c/statisticsFunctions/includes \ + -I $(top_builddir)/src/c/operations/includes \ + -I $(top_builddir)/src/c/type + +check_LDADD = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/c/statisticsFunctions/mean/libMean.la \ + $(top_builddir)/src/c/statisticsFunctions/sum/libSum.la \ + $(top_builddir)/src/c/operations/division/libDivision.la \ + $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ + $(top_builddir)/src/c/auxiliaryFunctions/conj/libConj.la \ + @LIBMATH@ + +check_PROGRAMS = testFloatMean testDoubleMean + +TESTS = testFloatMean testDoubleMean + +# +# -*- Mean Tests -*- +# +testFloatMean_SOURCES = testFloatMean.c +testFloatMean_CFLAGS = $(check_INCLUDES) +testFloatMean_LDADD = $(check_LDADD) + +testDoubleMean_SOURCES =testDoubleMean.c +testDoubleMean_CFLAGS = $(check_INCLUDES) +testDoubleMean_LDADD = $(check_LDADD) diff --git a/src/c/statisticsFunctions/mean/Makefile.in b/src/c/statisticsFunctions/mean/Makefile.in new file mode 100644 index 0000000..0a05745 --- /dev/null +++ b/src/c/statisticsFunctions/mean/Makefile.in @@ -0,0 +1,839 @@ +# Makefile.in generated by automake 1.11.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +check_PROGRAMS = testFloatMean$(EXEEXT) testDoubleMean$(EXEEXT) +TESTS = testFloatMean$(EXEEXT) testDoubleMean$(EXEEXT) +subdir = src/c/statisticsFunctions/mean +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/includes/machine.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__installdirs = "$(DESTDIR)$(pkglibdir)" +LTLIBRARIES = $(pkglib_LTLIBRARIES) +libMean_la_LIBADD = +am__objects_1 = +am__objects_2 = libMean_la-smeana.lo libMean_la-srowmeana.lo \ + libMean_la-scolumnmeana.lo libMean_la-dmeana.lo \ + libMean_la-drowmeana.lo libMean_la-dcolumnmeana.lo \ + libMean_la-cmeana.lo libMean_la-crowmeana.lo \ + libMean_la-ccolumnmeana.lo libMean_la-zmeana.lo \ + libMean_la-zrowmeana.lo libMean_la-zcolumnmeana.lo +am_libMean_la_OBJECTS = $(am__objects_1) $(am__objects_2) +libMean_la_OBJECTS = $(am_libMean_la_OBJECTS) +libMean_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(libMean_la_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +am_testDoubleMean_OBJECTS = testDoubleMean-testDoubleMean.$(OBJEXT) +testDoubleMean_OBJECTS = $(am_testDoubleMean_OBJECTS) +am__DEPENDENCIES_1 = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/c/statisticsFunctions/mean/libMean.la \ + $(top_builddir)/src/c/statisticsFunctions/sum/libSum.la \ + $(top_builddir)/src/c/operations/division/libDivision.la \ + $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ + $(top_builddir)/src/c/auxiliaryFunctions/conj/libConj.la +testDoubleMean_DEPENDENCIES = $(am__DEPENDENCIES_1) +testDoubleMean_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testDoubleMean_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +am_testFloatMean_OBJECTS = testFloatMean-testFloatMean.$(OBJEXT) +testFloatMean_OBJECTS = $(am_testFloatMean_OBJECTS) +testFloatMean_DEPENDENCIES = $(am__DEPENDENCIES_1) +testFloatMean_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testFloatMean_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/includes +depcomp = $(SHELL) $(top_srcdir)/config/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +CCLD = $(CC) +LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ + $(LDFLAGS) -o $@ +SOURCES = $(libMean_la_SOURCES) $(testDoubleMean_SOURCES) \ + $(testFloatMean_SOURCES) +DIST_SOURCES = $(libMean_la_SOURCES) $(testDoubleMean_SOURCES) \ + $(testFloatMean_SOURCES) +ETAGS = etags +CTAGS = ctags +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +F77 = @F77@ +FFLAGS = @FFLAGS@ +FGREP = @FGREP@ +GREP = @GREP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBMATH = @LIBMATH@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +ac_ct_F77 = @ac_ct_F77@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +lt_ECHO = @lt_ECHO@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +libMean_la_CFLAGS = -I $(top_builddir)/src/c/type \ + -I $(top_builddir)/src/c/operations/includes \ + -I ../includes + +instdir = $(top_builddir)/lib +pkglib_LTLIBRARIES = libMean.la +libMean_la_SOURCES = $(HEAD) $(SRC) +SRC = smeana.c \ + srowmeana.c \ + scolumnmeana.c \ + dmeana.c \ + drowmeana.c \ + dcolumnmeana.c \ + cmeana.c \ + crowmeana.c \ + ccolumnmeana.c \ + zmeana.c \ + zrowmeana.c \ + zcolumnmeana.c + +HEAD = ../includes/mean.h + +#### +# Checking Part +#### +check_INCLUDES = -I $(top_builddir)/src/c/statisticsFunctions/includes \ + -I $(top_builddir)/src/c/operations/includes \ + -I $(top_builddir)/src/c/type + +check_LDADD = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/c/statisticsFunctions/mean/libMean.la \ + $(top_builddir)/src/c/statisticsFunctions/sum/libSum.la \ + $(top_builddir)/src/c/operations/division/libDivision.la \ + $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ + $(top_builddir)/src/c/auxiliaryFunctions/conj/libConj.la \ + @LIBMATH@ + + +# +# -*- Mean Tests -*- +# +testFloatMean_SOURCES = testFloatMean.c +testFloatMean_CFLAGS = $(check_INCLUDES) +testFloatMean_LDADD = $(check_LDADD) +testDoubleMean_SOURCES = testDoubleMean.c +testDoubleMean_CFLAGS = $(check_INCLUDES) +testDoubleMean_LDADD = $(check_LDADD) +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/c/statisticsFunctions/mean/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/c/statisticsFunctions/mean/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): +install-pkglibLTLIBRARIES: $(pkglib_LTLIBRARIES) + @$(NORMAL_INSTALL) + test -z "$(pkglibdir)" || $(MKDIR_P) "$(DESTDIR)$(pkglibdir)" + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + list2=; for p in $$list; do \ + if test -f $$p; then \ + list2="$$list2 $$p"; \ + else :; fi; \ + done; \ + test -z "$$list2" || { \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(pkglibdir)'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(pkglibdir)"; \ + } + +uninstall-pkglibLTLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(pkglibdir)/$$f'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(pkglibdir)/$$f"; \ + done + +clean-pkglibLTLIBRARIES: + -test -z "$(pkglib_LTLIBRARIES)" || rm -f $(pkglib_LTLIBRARIES) + @list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done +libMean.la: $(libMean_la_OBJECTS) $(libMean_la_DEPENDENCIES) + $(libMean_la_LINK) -rpath $(pkglibdir) $(libMean_la_OBJECTS) $(libMean_la_LIBADD) $(LIBS) + +clean-checkPROGRAMS: + @list='$(check_PROGRAMS)'; test -n "$$list" || exit 0; \ + echo " rm -f" $$list; \ + rm -f $$list || exit $$?; \ + test -n "$(EXEEXT)" || exit 0; \ + list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f" $$list; \ + rm -f $$list +testDoubleMean$(EXEEXT): $(testDoubleMean_OBJECTS) $(testDoubleMean_DEPENDENCIES) + @rm -f testDoubleMean$(EXEEXT) + $(testDoubleMean_LINK) $(testDoubleMean_OBJECTS) $(testDoubleMean_LDADD) $(LIBS) +testFloatMean$(EXEEXT): $(testFloatMean_OBJECTS) $(testFloatMean_DEPENDENCIES) + @rm -f testFloatMean$(EXEEXT) + $(testFloatMean_LINK) $(testFloatMean_OBJECTS) $(testFloatMean_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMean_la-ccolumnmeana.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMean_la-cmeana.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMean_la-crowmeana.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMean_la-dcolumnmeana.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMean_la-dmeana.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMean_la-drowmeana.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMean_la-scolumnmeana.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMean_la-smeana.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMean_la-srowmeana.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMean_la-zcolumnmeana.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMean_la-zmeana.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMean_la-zrowmeana.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testDoubleMean-testDoubleMean.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testFloatMean-testFloatMean.Po@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c $< + +.c.obj: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< + +libMean_la-smeana.lo: smeana.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -MT libMean_la-smeana.lo -MD -MP -MF $(DEPDIR)/libMean_la-smeana.Tpo -c -o libMean_la-smeana.lo `test -f 'smeana.c' || echo '$(srcdir)/'`smeana.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMean_la-smeana.Tpo $(DEPDIR)/libMean_la-smeana.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='smeana.c' object='libMean_la-smeana.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -c -o libMean_la-smeana.lo `test -f 'smeana.c' || echo '$(srcdir)/'`smeana.c + +libMean_la-srowmeana.lo: srowmeana.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -MT libMean_la-srowmeana.lo -MD -MP -MF $(DEPDIR)/libMean_la-srowmeana.Tpo -c -o libMean_la-srowmeana.lo `test -f 'srowmeana.c' || echo '$(srcdir)/'`srowmeana.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMean_la-srowmeana.Tpo $(DEPDIR)/libMean_la-srowmeana.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='srowmeana.c' object='libMean_la-srowmeana.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -c -o libMean_la-srowmeana.lo `test -f 'srowmeana.c' || echo '$(srcdir)/'`srowmeana.c + +libMean_la-scolumnmeana.lo: scolumnmeana.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -MT libMean_la-scolumnmeana.lo -MD -MP -MF $(DEPDIR)/libMean_la-scolumnmeana.Tpo -c -o libMean_la-scolumnmeana.lo `test -f 'scolumnmeana.c' || echo '$(srcdir)/'`scolumnmeana.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMean_la-scolumnmeana.Tpo $(DEPDIR)/libMean_la-scolumnmeana.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='scolumnmeana.c' object='libMean_la-scolumnmeana.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -c -o libMean_la-scolumnmeana.lo `test -f 'scolumnmeana.c' || echo '$(srcdir)/'`scolumnmeana.c + +libMean_la-dmeana.lo: dmeana.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -MT libMean_la-dmeana.lo -MD -MP -MF $(DEPDIR)/libMean_la-dmeana.Tpo -c -o libMean_la-dmeana.lo `test -f 'dmeana.c' || echo '$(srcdir)/'`dmeana.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMean_la-dmeana.Tpo $(DEPDIR)/libMean_la-dmeana.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dmeana.c' object='libMean_la-dmeana.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -c -o libMean_la-dmeana.lo `test -f 'dmeana.c' || echo '$(srcdir)/'`dmeana.c + +libMean_la-drowmeana.lo: drowmeana.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -MT libMean_la-drowmeana.lo -MD -MP -MF $(DEPDIR)/libMean_la-drowmeana.Tpo -c -o libMean_la-drowmeana.lo `test -f 'drowmeana.c' || echo '$(srcdir)/'`drowmeana.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMean_la-drowmeana.Tpo $(DEPDIR)/libMean_la-drowmeana.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='drowmeana.c' object='libMean_la-drowmeana.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -c -o libMean_la-drowmeana.lo `test -f 'drowmeana.c' || echo '$(srcdir)/'`drowmeana.c + +libMean_la-dcolumnmeana.lo: dcolumnmeana.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -MT libMean_la-dcolumnmeana.lo -MD -MP -MF $(DEPDIR)/libMean_la-dcolumnmeana.Tpo -c -o libMean_la-dcolumnmeana.lo `test -f 'dcolumnmeana.c' || echo '$(srcdir)/'`dcolumnmeana.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMean_la-dcolumnmeana.Tpo $(DEPDIR)/libMean_la-dcolumnmeana.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dcolumnmeana.c' object='libMean_la-dcolumnmeana.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -c -o libMean_la-dcolumnmeana.lo `test -f 'dcolumnmeana.c' || echo '$(srcdir)/'`dcolumnmeana.c + +libMean_la-cmeana.lo: cmeana.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -MT libMean_la-cmeana.lo -MD -MP -MF $(DEPDIR)/libMean_la-cmeana.Tpo -c -o libMean_la-cmeana.lo `test -f 'cmeana.c' || echo '$(srcdir)/'`cmeana.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMean_la-cmeana.Tpo $(DEPDIR)/libMean_la-cmeana.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='cmeana.c' object='libMean_la-cmeana.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -c -o libMean_la-cmeana.lo `test -f 'cmeana.c' || echo '$(srcdir)/'`cmeana.c + +libMean_la-crowmeana.lo: crowmeana.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -MT libMean_la-crowmeana.lo -MD -MP -MF $(DEPDIR)/libMean_la-crowmeana.Tpo -c -o libMean_la-crowmeana.lo `test -f 'crowmeana.c' || echo '$(srcdir)/'`crowmeana.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMean_la-crowmeana.Tpo $(DEPDIR)/libMean_la-crowmeana.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='crowmeana.c' object='libMean_la-crowmeana.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -c -o libMean_la-crowmeana.lo `test -f 'crowmeana.c' || echo '$(srcdir)/'`crowmeana.c + +libMean_la-ccolumnmeana.lo: ccolumnmeana.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -MT libMean_la-ccolumnmeana.lo -MD -MP -MF $(DEPDIR)/libMean_la-ccolumnmeana.Tpo -c -o libMean_la-ccolumnmeana.lo `test -f 'ccolumnmeana.c' || echo '$(srcdir)/'`ccolumnmeana.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMean_la-ccolumnmeana.Tpo $(DEPDIR)/libMean_la-ccolumnmeana.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='ccolumnmeana.c' object='libMean_la-ccolumnmeana.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -c -o libMean_la-ccolumnmeana.lo `test -f 'ccolumnmeana.c' || echo '$(srcdir)/'`ccolumnmeana.c + +libMean_la-zmeana.lo: zmeana.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -MT libMean_la-zmeana.lo -MD -MP -MF $(DEPDIR)/libMean_la-zmeana.Tpo -c -o libMean_la-zmeana.lo `test -f 'zmeana.c' || echo '$(srcdir)/'`zmeana.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMean_la-zmeana.Tpo $(DEPDIR)/libMean_la-zmeana.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zmeana.c' object='libMean_la-zmeana.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -c -o libMean_la-zmeana.lo `test -f 'zmeana.c' || echo '$(srcdir)/'`zmeana.c + +libMean_la-zrowmeana.lo: zrowmeana.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -MT libMean_la-zrowmeana.lo -MD -MP -MF $(DEPDIR)/libMean_la-zrowmeana.Tpo -c -o libMean_la-zrowmeana.lo `test -f 'zrowmeana.c' || echo '$(srcdir)/'`zrowmeana.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMean_la-zrowmeana.Tpo $(DEPDIR)/libMean_la-zrowmeana.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zrowmeana.c' object='libMean_la-zrowmeana.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -c -o libMean_la-zrowmeana.lo `test -f 'zrowmeana.c' || echo '$(srcdir)/'`zrowmeana.c + +libMean_la-zcolumnmeana.lo: zcolumnmeana.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -MT libMean_la-zcolumnmeana.lo -MD -MP -MF $(DEPDIR)/libMean_la-zcolumnmeana.Tpo -c -o libMean_la-zcolumnmeana.lo `test -f 'zcolumnmeana.c' || echo '$(srcdir)/'`zcolumnmeana.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMean_la-zcolumnmeana.Tpo $(DEPDIR)/libMean_la-zcolumnmeana.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zcolumnmeana.c' object='libMean_la-zcolumnmeana.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMean_la_CFLAGS) $(CFLAGS) -c -o libMean_la-zcolumnmeana.lo `test -f 'zcolumnmeana.c' || echo '$(srcdir)/'`zcolumnmeana.c + +testDoubleMean-testDoubleMean.o: testDoubleMean.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleMean_CFLAGS) $(CFLAGS) -MT testDoubleMean-testDoubleMean.o -MD -MP -MF $(DEPDIR)/testDoubleMean-testDoubleMean.Tpo -c -o testDoubleMean-testDoubleMean.o `test -f 'testDoubleMean.c' || echo '$(srcdir)/'`testDoubleMean.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleMean-testDoubleMean.Tpo $(DEPDIR)/testDoubleMean-testDoubleMean.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleMean.c' object='testDoubleMean-testDoubleMean.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleMean_CFLAGS) $(CFLAGS) -c -o testDoubleMean-testDoubleMean.o `test -f 'testDoubleMean.c' || echo '$(srcdir)/'`testDoubleMean.c + +testDoubleMean-testDoubleMean.obj: testDoubleMean.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleMean_CFLAGS) $(CFLAGS) -MT testDoubleMean-testDoubleMean.obj -MD -MP -MF $(DEPDIR)/testDoubleMean-testDoubleMean.Tpo -c -o testDoubleMean-testDoubleMean.obj `if test -f 'testDoubleMean.c'; then $(CYGPATH_W) 'testDoubleMean.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleMean.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleMean-testDoubleMean.Tpo $(DEPDIR)/testDoubleMean-testDoubleMean.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleMean.c' object='testDoubleMean-testDoubleMean.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleMean_CFLAGS) $(CFLAGS) -c -o testDoubleMean-testDoubleMean.obj `if test -f 'testDoubleMean.c'; then $(CYGPATH_W) 'testDoubleMean.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleMean.c'; fi` + +testFloatMean-testFloatMean.o: testFloatMean.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatMean_CFLAGS) $(CFLAGS) -MT testFloatMean-testFloatMean.o -MD -MP -MF $(DEPDIR)/testFloatMean-testFloatMean.Tpo -c -o testFloatMean-testFloatMean.o `test -f 'testFloatMean.c' || echo '$(srcdir)/'`testFloatMean.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatMean-testFloatMean.Tpo $(DEPDIR)/testFloatMean-testFloatMean.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatMean.c' object='testFloatMean-testFloatMean.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatMean_CFLAGS) $(CFLAGS) -c -o testFloatMean-testFloatMean.o `test -f 'testFloatMean.c' || echo '$(srcdir)/'`testFloatMean.c + +testFloatMean-testFloatMean.obj: testFloatMean.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatMean_CFLAGS) $(CFLAGS) -MT testFloatMean-testFloatMean.obj -MD -MP -MF $(DEPDIR)/testFloatMean-testFloatMean.Tpo -c -o testFloatMean-testFloatMean.obj `if test -f 'testFloatMean.c'; then $(CYGPATH_W) 'testFloatMean.c'; else $(CYGPATH_W) '$(srcdir)/testFloatMean.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatMean-testFloatMean.Tpo $(DEPDIR)/testFloatMean-testFloatMean.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatMean.c' object='testFloatMean-testFloatMean.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatMean_CFLAGS) $(CFLAGS) -c -o testFloatMean-testFloatMean.obj `if test -f 'testFloatMean.c'; then $(CYGPATH_W) 'testFloatMean.c'; else $(CYGPATH_W) '$(srcdir)/testFloatMean.c'; fi` + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + set x; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) + $(MAKE) $(AM_MAKEFLAGS) check-TESTS +check: check-am +all-am: Makefile $(LTLIBRARIES) +installdirs: + for dir in "$(DESTDIR)$(pkglibdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-checkPROGRAMS clean-generic clean-libtool \ + clean-pkglibLTLIBRARIES mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-pkglibLTLIBRARIES + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-pkglibLTLIBRARIES + +.MAKE: check-am install-am install-strip + +.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \ + clean-checkPROGRAMS clean-generic clean-libtool \ + clean-pkglibLTLIBRARIES ctags distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-pkglibLTLIBRARIES install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ + uninstall-am uninstall-pkglibLTLIBRARIES + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/src/c/statisticsFunctions/mean/ccolumnmeana.c b/src/c/statisticsFunctions/mean/ccolumnmeana.c new file mode 100644 index 0000000..c0254c4 --- /dev/null +++ b/src/c/statisticsFunctions/mean/ccolumnmeana.c @@ -0,0 +1,24 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "mean.h" +#include "sum.h" + +void ccolumnmeana(floatComplex *in, int lines, int columns, floatComplex *out) { + int i = 0; + + ccolumnsuma(in, lines, columns, out); + for (i = 0; i < lines; ++i) + { + out[i] = crdivs(out[i] , FloatComplex((float) columns, 0.0f)); + } +} diff --git a/src/c/statisticsFunctions/mean/cmeana.c b/src/c/statisticsFunctions/mean/cmeana.c new file mode 100644 index 0000000..ad2a66f --- /dev/null +++ b/src/c/statisticsFunctions/mean/cmeana.c @@ -0,0 +1,24 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "mean.h" + +floatComplex cmeana(floatComplex *in, int size) { + floatComplex accumulate = FloatComplex(0.0f, 0.0f); + int i = 0; + + for (i = 0; i < size; ++i) + { + accumulate = cadds(accumulate, in[i]); + } + return FloatComplex(creals(accumulate) / (float) size, cimags(accumulate) / (float) size); +} diff --git a/src/c/statisticsFunctions/mean/crowmeana.c b/src/c/statisticsFunctions/mean/crowmeana.c new file mode 100644 index 0000000..0b073c4 --- /dev/null +++ b/src/c/statisticsFunctions/mean/crowmeana.c @@ -0,0 +1,24 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "mean.h" +#include "sum.h" + +void crowmeana(floatComplex *in, int lines, int columns, floatComplex *out) { + int i = 0; + + crowsuma(in, lines, columns, out); + for (i = 0; i < columns; ++i) + { + out[i] = crdivs(out[i], FloatComplex((float)lines, 0.0f)); + } +} diff --git a/src/c/statisticsFunctions/mean/dcolumnmeana.c b/src/c/statisticsFunctions/mean/dcolumnmeana.c new file mode 100644 index 0000000..90d7863 --- /dev/null +++ b/src/c/statisticsFunctions/mean/dcolumnmeana.c @@ -0,0 +1,24 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "mean.h" +#include "sum.h" + +void dcolumnmeana(double *in, int lines, int columns, double *out) { + int i = 0; + + dcolumnsuma(in, lines, columns, out); + for (i = 0; i < lines; ++i) + { + out[i] /= (double) columns; + } +} diff --git a/src/c/statisticsFunctions/mean/dmeana.c b/src/c/statisticsFunctions/mean/dmeana.c new file mode 100644 index 0000000..db11766 --- /dev/null +++ b/src/c/statisticsFunctions/mean/dmeana.c @@ -0,0 +1,25 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "mean.h" + +double dmeana(double *in, int size) { + double accumulate = 0.0; + int i = 0; + + for (i = 0; i < size; ++i) + { + accumulate += in[i]; + } + return accumulate / (double) size; + +} diff --git a/src/c/statisticsFunctions/mean/drowmeana.c b/src/c/statisticsFunctions/mean/drowmeana.c new file mode 100644 index 0000000..aec1b31 --- /dev/null +++ b/src/c/statisticsFunctions/mean/drowmeana.c @@ -0,0 +1,24 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "mean.h" +#include "sum.h" + +void drowmeana(double *in, int lines, int columns, double *out) { + int i = 0; + + drowsuma(in, lines, columns, out); + for (i = 0; i < columns; ++i) + { + out[i] /= (double) lines; + } +} diff --git a/src/c/statisticsFunctions/mean/scolumnmeana.c b/src/c/statisticsFunctions/mean/scolumnmeana.c new file mode 100644 index 0000000..59985d5 --- /dev/null +++ b/src/c/statisticsFunctions/mean/scolumnmeana.c @@ -0,0 +1,24 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "mean.h" +#include "sum.h" + +void scolumnmeana(float *in, int lines, int columns, float *out) { + int i = 0; + + scolumnsuma(in, lines, columns, out); + for (i = 0; i < lines; ++i) + { + out[i] /= (float) columns; + } +} diff --git a/src/c/statisticsFunctions/mean/smeana.c b/src/c/statisticsFunctions/mean/smeana.c new file mode 100644 index 0000000..f4b1cd1 --- /dev/null +++ b/src/c/statisticsFunctions/mean/smeana.c @@ -0,0 +1,25 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "mean.h" + +float smeana(float *in, int size) { + float accumulate = 0.0f; + int i = 0; + + for (i = 0; i < size; ++i) + { + accumulate += in[i]; + } + return accumulate / (float) size; + +} diff --git a/src/c/statisticsFunctions/mean/srowmeana.c b/src/c/statisticsFunctions/mean/srowmeana.c new file mode 100644 index 0000000..3fb799f --- /dev/null +++ b/src/c/statisticsFunctions/mean/srowmeana.c @@ -0,0 +1,24 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "mean.h" +#include "sum.h" + +void srowmeana(float *in, int lines, int columns, float *out) { + int i = 0; + + srowsuma(in, lines, columns, out); + for (i = 0; i < columns; ++i) + { + out[i] /= (float) lines; + } +} diff --git a/src/c/statisticsFunctions/mean/testDoubleMean.c b/src/c/statisticsFunctions/mean/testDoubleMean.c new file mode 100644 index 0000000..b0eeffc --- /dev/null +++ b/src/c/statisticsFunctions/mean/testDoubleMean.c @@ -0,0 +1,498 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <assert.h> +#include <stdio.h> +#include <math.h> +#include "mean.h" + +/* #define LOCAL_DEBUG */ + +#define ERROR(x) printf("diff = %e\n", x) + +static int dmeansTest(void) { + double value1 = 3.0; + double value2 = 1.123456789; + + printf("\n>>>> Mean Double Scalar Test\n"); + assert( ( fabs(dmeans(value1) ) - ( 3.0 ) ) / fabs ( dmeans(value1) ) < 3e-16 ); + assert( ( fabs(dmeans(value2) ) - ( 1.123456789 ) ) / fabs ( dmeans(value2) ) < 3e-16 ); + + return 0; +} + +static int dmeanaTest(void) { + double table1[3] = {3.0, 3.0, 3.0}; + double table2[5] = {9.186784563, + 9.186784563, + 9.186784563, + 9.186784563, + 9.186784563}; + + printf("\n>>>> Mean Double Array Test\n"); + assert( ( fabs(dmeana(table1, 3) ) - ( 9.0 / 3.0 ) ) / fabs ( dmeana(table1, 3) ) < 3e-16 ); + assert(( ( fabs(dmeana(table2, 5) ) - ( (9.186784563 + 9.186784563 + 9.186784563 + 9.186784563 + 9.186784563) / 5.0) ) ) / fabs ( dmeana(table2, 5) ) < 3e-16 ); + return 0; +} + +static int dcolumnmeanaTest(void) { + int i = 0; + double table1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double table2[10] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0, 10.0}; + double columnMeanmedTable1_3_3[3] = {0}; + double columnMeanmedTable1_1_9[1] = {0}; + double columnMeanmedTable1_9_1[9] = {0}; + double columnMeanmedTable2_2_5[2] = {0}; + double columnMeanmedTable2_5_2[5] = {0}; + + printf("\n>>>> Column Mean Double Array Test\n"); + /* + [ 1 2 3 ] + [ 4 5 6 ] => [ 6 15 24 ] + [ 7 8 9 ] + */ + dcolumnmeana(table1, 3, 3,columnMeanmedTable1_3_3); + assert( ( fabs(columnMeanmedTable1_3_3[0] ) - ( 6.0 / 3.0 ) ) / fabs ( columnMeanmedTable1_3_3[0] ) < 3e-16 ); + assert( ( fabs(columnMeanmedTable1_3_3[1] ) - ( 15.0 / 3.0 ) ) / fabs ( columnMeanmedTable1_3_3[1] ) < 3e-16 ); + assert( ( fabs(columnMeanmedTable1_3_3[2] ) - ( 24.0 / 3.0 ) ) / fabs ( columnMeanmedTable1_3_3[2] ) < 3e-16 ); + + /* + [ 1 2 3 4 5 6 7 8 9 ] => [ 45 ] + */ + dcolumnmeana(table1, 1, 9,columnMeanmedTable1_1_9); + assert( ( fabs(columnMeanmedTable1_1_9[0] ) - ( 45.0 / 9.0 ) ) / fabs ( columnMeanmedTable1_1_9[0] ) < 3e-16 ); + + /* + [ 1 ] + [ 2 ] + [ 3 ] + [ 4 ] + [ 5 ] => [ 1 2 3 4 5 6 7 8 9 ] + [ 6 ] + [ 7 ] + [ 8 ] + [ 9 ] + */ + dcolumnmeana(table1, 9, 1,columnMeanmedTable1_9_1); + for ( i = 0 ; i < 9 ; ++i) { + printf("columnMeanmedTable1_9_1[%d] = %e\n", i, columnMeanmedTable1_9_1[i]); + assert(columnMeanmedTable1_9_1[i] == table1[i]); + } + + /* + [ 1 3 5 7 9 ] + [ 2 4 6 8 10 ] => [ 25 30 ] + */ + dcolumnmeana(table2, 2, 5,columnMeanmedTable2_2_5); + assert( ( fabs(columnMeanmedTable2_2_5[0] ) - ( 25.0 / 5.0 ) ) / fabs ( columnMeanmedTable2_2_5[0] ) < 3e-16 ); + assert( ( fabs(columnMeanmedTable2_2_5[1] ) - ( 30.0 / 5.0 ) ) / fabs ( columnMeanmedTable2_2_5[1] ) < 3e-16 ); + for ( i = 0 ; i < 2 ; ++i) { + printf("columnMeanmedTable2_2_5[%d] = %e\n", i, columnMeanmedTable2_2_5[i]); + } + + /* + [ 1 6 ] + [ 2 7 ] => [ 7 9 11 13 15 ] + [ 3 8 ] + [ 4 9 ] + [ 5 10 ] + */ + dcolumnmeana(table2, 5, 2,columnMeanmedTable2_5_2); + assert( ( fabs(columnMeanmedTable2_5_2[0] ) - ( 7.0 / 2.0 ) ) / fabs ( columnMeanmedTable2_5_2[0] ) < 3e-16 ); + assert( ( fabs(columnMeanmedTable2_5_2[1] ) - ( 9.0 / 2.0 ) ) / fabs ( columnMeanmedTable2_5_2[1] ) < 3e-16 ); + assert( ( fabs(columnMeanmedTable2_5_2[2] ) - ( 11.0 / 2.0 ) ) / fabs ( columnMeanmedTable2_5_2[2] ) < 3e-16 ); + assert( ( fabs(columnMeanmedTable2_5_2[3] ) - ( 13.0 / 2.0 ) ) / fabs ( columnMeanmedTable2_5_2[3] ) < 3e-16 ); + assert( ( fabs(columnMeanmedTable2_5_2[4] ) - ( 15.0 / 2.0 ) ) / fabs ( columnMeanmedTable2_5_2[4] ) < 3e-16 ); + for ( i = 0 ; i < 5 ; ++i) { + printf("columnMeanmedTable2_5_2[%d] = %e\n", i, columnMeanmedTable2_5_2[i]); + } + + return 0; +} + +static int drowmeanaTest(void) { + int i = 0; + double table1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double table2[10] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0, 10.0}; + double rowMeanmedTable1_3_3[3] = {0}; + double rowMeanmedTable1_1_9[9] = {0}; + double rowMeanmedTable1_9_1[1] = {0}; + double rowMeanmedTable2_2_5[5] = {0}; + double rowMeanmedTable2_5_2[2] = {0}; + + printf("\n>>>> Row Mean Double Array Test\n"); + /* + [ 1 2 3 ] + [ 4 5 6 ] => [ 12 15 18 ] + [ 7 8 9 ] + */ + drowmeana(table1, 3, 3,rowMeanmedTable1_3_3); + for ( i = 0 ; i < 3 ; ++i) { + printf("rowMeanmedTable1_3_3[%d] = %e\n", i, rowMeanmedTable1_3_3[i]); + } + assert( ( fabs(rowMeanmedTable1_3_3[0] ) - ( 12.0 / 3.0 ) ) / fabs ( rowMeanmedTable1_3_3[0] ) < 3e-16 ); + assert( ( fabs(rowMeanmedTable1_3_3[1] ) - ( 15.0 / 3.0 ) ) / fabs ( rowMeanmedTable1_3_3[1] ) < 3e-16 ); + assert( ( fabs(rowMeanmedTable1_3_3[2] ) - ( 18.0 / 3.0 ) ) / fabs ( rowMeanmedTable1_3_3[2] ) < 3e-16 ); + + /* + [ 1 ] + [ 2 ] + [ 3 ] + [ 4 ] + [ 5 ] => [ 1 2 3 4 5 6 7 8 9 ] + [ 6 ] + [ 7 ] + [ 8 ] + [ 9 ] + */ + drowmeana(table1, 1, 9,rowMeanmedTable1_1_9); + for ( i = 0 ; i < 9 ; ++i) { + printf("rowMeanmedTable1_1_9[%d] = %e\n", i, rowMeanmedTable1_1_9[i]); + assert(rowMeanmedTable1_1_9[i] == table1[i]); + } + + /* + [ 1 2 3 4 5 6 7 8 9 ] => [ 45 ] + */ + drowmeana(table1, 9, 1,rowMeanmedTable1_9_1); + assert( ( fabs(rowMeanmedTable1_9_1[0] ) - ( 45.0 / 9.0 ) ) / fabs ( rowMeanmedTable1_9_1[0] ) < 3e-16 ); + + /* + [ 1 3 5 7 9 ] + [ 2 4 6 8 10 ] => [ 3 7 11 15 19 ] + */ + drowmeana(table2, 2, 5,rowMeanmedTable2_2_5); + for ( i = 0 ; i < 5 ; ++i) { + printf("rowMeanmedTable2_2_5[%d] = %e\n", i, rowMeanmedTable2_2_5[i]); + } + assert( ( fabs(rowMeanmedTable2_2_5[0] ) - ( 3.0 / 2.0 ) ) / fabs ( rowMeanmedTable2_2_5[0] ) < 3e-16 ); + assert( ( fabs(rowMeanmedTable2_2_5[1] ) - ( 7.0 / 2.0 ) ) / fabs ( rowMeanmedTable2_2_5[1] ) < 3e-16 ); + assert( ( fabs(rowMeanmedTable2_2_5[2] ) - ( 11.0 / 2.0 ) ) / fabs ( rowMeanmedTable2_2_5[2] ) < 3e-16 ); + assert( ( fabs(rowMeanmedTable2_2_5[3] ) - ( 15.0 / 2.0 ) ) / fabs ( rowMeanmedTable2_2_5[3] ) < 3e-16 ); + assert( ( fabs(rowMeanmedTable2_2_5[4] ) - ( 19.0 / 2.0 ) ) / fabs ( rowMeanmedTable2_2_5[4] ) < 3e-16 ); + + /* + [ 1 6 ] + [ 2 7 ] => [ 15 40 ] + [ 3 8 ] + [ 4 9 ] + [ 5 10 ] + */ + drowmeana(table2, 5, 2,rowMeanmedTable2_5_2); + assert( ( fabs(rowMeanmedTable2_5_2[0] ) - ( 15.0 / 5.0 ) ) / fabs ( rowMeanmedTable2_5_2[0] ) < 3e-16 ); + assert( ( fabs(rowMeanmedTable2_5_2[1] ) - ( 40.0 / 5.0 ) ) / fabs ( rowMeanmedTable2_5_2[1] ) < 3e-16 ); + for ( i = 0 ; i < 2 ; ++i) { + printf("rowMeanmedTable2_5_2[%d] = %e\n", i, rowMeanmedTable2_5_2[i]); + } + + return 0; +} + +static int zmeansTest(void) { + doubleComplex value1 = DoubleComplex(3.0, 3.0); + doubleComplex value2 = DoubleComplex(1.123456789, 1.123456789); + + printf("\n>>>> Mean Double Complex Scalar Test\n"); + assert( ( fabs(zreals(zmeans(value1)) ) - ( 3.0 ) ) / fabs ( zreals(zmeans(value1)) ) < 3e-16 ); + assert( ( fabs(zimags(zmeans(value1)) ) - ( 3.0 ) ) / fabs ( zimags(zmeans(value1)) ) < 3e-16 ); + assert( ( fabs(zreals(zmeans(value2)) ) - ( 1.123456789 ) ) / fabs ( zreals(zmeans(value2)) ) < 3e-16 ); + assert( ( fabs(zimags(zmeans(value2)) ) - ( 1.123456789 ) ) / fabs ( zimags(zmeans(value2)) ) < 3e-16 ); + return 0; +} + +static int zmeanaTest(void) { + doubleComplex value1 = DoubleComplex(3.0, 3.0); + doubleComplex table1[3]; + doubleComplex value2 = DoubleComplex(9.186784563,9.186784563); + doubleComplex table2[5]; + + printf("\n>>>> Mean Double Complex Array Test\n"); + table1[0] = value1; + table1[1] = value1; + table1[2] = value1; + + table2[0] = value2; + table2[1] = value2; + table2[2] = value2; + table2[3] = value2; + table2[4] = value2; + +#ifdef LOCAL_DEBUG + printf("--------\n"); + printf("%e\n", zimags(zmeana(table1, 3))); + printf("%e\n", zreals(zmeana(table2, 5))); + printf("%e\n", zimags(zmeana(table2, 5))); + printf("%e\n", zreals(zmeana(table2, 5))); + printf("%e\n", zimags(zmeana(table2, 5))); + printf("--------\n"); +#endif + assert( ( fabs(zreals(zmeana(table1, 3)) ) - ( 9.0 / 3.0 ) ) / fabs ( zreals(zmeana(table1, 3)) ) < 3e-16 ); + assert( ( fabs(zimags(zmeana(table1, 3)) ) - ( 9.0 / 3.0 ) ) / fabs ( zimags(zmeana(table1, 3)) ) < 3e-16 ); + assert( ( fabs(zreals(zmeana(table2, 5)) ) - ( (9.186784563 + 9.186784563 + 9.186784563 + 9.186784563 + 9.186784563) / 5.0 ) ) / fabs ( zreals(zmeana(table2, 5)) ) < 3e-16 ); + assert( ( fabs(zimags(zmeana(table2, 5)) ) - ( (9.186784563 + 9.186784563 + 9.186784563 + 9.186784563 + 9.186784563) / 5.0 ) ) / fabs ( zimags(zmeana(table2, 5)) ) < 3e-16 ); + + return 0; +} + +static int zrowmeanaTest(void) { + int i = 0; + doubleComplex in[12]; + doubleComplex rowMeanmedIn_4_3[3]; + doubleComplex rowMeanmedIn_3_4[4]; + doubleComplex rowMeanmedIn_6_2[2]; + doubleComplex rowMeanmedIn_2_6[6]; + doubleComplex rowMeanmedIn_1_12[12]; + doubleComplex rowMeanmedIn_12_1[1]; + + printf("\n>>>> Row Mean Double Complex Array Test\n"); + /* Init input var */ + for (i = 0 ; i < 12 ; ++i) + { + in[i] = DoubleComplex((double) i / 10.0, (11.0 - (double) i) / 10.0); + } + + /* + [ 1.1i 0.4+0.7i 0.8+0.3i ] + [ 0.1+i 0.5+0.6i 0.9+0.2i ] => [ 0.6+3.8i 2.2+2.2i 3.8+0.6i ] + [ 0.2+0.9i 0.6+0.5i 1+0.1i ] + [ 0.3+0.8i 0.7+0.4i 1.1 ] + */ + zrowmeana(in, 4, 3, rowMeanmedIn_4_3); + for (i = 0 ; i < 3 ; ++i) { + printf("rowMeanmedIn_4_3[%d] = %e + %ei\n", i, zreals(rowMeanmedIn_4_3[i]), zimags(rowMeanmedIn_4_3[i])); + } + assert(fabs(zreals(rowMeanmedIn_4_3[0]) - 0.6 / 4.0) < 1e-16); + assert( ( fabs(zimags(rowMeanmedIn_4_3[0]) ) - ( 3.8 / 4.0 ) ) / fabs ( zimags(rowMeanmedIn_4_3[0]) ) < 3e-16 ); + assert( ( fabs(zreals(rowMeanmedIn_4_3[1]) ) - ( 2.2 / 4.0 ) ) / fabs ( zreals(rowMeanmedIn_4_3[1]) ) < 3e-16 ); + assert(fabs(zimags(rowMeanmedIn_4_3[1]) - 2.2 / 4.0) < 3e-16); + assert(fabs(zreals(rowMeanmedIn_4_3[2]) - 3.8 / 4.0) < 3e-16); + assert( ( fabs(zimags(rowMeanmedIn_4_3[2]) ) - ( 0.6 / 4.0 ) ) / fabs ( zimags(rowMeanmedIn_4_3[2]) ) < 3e-16 ); + + /* + [ 1.1i 0.3+0.8i 0.6+0.5i 0.9+0.2i ] + [ 0.1+i 0.4+0.7i 0.7+0.4i 1+0.1i ] => [ 0.3+3.i 1.2+2.1i 2.1+1.2i 3.+0.3i] + [ 0.2+0.9i 0.5+0.6i 0.8+0.3i 1.1 ] + */ + zrowmeana(in, 3, 4, rowMeanmedIn_3_4); + for (i = 0 ; i < 4 ; ++i) { + printf("rowMeanmedIn_3_4[%d] = %e + %ei\n", i, zreals(rowMeanmedIn_3_4[i]), zimags(rowMeanmedIn_3_4[i])); + } + assert(fabs(zreals(rowMeanmedIn_3_4[0]) - 0.3 / 3.0) < 1e-16); + assert( ( fabs(zimags(rowMeanmedIn_3_4[0]) ) - ( 3.0 / 3.0 ) ) / fabs ( zimags(rowMeanmedIn_3_4[0]) ) < 3e-16 ); + assert(zreals(rowMeanmedIn_3_4[1]) == 1.2 / 3.0 && zimags(rowMeanmedIn_3_4[1]) == 2.1 / 3.0); + assert(fabs(zreals(rowMeanmedIn_3_4[2]) - 2.1 / 3.0) < 3e-16); + assert( ( fabs(zimags(rowMeanmedIn_3_4[2]) ) - ( 1.2 / 3.0 ) ) / fabs ( zimags(rowMeanmedIn_3_4[2]) ) < 3e-16 ); + assert( ( fabs(zreals(rowMeanmedIn_3_4[3]) ) - ( 3.0 / 3.0 ) ) / fabs ( zreals(rowMeanmedIn_3_4[3]) ) < 3e-16 ); + assert(fabs(zimags(rowMeanmedIn_3_4[3]) - 0.3 / 3.0) < 1e-16); + + /* + [ 1.1i 0.6+0.5i ] + [ 0.1+i 0.7+0.4i ] + [ 0.2+0.9i 0.8+0.3i ] => [ 1.5+5.1i 5.1+1.5i ] + [ 0.3+0.8i 0.9+0.2i ] + [ 0.4+0.7i 1+0.1i ] + [ 0.5+0.6i 1.1 ] + */ + zrowmeana(in, 6, 2, rowMeanmedIn_6_2); + for (i = 0 ; i < 2 ; ++i) { + printf("rowMeanmedIn_6_2[%d] = %e + %ei\n", i, zreals(rowMeanmedIn_6_2[i]), zimags(rowMeanmedIn_6_2[i])); + } + assert(zreals(rowMeanmedIn_6_2[0]) == 1.5 / 6.0 && zimags(rowMeanmedIn_6_2[0]) == 5.1 / 6.0); + assert(zreals(rowMeanmedIn_6_2[1]) == 5.1 / 6.0 && zimags(rowMeanmedIn_6_2[1]) == 1.5 / 6.0); + + /* + [ 1.1i 0.2+0.9i 0.4+0.7i 0.6+0.5i 0.8+0.3i 1+0.1i ] + [ 0.1+i 0.3+0.8i 0.5+0.6i 0.7+0.4i 0.9+0.2i 1.1 ] => [ 0.1+2.1i 0.5+1.7i 0.9+1.3i 1.3+0.9i 1.7+0.5i 2.1+0.1i ] + */ + zrowmeana(in, 2, 6, rowMeanmedIn_2_6); + for (i = 0 ; i < 6 ; ++i) { + printf("rowMeanmedIn_2_6[%d] = %e + %ei\n", i, zreals(rowMeanmedIn_2_6[i]), zimags(rowMeanmedIn_2_6[i])); + } + assert(zreals(rowMeanmedIn_2_6[0]) == 0.1 / 2.0 && zimags(rowMeanmedIn_2_6[0]) == 2.1 / 2.0); + assert( ( fabs(zreals(rowMeanmedIn_2_6[1]) ) - ( 0.5 / 2.0 ) ) / fabs(zreals(rowMeanmedIn_2_6[1])) < 3e-16); + assert( ( fabs(zimags(rowMeanmedIn_2_6[1]) ) - ( 1.7 / 2.0 ) ) / fabs(zimags(rowMeanmedIn_2_6[1])) < 3e-16); + assert( ( fabs(zreals(rowMeanmedIn_2_6[2]) ) - ( 0.9 / 2.0 ) ) / fabs(zreals(rowMeanmedIn_2_6[2])) < 3e-16); + assert( ( fabs(zimags(rowMeanmedIn_2_6[2]) ) - ( 1.3 / 2.0 ) ) / fabs(zimags(rowMeanmedIn_2_6[2])) < 3e-16); + assert( ( fabs(zreals(rowMeanmedIn_2_6[3]) ) - ( 1.3 / 2.0 ) ) / fabs(zreals(rowMeanmedIn_2_6[3])) < 3e-16); + assert( ( fabs(zimags(rowMeanmedIn_2_6[3]) ) - ( 0.9 / 2.0 ) ) / fabs(zimags(rowMeanmedIn_2_6[3])) < 3e-16); + assert( ( fabs(zreals(rowMeanmedIn_2_6[4]) ) - ( 1.7 / 2.0 ) ) / fabs(zreals(rowMeanmedIn_2_6[4])) < 3e-16); + assert( ( fabs(zimags(rowMeanmedIn_2_6[4]) ) - ( 0.5 / 2.0 ) ) / fabs(zimags(rowMeanmedIn_2_6[4])) < 3e-16); + assert( ( fabs(zreals(rowMeanmedIn_2_6[5]) ) - ( 2.1 / 2.0 ) ) / fabs(zreals(rowMeanmedIn_2_6[5])) < 3e-16); + assert( ( fabs(zimags(rowMeanmedIn_2_6[5]) ) - ( 0.1 / 2.0 ) ) / fabs(zimags(rowMeanmedIn_2_6[5])) < 3e-16); + + /* + [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + => + [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + */ + zrowmeana(in, 1, 12, rowMeanmedIn_1_12); + for (i = 0 ; i < 12 ; ++i) { + printf("rowMeanmedIn_1_12[%d] = %e + %ei\n", i, zreals(rowMeanmedIn_1_12[i]), zimags(rowMeanmedIn_1_12[i])); + assert(zreals(rowMeanmedIn_1_12[i]) == zreals(in[i]) && zimags(rowMeanmedIn_1_12[i]) == zimags(in[i])); + } + + /* + [ 1.1i ] + [ 0.1+i ] + [ 0.2+0.9i ] + [ 0.3+0.8i ] + [ 0.4+0.7i ] + [ 0.5+0.6i ] + [ 0.6+0.5i ] => [ 6.6+6.6i ] + [ 0.7+0.4i ] + [ 0.8+0.3i ] + [ 0.9+0.2i ] + [ 1+0.1i ] + [ 1.1 ] + */ + zrowmeana(in, 12, 1, rowMeanmedIn_12_1); + printf("rowMeanmedIn_12_1[%d] = %e + %ei\n", 0, zreals(rowMeanmedIn_12_1[0]), zimags(rowMeanmedIn_12_1[0])); + assert(zreals(rowMeanmedIn_12_1[0]) == 6.6 / 12.0 && zimags(rowMeanmedIn_12_1[0]) == 6.6 / 12.0); + + return 0; +} + +static int zcolumnmeanaTest(void) { + int i = 0; + doubleComplex in[12]; + doubleComplex columnMeanmedIn_4_3[4]; + doubleComplex columnMeanmedIn_3_4[3]; + doubleComplex columnMeanmedIn_6_2[6]; + doubleComplex columnMeanmedIn_2_6[2]; + doubleComplex columnMeanmedIn_1_12[1]; + doubleComplex columnMeanmedIn_12_1[12]; + + printf("\n>>>> ColumnMean Double Complex Array Test\n"); + /* Init input var */ + for (i = 0 ; i < 12 ; ++i) + { + in[i] = DoubleComplex((double) i / 10.0, (11.0 - (double) i) / 10.0); + } + + /* + [ 1.1i 0.4+0.7i 0.8+0.3i ] + [ 0.1+i 0.5+0.6i 0.9+0.2i ] => [ 1.2+2.1i 1.5+1.8i 1.8+1.5i 2.1+1.2i ] + [ 0.2+0.9i 0.6+0.5i 1+0.1i ] + [ 0.3+0.8i 0.7+0.4i 1.1 ] + */ + zcolumnmeana(in, 4, 3, columnMeanmedIn_4_3); + for (i = 0 ; i < 4 ; ++i) { + printf("columnMeanmedIn_4_3[%d] = %e + %ei\n", i, zreals(columnMeanmedIn_4_3[i]), zimags(columnMeanmedIn_4_3[i])); + } + assert(fabs(zreals(columnMeanmedIn_4_3[0]) - 1.2 / 3.0) < 3e-16); + assert(fabs(zimags(columnMeanmedIn_4_3[0]) - 2.1 / 3.0) < 3e-16); + assert(fabs(zreals(columnMeanmedIn_4_3[1]) - 1.5 / 3.0) < 3e-16); + assert(fabs(zimags(columnMeanmedIn_4_3[1]) - 1.8 / 3.0) < 3e-16); + assert(fabs(zreals(columnMeanmedIn_4_3[2]) - 1.8 / 3.0) < 3e-16); + assert(fabs(zimags(columnMeanmedIn_4_3[2]) - 1.5 / 3.0) < 3e-16); + assert(fabs(zreals(columnMeanmedIn_4_3[3]) - 2.1 / 3.0) < 3e-16); + assert(fabs(zimags(columnMeanmedIn_4_3[3]) - 1.2 / 3.0) < 3e-16); + + /* + [ 1.1i 0.3+0.8i 0.6+0.5i 0.9+0.2i ] + [ 0.1+i 0.4+0.7i 0.7+0.4i 1+0.1i ] => [ 1.8+2.6i 2.2+2.2i 2.6+1.8i ] + [ 0.2+0.9i 0.5+0.6i 0.8+0.3i 1.1 ] + */ + zcolumnmeana(in, 3, 4, columnMeanmedIn_3_4); + for (i = 0 ; i < 3 ; ++i) { + printf("columnMeanmedIn_3_4[%d] = %e + %ei\n", i, zreals(columnMeanmedIn_3_4[i]), zimags(columnMeanmedIn_3_4[i])); + } + assert(fabs(zreals(columnMeanmedIn_3_4[0]) - 1.8 / 4.0) < 3e-16); + assert(fabs(zimags(columnMeanmedIn_3_4[0]) - 2.6 / 4.0) < 3e-16); + assert(zreals(columnMeanmedIn_3_4[1]) == 2.2 / 4.0 && zimags(columnMeanmedIn_3_4[1]) == 2.2 / 4.0); + assert(zreals(columnMeanmedIn_3_4[2]) == 2.6 / 4.0 && zimags(columnMeanmedIn_3_4[2]) == 1.8 / 4.0); + + /* + [ 1.1i 0.6+0.5i ] + [ 0.1+i 0.7+0.4i ] + [ 0.2+0.9i 0.8+0.3i ] => [ 0.6+1.6i 0.8+1.4i 1+1.2i 1.2+i 1.4+0.8i 1.6+0.6i ] + [ 0.3+0.8i 0.9+0.2i ] + [ 0.4+0.7i 1+0.1i ] + [ 0.5+0.6i 1.1 ] + */ + zcolumnmeana(in, 6, 2, columnMeanmedIn_6_2); + for (i = 0 ; i < 6 ; ++i) { + printf("columnMeanmedIn_6_2[%d] = %e + %ei\n", i, zreals(columnMeanmedIn_6_2[i]), zimags(columnMeanmedIn_6_2[i])); + } + assert(zreals(columnMeanmedIn_6_2[0]) == 0.6 / 2.0 && zimags(columnMeanmedIn_6_2[0]) == 1.6 / 2.0); + assert(fabs(zreals(columnMeanmedIn_6_2[1]) - 0.8 / 2.0) < 3e-16); + assert(zimags(columnMeanmedIn_6_2[1]) == 1.4 / 2.0); + assert(zreals(columnMeanmedIn_6_2[2]) == 1.0 / 2.0 && zimags(columnMeanmedIn_6_2[2]) == 1.2 / 2.0); + assert(zreals(columnMeanmedIn_6_2[3]) == 1.2 / 2.0 && zimags(columnMeanmedIn_6_2[3]) == 1.0 / 2.0); + assert(zreals(columnMeanmedIn_6_2[4]) == 1.4 / 2.0); + assert(fabs(zimags(columnMeanmedIn_6_2[4]) - 0.8 / 2.0) < 3e-16); + assert(zreals(columnMeanmedIn_6_2[5]) == 1.6 / 2.0 && zimags(columnMeanmedIn_6_2[5]) == 0.6 / 2.0); + + /* + [ 1.1i 0.2+0.9i 0.4+0.7i 0.6+0.5i 0.8+0.3i 1+0.1i ] + [ 0.1+i 0.3+0.8i 0.5+0.6i 0.7+0.4i 0.9+0.2i 1.1 ] => [ 3+3.6i 3.6+3i ] + */ + zcolumnmeana(in, 2, 6, columnMeanmedIn_2_6); + for (i = 0 ; i < 2 ; ++i) { + printf("columnMeanmedIn_2_6[%d] = %e + %ei\n", i, zreals(columnMeanmedIn_2_6[i]), zimags(columnMeanmedIn_2_6[i])); + } + assert(fabs(zreals(columnMeanmedIn_2_6[0]) - 3.0 / 6.0) < 3e-16); + assert(fabs(zimags(columnMeanmedIn_2_6[0]) - 3.6 / 6.0) < 3e-16); + assert(fabs(zreals(columnMeanmedIn_2_6[1]) - 3.6 / 6.0) < 3e-16); + assert(fabs(zimags(columnMeanmedIn_2_6[1]) - 3.0 / 6.0) < 3e-16); + + /* + [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + => + [ 6.6+6.6i ] + */ + zcolumnmeana(in, 1, 12, columnMeanmedIn_1_12); + printf("columnMeanmedIn_1_12[%d] = %e + %ei\n", 0, zreals(columnMeanmedIn_1_12[0]), zimags(columnMeanmedIn_1_12[0])); + assert(zreals(columnMeanmedIn_1_12[0]) == 6.6 / 12.0 && zimags(columnMeanmedIn_1_12[0]) == 6.6 / 12.0); + + + /* + [ 1.1i ] + [ 0.1+i ] + [ 0.2+0.9i ] + [ 0.3+0.8i ] + [ 0.4+0.7i ] + [ 0.5+0.6i ] + [ 0.6+0.5i ] => [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + [ 0.7+0.4i ] + [ 0.8+0.3i ] + [ 0.9+0.2i ] + [ 1+0.1i ] + [ 1.1 ] + */ + zcolumnmeana(in, 12, 1, columnMeanmedIn_12_1); + for (i = 0 ; i < 12 ; ++i) { + printf("columnMeanmedIn_12_1[%d] = %e + %ei\n", i, zreals(columnMeanmedIn_12_1[i]), zimags(columnMeanmedIn_12_1[i])); + assert(zreals(columnMeanmedIn_12_1[i]) == zreals(in[i]) && zimags(columnMeanmedIn_12_1[i]) == zimags(in[i])); + } + + return 0; +} + +static int testMean(void) { + + dmeansTest(); + dmeanaTest(); + drowmeanaTest(); + dcolumnmeanaTest(); + zmeansTest(); + zmeanaTest(); + zrowmeanaTest(); + zcolumnmeanaTest(); + + return 0; +} + +int main(void) { + assert(testMean() == 0); + return 0; +} diff --git a/src/c/statisticsFunctions/mean/testFloatMean.c b/src/c/statisticsFunctions/mean/testFloatMean.c new file mode 100644 index 0000000..e5c6d9d --- /dev/null +++ b/src/c/statisticsFunctions/mean/testFloatMean.c @@ -0,0 +1,481 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <assert.h> +#include <stdio.h> +#include <math.h> +#include "mean.h" + +/* #define LOCAL_DEBUG */ + +static int smeansTest(void) { + float value1 = 3.0f; + float value2 = 1.123456789f; + + printf("\n>>>> Mean Float Scalar Test\n"); + assert(smeans(value1) == 3.0f); + assert(smeans(value2) == 1.123456789f); + + return 0; +} + +static int smeanaTest(void) { + float table1[3] = {3.0f, 3.0f, 3.0f}; + float table2[5] = {9.186784563f, + 9.186784563f, + 9.186784563f, + 9.186784563f, + 9.186784563f}; + + printf("\n>>>> Mean Float Array Test\n"); + assert(smeana(table1, 3) == 9.0f / 3.0f); + assert((smeana(table2, 5) - (9.186784563f + 9.186784563f + 9.186784563f + 9.186784563f + 9.186784563f) / 5.0f) / smeana(table2, 5) < 1e-6); + return 0; +} + +static int scolumnmeanaTest(void) { + int i = 0; + float table1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float table2[10] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f}; + float columnMeanmedTable1_3_3[3] = {0}; + float columnMeanmedTable1_1_9[1] = {0}; + float columnMeanmedTable1_9_1[9] = {0}; + float columnMeanmedTable2_2_5[2] = {0}; + float columnMeanmedTable2_5_2[5] = {0}; + + printf("\n>>>> Column Mean Float Array Test\n"); + /* + [ 1 2 3 ] + [ 4 5 6 ] => [ 6 15 24 ] + [ 7 8 9 ] + */ + scolumnmeana(table1, 3, 3,columnMeanmedTable1_3_3); + assert(columnMeanmedTable1_3_3[0] == 6.0f / 3.0f); + assert(columnMeanmedTable1_3_3[1] == 15.0f / 3.0f); + assert(columnMeanmedTable1_3_3[2] == 24.0f / 3.0f); + + /* + [ 1 2 3 4 5 6 7 8 9 ] => [ 45 ] + */ + scolumnmeana(table1, 1, 9,columnMeanmedTable1_1_9); + assert(columnMeanmedTable1_1_9[0] == 45.0f / 9.0f); + + /* + [ 1 ] + [ 2 ] + [ 3 ] + [ 4 ] + [ 5 ] => [ 1 2 3 4 5 6 7 8 9 ] + [ 6 ] + [ 7 ] + [ 8 ] + [ 9 ] + */ + scolumnmeana(table1, 9, 1,columnMeanmedTable1_9_1); + for ( i = 0 ; i < 9 ; ++i) { + printf("columnMeanmedTable1_9_1[%d] = %e\n", i, columnMeanmedTable1_9_1[i]); + assert(columnMeanmedTable1_9_1[i] == table1[i]); + } + + /* + [ 1 3 5 7 9 ] + [ 2 4 6 8 10 ] => [ 25 30 ] + */ + scolumnmeana(table2, 2, 5,columnMeanmedTable2_2_5); + assert(columnMeanmedTable2_2_5[0] == 25.0f / 5.0f); + assert(columnMeanmedTable2_2_5[1] == 30.0f / 5.0f); + for ( i = 0 ; i < 2 ; ++i) { + printf("columnMeanmedTable2_2_5[%d] = %e\n", i, columnMeanmedTable2_2_5[i]); + } + + /* + [ 1 6 ] + [ 2 7 ] => [ 7 9 11 13 15 ] + [ 3 8 ] + [ 4 9 ] + [ 5 10 ] + */ + scolumnmeana(table2, 5, 2,columnMeanmedTable2_5_2); + assert(columnMeanmedTable2_5_2[0] == 7.0f / 2.0f); + assert(columnMeanmedTable2_5_2[1] == 9.0f / 2.0f); + assert(columnMeanmedTable2_5_2[2] == 11.0f / 2.0f); + assert(columnMeanmedTable2_5_2[3] == 13.0f / 2.0f); + assert(columnMeanmedTable2_5_2[4] == 15.0f / 2.0f); + for ( i = 0 ; i < 5 ; ++i) { + printf("columnMeanmedTable2_5_2[%d] = %e\n", i, columnMeanmedTable2_5_2[i]); + } + + return 0; +} + +static int srowmeanaTest(void) { + int i = 0; + float table1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float table2[10] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f}; + float rowMeanmedTable1_3_3[3] = {0}; + float rowMeanmedTable1_1_9[9] = {0}; + float rowMeanmedTable1_9_1[1] = {0}; + float rowMeanmedTable2_2_5[5] = {0}; + float rowMeanmedTable2_5_2[2] = {0}; + + printf("\n>>>> Row Mean Float Array Test\n"); + /* + [ 1 2 3 ] + [ 4 5 6 ] => [ 12 15 18 ] + [ 7 8 9 ] + */ + srowmeana(table1, 3, 3,rowMeanmedTable1_3_3); + for ( i = 0 ; i < 3 ; ++i) { + printf("rowMeanmedTable1_3_3[%d] = %e\n", i, rowMeanmedTable1_3_3[i]); + } + assert(rowMeanmedTable1_3_3[0] == 12.0f / 3.0f); + assert(rowMeanmedTable1_3_3[1] == 15.0f / 3.0f); + assert(rowMeanmedTable1_3_3[2] == 18.0f / 3.0f); + + /* + [ 1 ] + [ 2 ] + [ 3 ] + [ 4 ] + [ 5 ] => [ 1 2 3 4 5 6 7 8 9 ] + [ 6 ] + [ 7 ] + [ 8 ] + [ 9 ] + */ + srowmeana(table1, 1, 9,rowMeanmedTable1_1_9); + for ( i = 0 ; i < 9 ; ++i) { + printf("rowMeanmedTable1_1_9[%d] = %e\n", i, rowMeanmedTable1_1_9[i]); + assert(rowMeanmedTable1_1_9[i] == table1[i]); + } + + /* + [ 1 2 3 4 5 6 7 8 9 ] => [ 45 ] + */ + srowmeana(table1, 9, 1,rowMeanmedTable1_9_1); + assert(rowMeanmedTable1_9_1[0] == 45.0f / 9.0f); + + /* + [ 1 3 5 7 9 ] + [ 2 4 6 8 10 ] => [ 3 7 11 15 19 ] + */ + srowmeana(table2, 2, 5,rowMeanmedTable2_2_5); + assert(rowMeanmedTable2_2_5[0] == 3.0f / 2.0f); + assert(rowMeanmedTable2_2_5[1] == 7.0f / 2.0f); + assert(rowMeanmedTable2_2_5[2] == 11.0f / 2.0f); + assert(rowMeanmedTable2_2_5[3] == 15.0f / 2.0f); + assert(rowMeanmedTable2_2_5[4] == 19.0f / 2.0f); + for ( i = 0 ; i < 5 ; ++i) { + printf("rowMeanmedTable2_2_5[%d] = %e\n", i, rowMeanmedTable2_2_5[i]); + } + + /* + [ 1 6 ] + [ 2 7 ] => [ 15 40 ] + [ 3 8 ] + [ 4 9 ] + [ 5 10 ] + */ + srowmeana(table2, 5, 2,rowMeanmedTable2_5_2); + assert(rowMeanmedTable2_5_2[0] == 15.0f / 5.0f); + assert(rowMeanmedTable2_5_2[1] == 40.0f / 5.0f); + for ( i = 0 ; i < 2 ; ++i) { + printf("rowMeanmedTable2_5_2[%d] = %e\n", i, rowMeanmedTable2_5_2[i]); + } + + return 0; +} + +static int cmeansTest(void) { + floatComplex value1 = FloatComplex(3.0f, 3.0f); + floatComplex value2 = FloatComplex(1.123456789f, 1.123456789f); + + printf("\n>>>> Mean Float Complex Scalar Test\n"); + assert(creals(cmeans(value1)) == 3.0f); + assert(cimags(cmeans(value1)) == 3.0f); + assert(creals(cmeans(value2)) == 1.123456789f); + assert(cimags(cmeans(value2)) == 1.123456789f); + return 0; +} + +static int cmeanaTest(void) { + floatComplex value1 = FloatComplex(3.0f, 3.0f); + floatComplex table1[3]; + floatComplex value2 = FloatComplex(9.186784563f,9.186784563f); + floatComplex table2[5]; + + printf("\n>>>> Mean Float Complex Array Test\n"); + table1[0] = value1; + table1[1] = value1; + table1[2] = value1; + + table2[0] = value2; + table2[1] = value2; + table2[2] = value2; + table2[3] = value2; + table2[4] = value2; + +#ifdef LOCAL_DEBUG + printf("--------\n"); + printf("%e\n", cimags(cmeana(table1, 3))); + printf("%e\n", creals(cmeana(table2, 5))); + printf("%e\n", cimags(cmeana(table2, 5))); + printf("%e\n", creals(cmeana(table2, 5))); + printf("%e\n", cimags(cmeana(table2, 5))); + printf("--------\n"); +#endif + assert(creals(cmeana(table1, 3)) == 9.0f / 3.0f); + assert(cimags(cmeana(table1, 3)) == 9.0f / 3.0f); + assert(creals(cmeana(table2, 5)) == (9.186784563f + 9.186784563f + 9.186784563f + 9.186784563f + 9.186784563f) / 5.0f); + assert(cimags(cmeana(table2, 5)) == (9.186784563f + 9.186784563f + 9.186784563f + 9.186784563f + 9.186784563f) / 5.0f); + + return 0; +} + +static int crowmeanaTest(void) { + int i = 0; + floatComplex in[12]; + floatComplex rowMeanmedIn_4_3[3]; + floatComplex rowMeanmedIn_3_4[4]; + floatComplex rowMeanmedIn_6_2[2]; + floatComplex rowMeanmedIn_2_6[6]; + floatComplex rowMeanmedIn_1_12[12]; + floatComplex rowMeanmedIn_12_1[1]; + + printf("\n>>>> Row Mean Float Complex Array Test\n"); + /* Init input var */ + for (i = 0 ; i < 12 ; ++i) + { + in[i] = FloatComplex((float) i / 10.0f, (11.0f - (float) i) / 10.0f); + } + + /* + [ 1.1i 0.4+0.7i 0.8+0.3i ] + [ 0.1+i 0.5+0.6i 0.9+0.2i ] => [ 0.6+3.8i 2.2+2.2i 3.8+0.6i ] + [ 0.2+0.9i 0.6+0.5i 1+0.1i ] + [ 0.3+0.8i 0.7+0.4i 1.1 ] + */ + crowmeana(in, 4, 3, rowMeanmedIn_4_3); + for (i = 0 ; i < 3 ; ++i) { + printf("rowMeanmedIn_4_3[%d] = %e + %ei\n", i, creals(rowMeanmedIn_4_3[i]), cimags(rowMeanmedIn_4_3[i])); + } + assert(creals(rowMeanmedIn_4_3[0]) == 0.6f / 4.0f && cimags(rowMeanmedIn_4_3[0]) == 3.8f / 4.0f); + assert(creals(rowMeanmedIn_4_3[1]) == 2.2f / 4.0f && cimags(rowMeanmedIn_4_3[1]) == 2.2f / 4.0f); + assert(fabs(creals(rowMeanmedIn_4_3[2]) - 3.8f / 4.0f) < 1e-06); + assert(cimags(rowMeanmedIn_4_3[2]) == 0.6f / 4.0f); + + /* + [ 1.1i 0.3+0.8i 0.6+0.5i 0.9+0.2i ] + [ 0.1+i 0.4+0.7i 0.7+0.4i 1+0.1i ] => [ 0.3+3.i 1.2+2.1i 2.1+1.2i 3.+0.3i] + [ 0.2+0.9i 0.5+0.6i 0.8+0.3i 1.1 ] + */ + crowmeana(in, 3, 4, rowMeanmedIn_3_4); + for (i = 0 ; i < 4 ; ++i) { + printf("rowMeanmedIn_3_4[%d] = %e + %ei\n", i, creals(rowMeanmedIn_3_4[i]), cimags(rowMeanmedIn_3_4[i])); + } + assert(creals(rowMeanmedIn_3_4[0]) == 0.3f / 3.0f && cimags(rowMeanmedIn_3_4[0]) == 3.0f / 3.0f); + assert(creals(rowMeanmedIn_3_4[1]) == 1.2f / 3.0f && cimags(rowMeanmedIn_3_4[1]) == 2.1f / 3.0f); + assert(creals(rowMeanmedIn_3_4[2]) == 2.1f / 3.0f && cimags(rowMeanmedIn_3_4[2]) == 1.2f / 3.0f); + assert(creals(rowMeanmedIn_3_4[3]) == 3.0f / 3.0f && cimags(rowMeanmedIn_3_4[3]) == 0.3f / 3.0f); + + /* + [ 1.1i 0.6+0.5i ] + [ 0.1+i 0.7+0.4i ] + [ 0.2+0.9i 0.8+0.3i ] => [ 1.5+5.1i 5.1+1.5i ] + [ 0.3+0.8i 0.9+0.2i ] + [ 0.4+0.7i 1+0.1i ] + [ 0.5+0.6i 1.1 ] + */ + crowmeana(in, 6, 2, rowMeanmedIn_6_2); + for (i = 0 ; i < 2 ; ++i) { + printf("rowMeanmedIn_6_2[%d] = %e + %ei\n", i, creals(rowMeanmedIn_6_2[i]), cimags(rowMeanmedIn_6_2[i])); + } + assert(creals(rowMeanmedIn_6_2[0]) == 1.5f / 6.0f && cimags(rowMeanmedIn_6_2[0]) == 5.1f / 6.0f); + assert(creals(rowMeanmedIn_6_2[1]) == 5.1f / 6.0f); + assert(fabs(cimags(rowMeanmedIn_6_2[1]) - 1.5f / 6.0f) < 1e-06); + + /* + [ 1.1i 0.2+0.9i 0.4+0.7i 0.6+0.5i 0.8+0.3i 1+0.1i ] + [ 0.1+i 0.3+0.8i 0.5+0.6i 0.7+0.4i 0.9+0.2i 1.1 ] => [ 0.1+2.1i 0.5+1.7i 0.9+1.3i 1.3+0.9i 1.7+0.5i 2.1+0.1i ] + */ + crowmeana(in, 2, 6, rowMeanmedIn_2_6); + for (i = 0 ; i < 6 ; ++i) { + printf("rowMeanmedIn_2_6[%d] = %e + %ei\n", i, creals(rowMeanmedIn_2_6[i]), cimags(rowMeanmedIn_2_6[i])); + } + assert(creals(rowMeanmedIn_2_6[0]) == 0.1f / 2.0f && cimags(rowMeanmedIn_2_6[0]) == 2.1f / 2.0f); + assert(creals(rowMeanmedIn_2_6[1]) == 0.5f / 2.0f && cimags(rowMeanmedIn_2_6[1]) == 1.7f / 2.0f); + assert(creals(rowMeanmedIn_2_6[2]) == 0.9f / 2.0f && cimags(rowMeanmedIn_2_6[2]) == 1.3f / 2.0f); + assert(creals(rowMeanmedIn_2_6[3]) == 1.3f / 2.0f && cimags(rowMeanmedIn_2_6[3]) == 0.9f / 2.0f); + assert(creals(rowMeanmedIn_2_6[4]) == 1.7f / 2.0f && cimags(rowMeanmedIn_2_6[4]) == 0.5f / 2.0f); + assert(creals(rowMeanmedIn_2_6[5]) == 2.1f / 2.0f && cimags(rowMeanmedIn_2_6[5]) == 0.1f / 2.0f); + + /* + [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + => + [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + */ + crowmeana(in, 1, 12, rowMeanmedIn_1_12); + for (i = 0 ; i < 12 ; ++i) { + printf("rowMeanmedIn_1_12[%d] = %e + %ei\n", i, creals(rowMeanmedIn_1_12[i]), cimags(rowMeanmedIn_1_12[i])); + assert(creals(rowMeanmedIn_1_12[i]) == creals(in[i]) && cimags(rowMeanmedIn_1_12[i]) == cimags(in[i])); + } + + /* + [ 1.1i ] + [ 0.1+i ] + [ 0.2+0.9i ] + [ 0.3+0.8i ] + [ 0.4+0.7i ] + [ 0.5+0.6i ] + [ 0.6+0.5i ] => [ 6.6+6.6i ] + [ 0.7+0.4i ] + [ 0.8+0.3i ] + [ 0.9+0.2i ] + [ 1+0.1i ] + [ 1.1 ] + */ + crowmeana(in, 12, 1, rowMeanmedIn_12_1); + printf("rowMeanmedIn_12_1[%d] = %e + %ei\n", 0, creals(rowMeanmedIn_12_1[0]), cimags(rowMeanmedIn_12_1[0])); + assert(creals(rowMeanmedIn_12_1[0]) == 6.6f / 12.0f && cimags(rowMeanmedIn_12_1[0]) == 6.6f / 12.0f); + + return 0; +} + +static int ccolumnmeanaTest(void) { + int i = 0; + floatComplex in[12]; + floatComplex columnMeanmedIn_4_3[4]; + floatComplex columnMeanmedIn_3_4[3]; + floatComplex columnMeanmedIn_6_2[6]; + floatComplex columnMeanmedIn_2_6[2]; + floatComplex columnMeanmedIn_1_12[1]; + floatComplex columnMeanmedIn_12_1[12]; + + printf("\n>>>> ColumnMean Float Complex Array Test\n"); + /* Init input var */ + for (i = 0 ; i < 12 ; ++i) + { + in[i] = FloatComplex((float) i / 10.0f, (11.0f - (float) i) / 10.0f); + } + + /* + [ 1.1i 0.4+0.7i 0.8+0.3i ] + [ 0.1+i 0.5+0.6i 0.9+0.2i ] => [ 1.2+2.1i 1.5+1.8i 1.8+1.5i 2.1+1.2i ] + [ 0.2+0.9i 0.6+0.5i 1+0.1i ] + [ 0.3+0.8i 0.7+0.4i 1.1 ] + */ + ccolumnmeana(in, 4, 3, columnMeanmedIn_4_3); + for (i = 0 ; i < 4 ; ++i) { + printf("columnMeanmedIn_4_3[%d] = %e + %ei\n", i, creals(columnMeanmedIn_4_3[i]), cimags(columnMeanmedIn_4_3[i])); + } + assert(creals(columnMeanmedIn_4_3[0]) == 1.2f / 3.0f && cimags(columnMeanmedIn_4_3[0]) == 2.1f / 3.0f); + assert(creals(columnMeanmedIn_4_3[1]) == 1.5f / 3.0f); + assert(fabs(cimags(columnMeanmedIn_4_3[1]) - 1.8f / 3.0f) < 1e-06); + assert(creals(columnMeanmedIn_4_3[2]) == 1.8f / 3.0f && cimags(columnMeanmedIn_4_3[2]) == 1.5f / 3.0f); + assert(creals(columnMeanmedIn_4_3[3]) == 2.1f / 3.0f && cimags(columnMeanmedIn_4_3[3]) == 1.2f / 3.0f); + + /* + [ 1.1i 0.3+0.8i 0.6+0.5i 0.9+0.2i ] + [ 0.1+i 0.4+0.7i 0.7+0.4i 1+0.1i ] => [ 1.8+2.6i 2.2+2.2i 2.6+1.8i ] + [ 0.2+0.9i 0.5+0.6i 0.8+0.3i 1.1 ] + */ + ccolumnmeana(in, 3, 4, columnMeanmedIn_3_4); + for (i = 0 ; i < 3 ; ++i) { + printf("columnMeanmedIn_3_4[%d] = %e + %ei\n", i, creals(columnMeanmedIn_3_4[i]), cimags(columnMeanmedIn_3_4[i])); + } + assert(creals(columnMeanmedIn_3_4[0]) == 1.8f / 4.0f); + assert(fabs(cimags(columnMeanmedIn_3_4[0]) - 2.6f / 4.0f) < 1e-06); + assert(creals(columnMeanmedIn_3_4[1]) == 2.2f / 4.0f && cimags(columnMeanmedIn_3_4[1]) == 2.2f / 4.0f); + assert(creals(columnMeanmedIn_3_4[2]) == 2.6f / 4.0f && cimags(columnMeanmedIn_3_4[2]) == 1.8f / 4.0f); + + /* + [ 1.1i 0.6+0.5i ] + [ 0.1+i 0.7+0.4i ] + [ 0.2+0.9i 0.8+0.3i ] => [ 0.6+1.6i 0.8+1.4i 1+1.2i 1.2+i 1.4+0.8i 1.6+0.6i ] + [ 0.3+0.8i 0.9+0.2i ] + [ 0.4+0.7i 1+0.1i ] + [ 0.5+0.6i 1.1 ] + */ + ccolumnmeana(in, 6, 2, columnMeanmedIn_6_2); + for (i = 0 ; i < 6 ; ++i) { + printf("columnMeanmedIn_6_2[%d] = %e + %ei\n", i, creals(columnMeanmedIn_6_2[i]), cimags(columnMeanmedIn_6_2[i])); + } + assert(creals(columnMeanmedIn_6_2[0]) == 0.6f / 2.0f && cimags(columnMeanmedIn_6_2[0]) == 1.6f / 2.0f); + assert(creals(columnMeanmedIn_6_2[1]) == 0.8f / 2.0f && cimags(columnMeanmedIn_6_2[1]) == 1.4f / 2.0f); + assert(creals(columnMeanmedIn_6_2[2]) == 1.0f / 2.0f && cimags(columnMeanmedIn_6_2[2]) == 1.2f / 2.0f); + assert(creals(columnMeanmedIn_6_2[3]) == 1.2f / 2.0f && cimags(columnMeanmedIn_6_2[3]) == 1.0f / 2.0f); + assert(creals(columnMeanmedIn_6_2[4]) == 1.4f / 2.0f && cimags(columnMeanmedIn_6_2[4]) == 0.8f / 2.0f); + assert(creals(columnMeanmedIn_6_2[5]) == 1.6f / 2.0f && cimags(columnMeanmedIn_6_2[5]) == 0.6f / 2.0f); + + /* + [ 1.1i 0.2+0.9i 0.4+0.7i 0.6+0.5i 0.8+0.3i 1+0.1i ] + [ 0.1+i 0.3+0.8i 0.5+0.6i 0.7+0.4i 0.9+0.2i 1.1 ] => [ 3+3.6i 3.6+3i ] + */ + ccolumnmeana(in, 2, 6, columnMeanmedIn_2_6); + for (i = 0 ; i < 2 ; ++i) { + printf("columnMeanmedIn_2_6[%d] = %e + %ei\n", i, creals(columnMeanmedIn_2_6[i]), cimags(columnMeanmedIn_2_6[i])); + } + assert(creals(columnMeanmedIn_2_6[0]) == 3.0f / 6.0f && cimags(columnMeanmedIn_2_6[0]) == 3.6f / 6.0f); + assert(creals(columnMeanmedIn_2_6[1]) == 3.6f / 6.0f); + assert(fabs(cimags(columnMeanmedIn_2_6[1]) -3.0f / 6.0f) < 1e-06); + + /* + [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + => + [ 6.6+6.6i ] + */ + ccolumnmeana(in, 1, 12, columnMeanmedIn_1_12); + printf("columnMeanmedIn_1_12[%d] = %e + %ei\n", 0, creals(columnMeanmedIn_1_12[0]), cimags(columnMeanmedIn_1_12[0])); + assert(creals(columnMeanmedIn_1_12[0]) == 6.6f / 12.0f && cimags(columnMeanmedIn_1_12[0]) == 6.6f / 12.0f); + + + /* + [ 1.1i ] + [ 0.1+i ] + [ 0.2+0.9i ] + [ 0.3+0.8i ] + [ 0.4+0.7i ] + [ 0.5+0.6i ] + [ 0.6+0.5i ] => [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + [ 0.7+0.4i ] + [ 0.8+0.3i ] + [ 0.9+0.2i ] + [ 1+0.1i ] + [ 1.1 ] + */ + ccolumnmeana(in, 12, 1, columnMeanmedIn_12_1); + for (i = 0 ; i < 12 ; ++i) { + printf("columnMeanmedIn_12_1[%d] = %e + %ei\n", i, creals(columnMeanmedIn_12_1[i]), cimags(columnMeanmedIn_12_1[i])); + assert(creals(columnMeanmedIn_12_1[i]) == creals(in[i]) && cimags(columnMeanmedIn_12_1[i]) == cimags(in[i])); + } + + return 0; +} + +static int testMean(void) { + + smeansTest(); + smeanaTest(); + srowmeanaTest(); + scolumnmeanaTest(); + cmeansTest(); + cmeanaTest(); + crowmeanaTest(); + ccolumnmeanaTest(); + + return 0; +} + +int main(void) { + assert(testMean() == 0); + return 0; +} diff --git a/src/c/statisticsFunctions/mean/test_DoubleMean/testDoubleMean.vcxproj b/src/c/statisticsFunctions/mean/test_DoubleMean/testDoubleMean.vcxproj new file mode 100644 index 0000000..161eef2 --- /dev/null +++ b/src/c/statisticsFunctions/mean/test_DoubleMean/testDoubleMean.vcxproj @@ -0,0 +1,178 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{3C4D1EB3-7D2A-4AAE-9B4C-3A0C18CBA156}</ProjectGuid>
+ <RootNamespace>testDoubleMean</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testDoubleMean.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\..\..\type\type.vcxproj">
+ <Project>{9b1bd750-1fef-4d6b-9422-782d16181cee}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ <ProjectReference Include="..\..\statisticsFunctions.vcxproj">
+ <Project>{e11ed064-3bf2-4f70-b66e-3223c737ec60}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/mean/test_DoubleMean/testDoubleMean.vcxproj.filters b/src/c/statisticsFunctions/mean/test_DoubleMean/testDoubleMean.vcxproj.filters new file mode 100644 index 0000000..fba0c33 --- /dev/null +++ b/src/c/statisticsFunctions/mean/test_DoubleMean/testDoubleMean.vcxproj.filters @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testDoubleMean.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/mean/test_FloatMean/testFloatMean.vcxproj b/src/c/statisticsFunctions/mean/test_FloatMean/testFloatMean.vcxproj new file mode 100644 index 0000000..b4c331c --- /dev/null +++ b/src/c/statisticsFunctions/mean/test_FloatMean/testFloatMean.vcxproj @@ -0,0 +1,178 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{ACF6BDB6-C931-400D-A1ED-0B053A19F7EE}</ProjectGuid>
+ <RootNamespace>testFloatMean</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testFloatMean.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\..\..\type\type.vcxproj">
+ <Project>{9b1bd750-1fef-4d6b-9422-782d16181cee}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ <ProjectReference Include="..\..\statisticsFunctions.vcxproj">
+ <Project>{e11ed064-3bf2-4f70-b66e-3223c737ec60}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/mean/test_FloatMean/testFloatMean.vcxproj.filters b/src/c/statisticsFunctions/mean/test_FloatMean/testFloatMean.vcxproj.filters new file mode 100644 index 0000000..91061ad --- /dev/null +++ b/src/c/statisticsFunctions/mean/test_FloatMean/testFloatMean.vcxproj.filters @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testFloatMean.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/mean/zcolumnmeana.c b/src/c/statisticsFunctions/mean/zcolumnmeana.c new file mode 100644 index 0000000..8cc38fc --- /dev/null +++ b/src/c/statisticsFunctions/mean/zcolumnmeana.c @@ -0,0 +1,24 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "mean.h" +#include "sum.h" + +void zcolumnmeana(doubleComplex *in, int lines, int columns, doubleComplex *out) { + int i = 0; + + zcolumnsuma(in, lines, columns, out); + for (i = 0; i < lines; ++i) + { + out[i] = zrdivs(out[i] , DoubleComplex((double) columns, 0.0f)); + } +} diff --git a/src/c/statisticsFunctions/mean/zmeana.c b/src/c/statisticsFunctions/mean/zmeana.c new file mode 100644 index 0000000..aae80ff --- /dev/null +++ b/src/c/statisticsFunctions/mean/zmeana.c @@ -0,0 +1,24 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "mean.h" + +doubleComplex zmeana(doubleComplex *in, int size) { + doubleComplex accumulate = DoubleComplex(0.0f, 0.0f); + int i = 0; + + for (i = 0; i < size; ++i) + { + accumulate = zadds(accumulate, in[i]); + } + return DoubleComplex(zreals(accumulate) / (double) size, zimags(accumulate) / (double) size); +} diff --git a/src/c/statisticsFunctions/mean/zrowmeana.c b/src/c/statisticsFunctions/mean/zrowmeana.c new file mode 100644 index 0000000..8e19bf9 --- /dev/null +++ b/src/c/statisticsFunctions/mean/zrowmeana.c @@ -0,0 +1,24 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "mean.h" +#include "sum.h" + +void zrowmeana(doubleComplex *in, int lines, int columns, doubleComplex *out) { + int i = 0; + + zrowsuma(in, lines, columns, out); + for (i = 0; i < columns; ++i) + { + out[i] = zrdivs(out[i], DoubleComplex((double)lines, 0.0f)); + } +} diff --git a/src/c/statisticsFunctions/meanf/Makefile.am b/src/c/statisticsFunctions/meanf/Makefile.am new file mode 100644 index 0000000..789caac --- /dev/null +++ b/src/c/statisticsFunctions/meanf/Makefile.am @@ -0,0 +1,74 @@ +## +## Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +## Copyright (C) 2006-2008 - INRIA - Bruno JOFRET +## +## This file must be used under the terms of the CeCILL. +## This source file is licensed as described in the file COPYING, which +## you should have received as part of this distribution. The terms +## are also available at +## http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt +## +## + +libMeanf_la_CFLAGS = -I $(top_builddir)/src/c/type \ + -I $(top_builddir)/src/c/operations/includes \ + -I $(top_builddir)/src/c/matrixOperations/includes \ + -I ../includes + +instdir = $(top_builddir)/lib + +pkglib_LTLIBRARIES = libMeanf.la + +libMeanf_la_SOURCES = $(HEAD) $(SRC) + +SRC = smeanfa.c \ + srowmeanfa.c \ + scolumnmeanfa.c \ + dmeanfa.c \ + drowmeanfa.c \ + dcolumnmeanfa.c \ + cmeanfa.c \ + crowmeanfa.c \ + ccolumnmeanfa.c \ + zmeanfa.c \ + zrowmeanfa.c \ + zcolumnmeanfa.c \ + cmeanfcs.c \ + cmeanfsc.c \ + zmeanfdz.c \ + zmeanfzd.c + +HEAD = ../includes/meanf.h + +#### +# Checking Part +#### + +check_INCLUDES = -I $(top_builddir)/src/c/statisticsFunctions/includes \ + -I $(top_builddir)/src/c/operations/includes \ + -I $(top_builddir)/src/c/type + +check_LDADD = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/c/statisticsFunctions/meanf/libMeanf.la \ + $(top_builddir)/src/c/statisticsFunctions/sum/libSum.la \ + $(top_builddir)/src/c/operations/division/libDivision.la \ + $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ + $(top_builddir)/src/c/auxiliaryFunctions/conj/libConj.la \ + @LIBMATH@ + +check_PROGRAMS = testFloatMeanf testDoubleMeanf + +TESTS = testFloatMeanf testDoubleMeanf + +# +# -*- Meanf Tests -*- +# +testFloatMeanf_SOURCES = testFloatMeanf.c +testFloatMeanf_CFLAGS = $(check_INCLUDES) +testFloatMeanf_LDADD = $(check_LDADD) + +testDoubleMeanf_SOURCES =testDoubleMeanf.c +testDoubleMeanf_CFLAGS = $(check_INCLUDES) +testDoubleMeanf_LDADD = $(check_LDADD) diff --git a/src/c/statisticsFunctions/meanf/Makefile.in b/src/c/statisticsFunctions/meanf/Makefile.in new file mode 100644 index 0000000..97e65ef --- /dev/null +++ b/src/c/statisticsFunctions/meanf/Makefile.in @@ -0,0 +1,879 @@ +# Makefile.in generated by automake 1.11.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +check_PROGRAMS = testFloatMeanf$(EXEEXT) testDoubleMeanf$(EXEEXT) +TESTS = testFloatMeanf$(EXEEXT) testDoubleMeanf$(EXEEXT) +subdir = src/c/statisticsFunctions/meanf +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/includes/machine.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__installdirs = "$(DESTDIR)$(pkglibdir)" +LTLIBRARIES = $(pkglib_LTLIBRARIES) +libMeanf_la_LIBADD = +am__objects_1 = +am__objects_2 = libMeanf_la-smeanfa.lo libMeanf_la-srowmeanfa.lo \ + libMeanf_la-scolumnmeanfa.lo libMeanf_la-dmeanfa.lo \ + libMeanf_la-drowmeanfa.lo libMeanf_la-dcolumnmeanfa.lo \ + libMeanf_la-cmeanfa.lo libMeanf_la-crowmeanfa.lo \ + libMeanf_la-ccolumnmeanfa.lo libMeanf_la-zmeanfa.lo \ + libMeanf_la-zrowmeanfa.lo libMeanf_la-zcolumnmeanfa.lo \ + libMeanf_la-cmeanfcs.lo libMeanf_la-cmeanfsc.lo \ + libMeanf_la-zmeanfdz.lo libMeanf_la-zmeanfzd.lo +am_libMeanf_la_OBJECTS = $(am__objects_1) $(am__objects_2) +libMeanf_la_OBJECTS = $(am_libMeanf_la_OBJECTS) +libMeanf_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(libMeanf_la_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +am_testDoubleMeanf_OBJECTS = \ + testDoubleMeanf-testDoubleMeanf.$(OBJEXT) +testDoubleMeanf_OBJECTS = $(am_testDoubleMeanf_OBJECTS) +am__DEPENDENCIES_1 = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/c/statisticsFunctions/meanf/libMeanf.la \ + $(top_builddir)/src/c/statisticsFunctions/sum/libSum.la \ + $(top_builddir)/src/c/operations/division/libDivision.la \ + $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ + $(top_builddir)/src/c/auxiliaryFunctions/conj/libConj.la +testDoubleMeanf_DEPENDENCIES = $(am__DEPENDENCIES_1) +testDoubleMeanf_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testDoubleMeanf_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +am_testFloatMeanf_OBJECTS = testFloatMeanf-testFloatMeanf.$(OBJEXT) +testFloatMeanf_OBJECTS = $(am_testFloatMeanf_OBJECTS) +testFloatMeanf_DEPENDENCIES = $(am__DEPENDENCIES_1) +testFloatMeanf_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testFloatMeanf_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/includes +depcomp = $(SHELL) $(top_srcdir)/config/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +CCLD = $(CC) +LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ + $(LDFLAGS) -o $@ +SOURCES = $(libMeanf_la_SOURCES) $(testDoubleMeanf_SOURCES) \ + $(testFloatMeanf_SOURCES) +DIST_SOURCES = $(libMeanf_la_SOURCES) $(testDoubleMeanf_SOURCES) \ + $(testFloatMeanf_SOURCES) +ETAGS = etags +CTAGS = ctags +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +F77 = @F77@ +FFLAGS = @FFLAGS@ +FGREP = @FGREP@ +GREP = @GREP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBMATH = @LIBMATH@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +ac_ct_F77 = @ac_ct_F77@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +lt_ECHO = @lt_ECHO@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +libMeanf_la_CFLAGS = -I $(top_builddir)/src/c/type \ + -I $(top_builddir)/src/c/operations/includes \ + -I $(top_builddir)/src/c/matrixOperations/includes \ + -I ../includes + +instdir = $(top_builddir)/lib +pkglib_LTLIBRARIES = libMeanf.la +libMeanf_la_SOURCES = $(HEAD) $(SRC) +SRC = smeanfa.c \ + srowmeanfa.c \ + scolumnmeanfa.c \ + dmeanfa.c \ + drowmeanfa.c \ + dcolumnmeanfa.c \ + cmeanfa.c \ + crowmeanfa.c \ + ccolumnmeanfa.c \ + zmeanfa.c \ + zrowmeanfa.c \ + zcolumnmeanfa.c \ + cmeanfcs.c \ + cmeanfsc.c \ + zmeanfdz.c \ + zmeanfzd.c + +HEAD = ../includes/meanf.h + +#### +# Checking Part +#### +check_INCLUDES = -I $(top_builddir)/src/c/statisticsFunctions/includes \ + -I $(top_builddir)/src/c/operations/includes \ + -I $(top_builddir)/src/c/type + +check_LDADD = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/c/statisticsFunctions/meanf/libMeanf.la \ + $(top_builddir)/src/c/statisticsFunctions/sum/libSum.la \ + $(top_builddir)/src/c/operations/division/libDivision.la \ + $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ + $(top_builddir)/src/c/auxiliaryFunctions/conj/libConj.la \ + @LIBMATH@ + + +# +# -*- Meanf Tests -*- +# +testFloatMeanf_SOURCES = testFloatMeanf.c +testFloatMeanf_CFLAGS = $(check_INCLUDES) +testFloatMeanf_LDADD = $(check_LDADD) +testDoubleMeanf_SOURCES = testDoubleMeanf.c +testDoubleMeanf_CFLAGS = $(check_INCLUDES) +testDoubleMeanf_LDADD = $(check_LDADD) +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/c/statisticsFunctions/meanf/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/c/statisticsFunctions/meanf/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): +install-pkglibLTLIBRARIES: $(pkglib_LTLIBRARIES) + @$(NORMAL_INSTALL) + test -z "$(pkglibdir)" || $(MKDIR_P) "$(DESTDIR)$(pkglibdir)" + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + list2=; for p in $$list; do \ + if test -f $$p; then \ + list2="$$list2 $$p"; \ + else :; fi; \ + done; \ + test -z "$$list2" || { \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(pkglibdir)'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(pkglibdir)"; \ + } + +uninstall-pkglibLTLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(pkglibdir)/$$f'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(pkglibdir)/$$f"; \ + done + +clean-pkglibLTLIBRARIES: + -test -z "$(pkglib_LTLIBRARIES)" || rm -f $(pkglib_LTLIBRARIES) + @list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done +libMeanf.la: $(libMeanf_la_OBJECTS) $(libMeanf_la_DEPENDENCIES) + $(libMeanf_la_LINK) -rpath $(pkglibdir) $(libMeanf_la_OBJECTS) $(libMeanf_la_LIBADD) $(LIBS) + +clean-checkPROGRAMS: + @list='$(check_PROGRAMS)'; test -n "$$list" || exit 0; \ + echo " rm -f" $$list; \ + rm -f $$list || exit $$?; \ + test -n "$(EXEEXT)" || exit 0; \ + list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f" $$list; \ + rm -f $$list +testDoubleMeanf$(EXEEXT): $(testDoubleMeanf_OBJECTS) $(testDoubleMeanf_DEPENDENCIES) + @rm -f testDoubleMeanf$(EXEEXT) + $(testDoubleMeanf_LINK) $(testDoubleMeanf_OBJECTS) $(testDoubleMeanf_LDADD) $(LIBS) +testFloatMeanf$(EXEEXT): $(testFloatMeanf_OBJECTS) $(testFloatMeanf_DEPENDENCIES) + @rm -f testFloatMeanf$(EXEEXT) + $(testFloatMeanf_LINK) $(testFloatMeanf_OBJECTS) $(testFloatMeanf_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMeanf_la-ccolumnmeanfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMeanf_la-cmeanfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMeanf_la-cmeanfcs.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMeanf_la-cmeanfsc.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMeanf_la-crowmeanfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMeanf_la-dcolumnmeanfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMeanf_la-dmeanfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMeanf_la-drowmeanfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMeanf_la-scolumnmeanfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMeanf_la-smeanfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMeanf_la-srowmeanfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMeanf_la-zcolumnmeanfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMeanf_la-zmeanfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMeanf_la-zmeanfdz.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMeanf_la-zmeanfzd.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMeanf_la-zrowmeanfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testDoubleMeanf-testDoubleMeanf.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testFloatMeanf-testFloatMeanf.Po@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c $< + +.c.obj: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< + +libMeanf_la-smeanfa.lo: smeanfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -MT libMeanf_la-smeanfa.lo -MD -MP -MF $(DEPDIR)/libMeanf_la-smeanfa.Tpo -c -o libMeanf_la-smeanfa.lo `test -f 'smeanfa.c' || echo '$(srcdir)/'`smeanfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMeanf_la-smeanfa.Tpo $(DEPDIR)/libMeanf_la-smeanfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='smeanfa.c' object='libMeanf_la-smeanfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -c -o libMeanf_la-smeanfa.lo `test -f 'smeanfa.c' || echo '$(srcdir)/'`smeanfa.c + +libMeanf_la-srowmeanfa.lo: srowmeanfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -MT libMeanf_la-srowmeanfa.lo -MD -MP -MF $(DEPDIR)/libMeanf_la-srowmeanfa.Tpo -c -o libMeanf_la-srowmeanfa.lo `test -f 'srowmeanfa.c' || echo '$(srcdir)/'`srowmeanfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMeanf_la-srowmeanfa.Tpo $(DEPDIR)/libMeanf_la-srowmeanfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='srowmeanfa.c' object='libMeanf_la-srowmeanfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -c -o libMeanf_la-srowmeanfa.lo `test -f 'srowmeanfa.c' || echo '$(srcdir)/'`srowmeanfa.c + +libMeanf_la-scolumnmeanfa.lo: scolumnmeanfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -MT libMeanf_la-scolumnmeanfa.lo -MD -MP -MF $(DEPDIR)/libMeanf_la-scolumnmeanfa.Tpo -c -o libMeanf_la-scolumnmeanfa.lo `test -f 'scolumnmeanfa.c' || echo '$(srcdir)/'`scolumnmeanfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMeanf_la-scolumnmeanfa.Tpo $(DEPDIR)/libMeanf_la-scolumnmeanfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='scolumnmeanfa.c' object='libMeanf_la-scolumnmeanfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -c -o libMeanf_la-scolumnmeanfa.lo `test -f 'scolumnmeanfa.c' || echo '$(srcdir)/'`scolumnmeanfa.c + +libMeanf_la-dmeanfa.lo: dmeanfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -MT libMeanf_la-dmeanfa.lo -MD -MP -MF $(DEPDIR)/libMeanf_la-dmeanfa.Tpo -c -o libMeanf_la-dmeanfa.lo `test -f 'dmeanfa.c' || echo '$(srcdir)/'`dmeanfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMeanf_la-dmeanfa.Tpo $(DEPDIR)/libMeanf_la-dmeanfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dmeanfa.c' object='libMeanf_la-dmeanfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -c -o libMeanf_la-dmeanfa.lo `test -f 'dmeanfa.c' || echo '$(srcdir)/'`dmeanfa.c + +libMeanf_la-drowmeanfa.lo: drowmeanfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -MT libMeanf_la-drowmeanfa.lo -MD -MP -MF $(DEPDIR)/libMeanf_la-drowmeanfa.Tpo -c -o libMeanf_la-drowmeanfa.lo `test -f 'drowmeanfa.c' || echo '$(srcdir)/'`drowmeanfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMeanf_la-drowmeanfa.Tpo $(DEPDIR)/libMeanf_la-drowmeanfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='drowmeanfa.c' object='libMeanf_la-drowmeanfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -c -o libMeanf_la-drowmeanfa.lo `test -f 'drowmeanfa.c' || echo '$(srcdir)/'`drowmeanfa.c + +libMeanf_la-dcolumnmeanfa.lo: dcolumnmeanfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -MT libMeanf_la-dcolumnmeanfa.lo -MD -MP -MF $(DEPDIR)/libMeanf_la-dcolumnmeanfa.Tpo -c -o libMeanf_la-dcolumnmeanfa.lo `test -f 'dcolumnmeanfa.c' || echo '$(srcdir)/'`dcolumnmeanfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMeanf_la-dcolumnmeanfa.Tpo $(DEPDIR)/libMeanf_la-dcolumnmeanfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dcolumnmeanfa.c' object='libMeanf_la-dcolumnmeanfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -c -o libMeanf_la-dcolumnmeanfa.lo `test -f 'dcolumnmeanfa.c' || echo '$(srcdir)/'`dcolumnmeanfa.c + +libMeanf_la-cmeanfa.lo: cmeanfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -MT libMeanf_la-cmeanfa.lo -MD -MP -MF $(DEPDIR)/libMeanf_la-cmeanfa.Tpo -c -o libMeanf_la-cmeanfa.lo `test -f 'cmeanfa.c' || echo '$(srcdir)/'`cmeanfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMeanf_la-cmeanfa.Tpo $(DEPDIR)/libMeanf_la-cmeanfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='cmeanfa.c' object='libMeanf_la-cmeanfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -c -o libMeanf_la-cmeanfa.lo `test -f 'cmeanfa.c' || echo '$(srcdir)/'`cmeanfa.c + +libMeanf_la-crowmeanfa.lo: crowmeanfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -MT libMeanf_la-crowmeanfa.lo -MD -MP -MF $(DEPDIR)/libMeanf_la-crowmeanfa.Tpo -c -o libMeanf_la-crowmeanfa.lo `test -f 'crowmeanfa.c' || echo '$(srcdir)/'`crowmeanfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMeanf_la-crowmeanfa.Tpo $(DEPDIR)/libMeanf_la-crowmeanfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='crowmeanfa.c' object='libMeanf_la-crowmeanfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -c -o libMeanf_la-crowmeanfa.lo `test -f 'crowmeanfa.c' || echo '$(srcdir)/'`crowmeanfa.c + +libMeanf_la-ccolumnmeanfa.lo: ccolumnmeanfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -MT libMeanf_la-ccolumnmeanfa.lo -MD -MP -MF $(DEPDIR)/libMeanf_la-ccolumnmeanfa.Tpo -c -o libMeanf_la-ccolumnmeanfa.lo `test -f 'ccolumnmeanfa.c' || echo '$(srcdir)/'`ccolumnmeanfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMeanf_la-ccolumnmeanfa.Tpo $(DEPDIR)/libMeanf_la-ccolumnmeanfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='ccolumnmeanfa.c' object='libMeanf_la-ccolumnmeanfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -c -o libMeanf_la-ccolumnmeanfa.lo `test -f 'ccolumnmeanfa.c' || echo '$(srcdir)/'`ccolumnmeanfa.c + +libMeanf_la-zmeanfa.lo: zmeanfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -MT libMeanf_la-zmeanfa.lo -MD -MP -MF $(DEPDIR)/libMeanf_la-zmeanfa.Tpo -c -o libMeanf_la-zmeanfa.lo `test -f 'zmeanfa.c' || echo '$(srcdir)/'`zmeanfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMeanf_la-zmeanfa.Tpo $(DEPDIR)/libMeanf_la-zmeanfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zmeanfa.c' object='libMeanf_la-zmeanfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -c -o libMeanf_la-zmeanfa.lo `test -f 'zmeanfa.c' || echo '$(srcdir)/'`zmeanfa.c + +libMeanf_la-zrowmeanfa.lo: zrowmeanfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -MT libMeanf_la-zrowmeanfa.lo -MD -MP -MF $(DEPDIR)/libMeanf_la-zrowmeanfa.Tpo -c -o libMeanf_la-zrowmeanfa.lo `test -f 'zrowmeanfa.c' || echo '$(srcdir)/'`zrowmeanfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMeanf_la-zrowmeanfa.Tpo $(DEPDIR)/libMeanf_la-zrowmeanfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zrowmeanfa.c' object='libMeanf_la-zrowmeanfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -c -o libMeanf_la-zrowmeanfa.lo `test -f 'zrowmeanfa.c' || echo '$(srcdir)/'`zrowmeanfa.c + +libMeanf_la-zcolumnmeanfa.lo: zcolumnmeanfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -MT libMeanf_la-zcolumnmeanfa.lo -MD -MP -MF $(DEPDIR)/libMeanf_la-zcolumnmeanfa.Tpo -c -o libMeanf_la-zcolumnmeanfa.lo `test -f 'zcolumnmeanfa.c' || echo '$(srcdir)/'`zcolumnmeanfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMeanf_la-zcolumnmeanfa.Tpo $(DEPDIR)/libMeanf_la-zcolumnmeanfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zcolumnmeanfa.c' object='libMeanf_la-zcolumnmeanfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -c -o libMeanf_la-zcolumnmeanfa.lo `test -f 'zcolumnmeanfa.c' || echo '$(srcdir)/'`zcolumnmeanfa.c + +libMeanf_la-cmeanfcs.lo: cmeanfcs.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -MT libMeanf_la-cmeanfcs.lo -MD -MP -MF $(DEPDIR)/libMeanf_la-cmeanfcs.Tpo -c -o libMeanf_la-cmeanfcs.lo `test -f 'cmeanfcs.c' || echo '$(srcdir)/'`cmeanfcs.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMeanf_la-cmeanfcs.Tpo $(DEPDIR)/libMeanf_la-cmeanfcs.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='cmeanfcs.c' object='libMeanf_la-cmeanfcs.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -c -o libMeanf_la-cmeanfcs.lo `test -f 'cmeanfcs.c' || echo '$(srcdir)/'`cmeanfcs.c + +libMeanf_la-cmeanfsc.lo: cmeanfsc.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -MT libMeanf_la-cmeanfsc.lo -MD -MP -MF $(DEPDIR)/libMeanf_la-cmeanfsc.Tpo -c -o libMeanf_la-cmeanfsc.lo `test -f 'cmeanfsc.c' || echo '$(srcdir)/'`cmeanfsc.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMeanf_la-cmeanfsc.Tpo $(DEPDIR)/libMeanf_la-cmeanfsc.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='cmeanfsc.c' object='libMeanf_la-cmeanfsc.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -c -o libMeanf_la-cmeanfsc.lo `test -f 'cmeanfsc.c' || echo '$(srcdir)/'`cmeanfsc.c + +libMeanf_la-zmeanfdz.lo: zmeanfdz.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -MT libMeanf_la-zmeanfdz.lo -MD -MP -MF $(DEPDIR)/libMeanf_la-zmeanfdz.Tpo -c -o libMeanf_la-zmeanfdz.lo `test -f 'zmeanfdz.c' || echo '$(srcdir)/'`zmeanfdz.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMeanf_la-zmeanfdz.Tpo $(DEPDIR)/libMeanf_la-zmeanfdz.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zmeanfdz.c' object='libMeanf_la-zmeanfdz.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -c -o libMeanf_la-zmeanfdz.lo `test -f 'zmeanfdz.c' || echo '$(srcdir)/'`zmeanfdz.c + +libMeanf_la-zmeanfzd.lo: zmeanfzd.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -MT libMeanf_la-zmeanfzd.lo -MD -MP -MF $(DEPDIR)/libMeanf_la-zmeanfzd.Tpo -c -o libMeanf_la-zmeanfzd.lo `test -f 'zmeanfzd.c' || echo '$(srcdir)/'`zmeanfzd.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMeanf_la-zmeanfzd.Tpo $(DEPDIR)/libMeanf_la-zmeanfzd.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zmeanfzd.c' object='libMeanf_la-zmeanfzd.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMeanf_la_CFLAGS) $(CFLAGS) -c -o libMeanf_la-zmeanfzd.lo `test -f 'zmeanfzd.c' || echo '$(srcdir)/'`zmeanfzd.c + +testDoubleMeanf-testDoubleMeanf.o: testDoubleMeanf.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleMeanf_CFLAGS) $(CFLAGS) -MT testDoubleMeanf-testDoubleMeanf.o -MD -MP -MF $(DEPDIR)/testDoubleMeanf-testDoubleMeanf.Tpo -c -o testDoubleMeanf-testDoubleMeanf.o `test -f 'testDoubleMeanf.c' || echo '$(srcdir)/'`testDoubleMeanf.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleMeanf-testDoubleMeanf.Tpo $(DEPDIR)/testDoubleMeanf-testDoubleMeanf.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleMeanf.c' object='testDoubleMeanf-testDoubleMeanf.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleMeanf_CFLAGS) $(CFLAGS) -c -o testDoubleMeanf-testDoubleMeanf.o `test -f 'testDoubleMeanf.c' || echo '$(srcdir)/'`testDoubleMeanf.c + +testDoubleMeanf-testDoubleMeanf.obj: testDoubleMeanf.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleMeanf_CFLAGS) $(CFLAGS) -MT testDoubleMeanf-testDoubleMeanf.obj -MD -MP -MF $(DEPDIR)/testDoubleMeanf-testDoubleMeanf.Tpo -c -o testDoubleMeanf-testDoubleMeanf.obj `if test -f 'testDoubleMeanf.c'; then $(CYGPATH_W) 'testDoubleMeanf.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleMeanf.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleMeanf-testDoubleMeanf.Tpo $(DEPDIR)/testDoubleMeanf-testDoubleMeanf.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleMeanf.c' object='testDoubleMeanf-testDoubleMeanf.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleMeanf_CFLAGS) $(CFLAGS) -c -o testDoubleMeanf-testDoubleMeanf.obj `if test -f 'testDoubleMeanf.c'; then $(CYGPATH_W) 'testDoubleMeanf.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleMeanf.c'; fi` + +testFloatMeanf-testFloatMeanf.o: testFloatMeanf.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatMeanf_CFLAGS) $(CFLAGS) -MT testFloatMeanf-testFloatMeanf.o -MD -MP -MF $(DEPDIR)/testFloatMeanf-testFloatMeanf.Tpo -c -o testFloatMeanf-testFloatMeanf.o `test -f 'testFloatMeanf.c' || echo '$(srcdir)/'`testFloatMeanf.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatMeanf-testFloatMeanf.Tpo $(DEPDIR)/testFloatMeanf-testFloatMeanf.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatMeanf.c' object='testFloatMeanf-testFloatMeanf.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatMeanf_CFLAGS) $(CFLAGS) -c -o testFloatMeanf-testFloatMeanf.o `test -f 'testFloatMeanf.c' || echo '$(srcdir)/'`testFloatMeanf.c + +testFloatMeanf-testFloatMeanf.obj: testFloatMeanf.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatMeanf_CFLAGS) $(CFLAGS) -MT testFloatMeanf-testFloatMeanf.obj -MD -MP -MF $(DEPDIR)/testFloatMeanf-testFloatMeanf.Tpo -c -o testFloatMeanf-testFloatMeanf.obj `if test -f 'testFloatMeanf.c'; then $(CYGPATH_W) 'testFloatMeanf.c'; else $(CYGPATH_W) '$(srcdir)/testFloatMeanf.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatMeanf-testFloatMeanf.Tpo $(DEPDIR)/testFloatMeanf-testFloatMeanf.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatMeanf.c' object='testFloatMeanf-testFloatMeanf.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatMeanf_CFLAGS) $(CFLAGS) -c -o testFloatMeanf-testFloatMeanf.obj `if test -f 'testFloatMeanf.c'; then $(CYGPATH_W) 'testFloatMeanf.c'; else $(CYGPATH_W) '$(srcdir)/testFloatMeanf.c'; fi` + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + set x; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) + $(MAKE) $(AM_MAKEFLAGS) check-TESTS +check: check-am +all-am: Makefile $(LTLIBRARIES) +installdirs: + for dir in "$(DESTDIR)$(pkglibdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-checkPROGRAMS clean-generic clean-libtool \ + clean-pkglibLTLIBRARIES mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-pkglibLTLIBRARIES + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-pkglibLTLIBRARIES + +.MAKE: check-am install-am install-strip + +.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \ + clean-checkPROGRAMS clean-generic clean-libtool \ + clean-pkglibLTLIBRARIES ctags distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-pkglibLTLIBRARIES install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ + uninstall-am uninstall-pkglibLTLIBRARIES + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/src/c/statisticsFunctions/meanf/ccolumnmeanfa.c b/src/c/statisticsFunctions/meanf/ccolumnmeanfa.c new file mode 100644 index 0000000..90dbb8b --- /dev/null +++ b/src/c/statisticsFunctions/meanf/ccolumnmeanfa.c @@ -0,0 +1,39 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "meanf.h" +#include "sum.h" +#include "multiplication.h" + +void ccolumnmeanfa(floatComplex *in1, int lines, int columns,floatComplex *in2, floatComplex *out) { + int i = 0; + int j = 0; + floatComplex tempCoefSum = FloatComplex(0.0f,0.0f); + floatComplex tempMul = FloatComplex(0.0f,0.0f); + /*we first multiply each cell of the input matrix by its coefficient*/ + for (j = 0; j < lines ; ++j) + { + tempCoefSum = FloatComplex(0.0f,0.0f); + out[j]= FloatComplex(0.0f,0.0f); + for ( i = 0 ; i < columns; ++i ) + { + + tempMul = cmuls ( in1[lines*i + j] , in2[lines*i + j]); /* we times by the coefficient*/ + tempCoefSum = cadds ( in2[lines*i + j] ,tempCoefSum ) ; + out[j] = cadds (tempMul, out[j]) ; + } + + out[j] = crdivs(out[j] ,tempCoefSum); + } +} + + diff --git a/src/c/statisticsFunctions/meanf/cmeanfa.c b/src/c/statisticsFunctions/meanf/cmeanfa.c new file mode 100644 index 0000000..1aeef53 --- /dev/null +++ b/src/c/statisticsFunctions/meanf/cmeanfa.c @@ -0,0 +1,30 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "meanf.h" +#include "multiplication.h" +#include "division.h" + +floatComplex cmeanfa(floatComplex *in1, int size, floatComplex *in2 ) { + floatComplex accumulate = FloatComplex(0.0f, 0.0f); + floatComplex freAccumulate = FloatComplex(0.0f, 0.0f); + int i = 0; + + for (i = 0; i < size; ++i) + { + accumulate = cadds(accumulate, cmuls (in1[i] , in2[i])); + freAccumulate = cadds(in2[i],freAccumulate); + } + return crdivs(accumulate ,freAccumulate) ; +} + + diff --git a/src/c/statisticsFunctions/meanf/cmeanfcs.c b/src/c/statisticsFunctions/meanf/cmeanfcs.c new file mode 100644 index 0000000..e0c769a --- /dev/null +++ b/src/c/statisticsFunctions/meanf/cmeanfcs.c @@ -0,0 +1,23 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <stdlib.h> +#include "meanf.h" +#include "zeros.h" + +floatComplex cmeanfcs (floatComplex* in1 ,int lines , int columns , float* in2) + { + float* ZEROS = (float *) malloc((unsigned int)(lines*columns*sizeof(float))); + szerosa(ZEROS,lines,columns); + + return cmeanfa(in1, lines*columns , FloatComplexMatrix(in2,ZEROS,lines*columns)); + } diff --git a/src/c/statisticsFunctions/meanf/cmeanfsc.c b/src/c/statisticsFunctions/meanf/cmeanfsc.c new file mode 100644 index 0000000..03c7d42 --- /dev/null +++ b/src/c/statisticsFunctions/meanf/cmeanfsc.c @@ -0,0 +1,23 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <stdlib.h> +#include "meanf.h" +#include "zeros.h" + +floatComplex cmeanfsc (float* in1 ,int lines , int columns , floatComplex* in2) + { + float* ZEROS = (float*) malloc((unsigned int)(lines*columns*sizeof(float))); + szerosa(ZEROS,lines,columns); + + return cmeanfa(FloatComplexMatrix(in1,ZEROS,lines*columns), lines*columns , in2); + } diff --git a/src/c/statisticsFunctions/meanf/crowmeanfa.c b/src/c/statisticsFunctions/meanf/crowmeanfa.c new file mode 100644 index 0000000..14dc327 --- /dev/null +++ b/src/c/statisticsFunctions/meanf/crowmeanfa.c @@ -0,0 +1,36 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "meanf.h" +#include "sum.h" +#include "multiplication.h" +void crowmeanfa(floatComplex *in1, int lines, int columns, floatComplex *in2, floatComplex *out) { + int i = 0; + int j = 0; + floatComplex tempCoefSum = FloatComplex(0.0f,0.0f); + floatComplex tempMul = FloatComplex(0.0f,0.0f); + /*we first multiply each cell of the input matrix by its coefficient*/ + for (j = 0; j < columns; ++j) + { + tempCoefSum = FloatComplex(0.0f,0.0f); + out[j]= FloatComplex(0.0f,0.0f); + for ( i = 0 ; i < lines; ++i ) + { + + tempMul = cmuls ( in1[lines*j + i] , in2[lines*j + i]); /* we times by the coefficient*/ + tempCoefSum = cadds ( in2[lines*j + i] ,tempCoefSum ) ; + out[j] = cadds (tempMul, out[j]) ; + } + + out[j] = crdivs(out[j] ,tempCoefSum); + } +} diff --git a/src/c/statisticsFunctions/meanf/dcolumnmeanfa.c b/src/c/statisticsFunctions/meanf/dcolumnmeanfa.c new file mode 100644 index 0000000..e8d25a3 --- /dev/null +++ b/src/c/statisticsFunctions/meanf/dcolumnmeanfa.c @@ -0,0 +1,40 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "meanf.h" + +void dcolumnmeanfa(double *in1, int lines , int columns, double *in2, double *out) { + int i = 0; + int j = 0; + double tempCoefSum = 0.0; + double tempMul = 0.0 ; + + + + /*we first multiply each cell of the input matrix by its coefficient*/ +for (j = 0; j < lines; ++j) + { + tempCoefSum = 0.0; + out[j]= 0.0; + for ( i = 0 ; i < columns; ++i ) + { + + tempMul = in1[lines*i + j] * in2[lines*i + j]; /* we times by the coefficient*/ + tempCoefSum +=in2[lines*i + j]; + out[j] +=tempMul ; + } + + out[j] /= tempCoefSum ; + } + +} + diff --git a/src/c/statisticsFunctions/meanf/dmeanfa.c b/src/c/statisticsFunctions/meanf/dmeanfa.c new file mode 100644 index 0000000..be3bb37 --- /dev/null +++ b/src/c/statisticsFunctions/meanf/dmeanfa.c @@ -0,0 +1,28 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "meanf.h" + +double dmeanfa(double *in1, int size, double *in2) { + double accumulate = 0.0; + double freAccumulate = 0.0; + int i = 0; + + for (i = 0; i < size; ++i) + { + accumulate += (in1[i] * in2[i]) ; + freAccumulate += in2[i] ; + } + return accumulate / freAccumulate; + +} + diff --git a/src/c/statisticsFunctions/meanf/drowmeanfa.c b/src/c/statisticsFunctions/meanf/drowmeanfa.c new file mode 100644 index 0000000..ce3523c --- /dev/null +++ b/src/c/statisticsFunctions/meanf/drowmeanfa.c @@ -0,0 +1,36 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "meanf.h" +#include "sum.h" + +void drowmeanfa(double *in1, int lines, int columns, double *in2, double *out) { + int i = 0; + int j = 0; + double tempCoefSum = 0.0; + double tempMul = 0.0; + /*we first multiply each cell of the input matrix by its coefficient*/ + for (j = 0; j < columns; ++j) + { + tempCoefSum = 0.0; + out[j]= 0.0; + for ( i = 0 ; i < lines; ++i ) + { + + tempMul = in1[lines*j + i] * in2[lines*j + i]; /* we times by the coefficient*/ + tempCoefSum +=in2[lines*j + i]; + out[j] +=tempMul ; + } + + out[j] /= tempCoefSum ; + } +} diff --git a/src/c/statisticsFunctions/meanf/scolumnmeanfa.c b/src/c/statisticsFunctions/meanf/scolumnmeanfa.c new file mode 100644 index 0000000..bb3ffca --- /dev/null +++ b/src/c/statisticsFunctions/meanf/scolumnmeanfa.c @@ -0,0 +1,40 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "meanf.h" + +void scolumnmeanfa(float *in1, int lines, int columns, float *in2, float *out) { + int i = 0; + int j = 0; + float tempCoefSum = 0.0f; + float tempMul = 0.0f ; + + + + /*we first multiply each cell of the input matrix by its coefficient*/ +for (j = 0; j < lines; ++j) + { + tempCoefSum = 0.0f; + out[j]= 0.0f; + for ( i = 0 ; i < columns; ++i ) + { + + tempMul = in1[lines*i + j] * in2[lines*i + j]; /* we times by the coefficient*/ + tempCoefSum +=in2[lines*i + j]; + out[j] +=tempMul ; + } + + out[j] /= tempCoefSum ; + } + +} + diff --git a/src/c/statisticsFunctions/meanf/smeanfa.c b/src/c/statisticsFunctions/meanf/smeanfa.c new file mode 100644 index 0000000..64985e7 --- /dev/null +++ b/src/c/statisticsFunctions/meanf/smeanfa.c @@ -0,0 +1,27 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "meanf.h" + +float smeanfa(float *in1, int size, float *in2) { + float accumulate = 0.0f; + float freAccumulate = 0.0f; + int i = 0; + + for (i = 0; i < size; ++i) + { + accumulate += (in1[i] * in2[i]) ; + freAccumulate += in2[i] ; + } + return accumulate / freAccumulate; + +} diff --git a/src/c/statisticsFunctions/meanf/srowmeanfa.c b/src/c/statisticsFunctions/meanf/srowmeanfa.c new file mode 100644 index 0000000..3cdacb8 --- /dev/null +++ b/src/c/statisticsFunctions/meanf/srowmeanfa.c @@ -0,0 +1,37 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "meanf.h" +#include "sum.h" + + +void srowmeanfa(float *in1, int lines, int columns, float *in2, float *out) { + int i = 0; + int j = 0; + float tempCoefSum = 0.0f; + float tempMul = 0.0f; + /*we first multiply each cell of the input matrix by its coefficient*/ + for (j = 0; j < columns; ++j) + { + tempCoefSum = 0.0f; + out[j]= 0.0f; + for ( i = 0 ; i < lines; ++i ) + { + + tempMul = in1[lines*j + i] * in2[lines*j + i]; /* we times by the coefficient*/ + tempCoefSum +=in2[lines*j + i]; + out[j] +=tempMul ; + } + + out[j] /= tempCoefSum ; + } +} diff --git a/src/c/statisticsFunctions/meanf/testDoubleMeanf.c b/src/c/statisticsFunctions/meanf/testDoubleMeanf.c new file mode 100644 index 0000000..f528f1d --- /dev/null +++ b/src/c/statisticsFunctions/meanf/testDoubleMeanf.c @@ -0,0 +1,409 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <assert.h> +#include <stdio.h> +#include <math.h> +#include "meanf.h" + +/* #define LOCAL_DEBUG */ + +#define ERROR(x) printf("diff = %e\n", x) + +static int dmeanfsTest(void) { + double value1 = 3.0; + double value2 = 1.123456789; + double coef1 = 56 ; + double coef2 = 2 ; + + coef1 = 56 ; + coef2 = 2 ; + + printf("\n>>>> Meanf Double Scalar Test\n"); + assert( ( fabs(dmeanfs(value1,coef1) ) - ( 3.0 ) ) / fabs ( dmeanfs(value1,coef1) ) < 3e-16 ); + assert( ( fabs(dmeanfs(value2,coef2) ) - ( 1.123456789 ) ) / fabs ( dmeanfs(value2,coef2) ) < 3e-16 ); + + return 0; +} + +static int dmeanfaTest(void) { + double table1[3] = {3.0, 3.0, 3.0}; + double coef1[3] = {10.0, 2.0, 6.0}; + + double table2[5] = {3.186784563, + 4.186784563, + 5.186784563, + 6.186784563, + 7.186784563}; + + double coef2[5] = {3.0, + 4.0, + 5.0, + 6.0, + 7.0}; + + printf("\n>>>> Meanf Float Array Test\n"); + assert(dmeanfa(table1, 3, coef1) == 54.0 / 18.0); + assert((dmeanfa(table2, 5, coef2) - (3.186784563*3.0 + 4.186784563*4.0 + 5.186784563*5.0 + 6.186784563*6.0 + 7.186784563*7.0) / 25.0) / dmeanfa(table2, 5 ,coef2) < 3e-16); + return 0; +} + + +static int dcolumnmeanfaTest(void) { + int i = 0; + double table1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double coef1[9] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0}; + double table2[10] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0, 10.0}; + double coef2[10] = {11.0, 12.0, 13.0, 14.0 , 15.0, 16.0, 17.0, 18.0, 19.0, 20.0}; + double columnMeanmedTable1_3_3[3] = {0}; + double columnMeanmedTable1_1_9[1] = {0}; + double columnMeanmedTable1_9_1[9] = {0}; + double columnMeanmedTable2_2_5[2] = {0}; + double columnMeanmedTable2_5_2[5] = {0}; + + printf("\n>>>> Column Mean Double Array Test\n"); + /* + [ 1 2 3 ] [10 11 12 ] + [ 4 5 6 ].*[ 1 2 3 ] => [ 68 32 146 ] + [ 7 8 9 ] [ 5 6 7 ] + */ + dcolumnmeanfa(table1, 3, 3, coef1 ,columnMeanmedTable1_3_3); + assert( ( fabs(columnMeanmedTable1_3_3[0] ) - ( 68.0 / 33.0 ) ) / fabs ( columnMeanmedTable1_3_3[0] ) < 3e-16 ); + assert( ( fabs(columnMeanmedTable1_3_3[1] ) - ( 32.0 / 6.0 ) ) / fabs ( columnMeanmedTable1_3_3[1] ) < 3e-16 ); + assert( ( fabs(columnMeanmedTable1_3_3[2] ) - ( 146.0 / 18.0 ) ) / fabs ( columnMeanmedTable1_3_3[2] ) < 3e-16 ); + + /* + [ 1 2 3 4 5 6 7 8 9 ] => [ 45 ] + */ + dcolumnmeanfa(table1, 1, 9, coef1 ,columnMeanmedTable1_1_9); + assert( ( fabs(columnMeanmedTable1_1_9[0] ) - ( 246.0 / 57.0 ) ) / fabs ( columnMeanmedTable1_1_9[0] ) < 3e-16 ); + + /* + [ 1 ] + [ 2 ] + [ 3 ] + [ 4 ] + [ 5 ] => [ 1 2 3 4 5 6 7 8 9 ] + [ 6 ] + [ 7 ] + [ 8 ] + [ 9 ] + */ + dcolumnmeanfa(table1, 9, 1, coef1, columnMeanmedTable1_9_1); + for ( i = 0 ; i < 9 ; ++i) { + printf("columnMeanmedTable1_9_1[%d] = %e\n", i, columnMeanmedTable1_9_1[i]); + assert(columnMeanmedTable1_9_1[i] == table1[i]); + } + + /* + [ 1 3 5 7 9 ] .* [ 11 13 15 17 19 ] + [ 2 4 6 8 10 ] [ 12 14 16 18 20 ]=> [ 415 520 ] + */ + dcolumnmeanfa(table2, 2, 5, coef2 , columnMeanmedTable2_2_5); + assert( ( fabs(columnMeanmedTable2_2_5[0] ) - ( 415.0 / 75.0 ) ) / fabs ( columnMeanmedTable2_2_5[0] ) < 3e-16 ); + assert( ( fabs(columnMeanmedTable2_2_5[1] ) - ( 520.0 / 80.0 ) ) / fabs ( columnMeanmedTable2_2_5[1] ) < 3e-16 ); + for ( i = 0 ; i < 2 ; ++i) { + printf("columnMeanmedTable2_2_5[%d] = %e\n", i, columnMeanmedTable2_2_5[i]); + } + + /* + [ 1 6 ] [ 11 16 ] + [ 2 7 ] [ 12 17 ] => [ 107 143 183 227 275 ] + [ 3 8 ].*[ 13 18 ] + [ 4 9 ] [ 14 19 ] + [ 5 10 ] [ 15 20 ] + */ + dcolumnmeanfa(table2, 5, 2, coef2 ,columnMeanmedTable2_5_2); + assert( ( fabs(columnMeanmedTable2_5_2[0] ) - ( 107.0 / 27.0 ) ) / fabs ( columnMeanmedTable2_5_2[0] ) < 3e-16 ); + assert( ( fabs(columnMeanmedTable2_5_2[1] ) - ( 143.0 / 29.0 ) ) / fabs ( columnMeanmedTable2_5_2[1] ) < 3e-16 ); + assert( ( fabs(columnMeanmedTable2_5_2[2] ) - ( 183.0 / 31.0 ) ) / fabs ( columnMeanmedTable2_5_2[2] ) < 3e-16 ); + assert( ( fabs(columnMeanmedTable2_5_2[3] ) - ( 227.0 / 33.0 ) ) / fabs ( columnMeanmedTable2_5_2[3] ) < 3e-16 ); + assert( ( fabs(columnMeanmedTable2_5_2[4] ) - ( 275.0 / 35.0 ) ) / fabs ( columnMeanmedTable2_5_2[4] ) < 3e-16 ); + for ( i = 0 ; i < 5 ; ++i) { + printf("columnMeanmedTable2_5_2[%d] = %e\n", i, columnMeanmedTable2_5_2[i]); + } + + return 0; +} + + +static int drowmeanfaTest(void) { + int i = 0; + double table1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double coef1[9] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0}; + double table2[10] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0, 10.0}; + double coef2[10] = {11.0, 12.0, 13.0, 14.0 , 15.0, 16.0, 17.0, 18.0, 19.0, 20.0}; + double rowMeanmedTable1_3_3[3] = {0}; + double rowMeanmedTable1_1_9[9] = {0}; + double rowMeanmedTable1_9_1[1] = {0}; + double rowMeanmedTable2_2_5[5] = {0}; + + + printf("\n>>>> Row Mean Double Array Test\n"); + /* + [ 1 2 3 ] [10 11 12 ] + [ 4 5 6 ].*[ 1 2 3 ] => [ 49 80 117 ] + [ 7 8 9 ] [ 5 6 7 ] + */ + drowmeanfa(table1, 3, 3, coef1 , rowMeanmedTable1_3_3); + for ( i = 0 ; i < 3 ; ++i) { + printf("rowMeanmedTable1_3_3[%d] = %e\n", i, rowMeanmedTable1_3_3[i]); + } + assert( ( fabs(rowMeanmedTable1_3_3[0] ) - ( 49.0 / 16.0 ) ) / fabs ( rowMeanmedTable1_3_3[0] ) < 3e-16 ); + assert( ( fabs(rowMeanmedTable1_3_3[1] ) - ( 80.0 / 19.0 ) ) / fabs ( rowMeanmedTable1_3_3[1] ) < 3e-16 ); + assert( ( fabs(rowMeanmedTable1_3_3[2] ) - ( 117.0 / 22.0 ) ) / fabs ( rowMeanmedTable1_3_3[2] ) < 3e-16 ); + + /* + [ 1 ] + [ 2 ] + [ 3 ] + [ 4 ] + [ 5 ] => [ 1 2 3 4 5 6 7 8 9 ] + [ 6 ] + [ 7 ] + [ 8 ] + [ 9 ] + */ + drowmeanfa(table1, 1, 9, coef1, rowMeanmedTable1_1_9); + for ( i = 0 ; i < 9 ; ++i) { + printf("rowMeanmedTable1_1_9[%d] = %e\n", i, rowMeanmedTable1_1_9[i]); + assert(rowMeanmedTable1_1_9[i] == table1[i]); + } + + /* + [ 1 2 3 4 5 6 7 8 9 ] => [ 246 ] + */ + drowmeanfa(table1, 9, 1, coef1, rowMeanmedTable1_9_1); + assert( ( fabs(rowMeanmedTable1_9_1[0] ) - ( 246.0 / 57.0 ) ) / fabs ( rowMeanmedTable1_9_1[0] ) < 3e-16 ); + + /* + [ 1 3 5 7 9 ] .* [ 11 13 15 17 19 ] + [ 2 4 6 8 10 ] [ 12 14 16 18 20 ] => [ 3 7 11 15 19 ] + */ + drowmeanfa(table2, 2, 5, coef2, rowMeanmedTable2_2_5); + for ( i = 0 ; i < 5 ; ++i) { + printf("rowMeanmedTable2_2_5[%d] = %e\n", i, rowMeanmedTable2_2_5[i]); + } + assert( ( fabs(rowMeanmedTable2_2_5[0] ) - ( 35.0 / 23.0 ) ) / fabs ( rowMeanmedTable2_2_5[0] ) < 3e-16 ); + assert( ( fabs(rowMeanmedTable2_2_5[1] ) - ( 95.0 / 27.0 ) ) / fabs ( rowMeanmedTable2_2_5[1] ) < 3e-16 ); + assert( ( fabs(rowMeanmedTable2_2_5[2] ) - ( 171.0 / 31.0 ) ) / fabs ( rowMeanmedTable2_2_5[2] ) < 3e-16 ); + assert( ( fabs(rowMeanmedTable2_2_5[3] ) - ( 263.0 / 35.0 ) ) / fabs ( rowMeanmedTable2_2_5[3] ) < 3e-16 ); + assert( ( fabs(rowMeanmedTable2_2_5[4] ) - ( 371.0 / 39.0 ) ) / fabs ( rowMeanmedTable2_2_5[4] ) < 3e-16 ); + + + return 0; +} + +static int zmeanfsTest(void) { + doubleComplex value1 = DoubleComplex(3.0, 3.0); + doubleComplex coef1 = DoubleComplex(3.0, 0.0); + doubleComplex value2 = DoubleComplex(1.123456789, 1.123456789); + doubleComplex coef2 = DoubleComplex(9.0, 0.0); + + coef1 = DoubleComplex(3.0, 0.0); + coef2 = DoubleComplex(9.0, 0.0); + + printf("\n>>>> Mean Double Complex Scalar Test\n"); + assert( ( fabs(zreals(zmeanfs(value1,coef1)) ) - ( 3.0 ) ) / fabs ( zreals(zmeanfs(value1,coef1)) ) < 3e-16 ); + assert( ( fabs(zimags(zmeanfs(value1,coef1)) ) - ( 3.0 ) ) / fabs ( zimags(zmeanfs(value1,coef1)) ) < 3e-16 ); + assert( ( fabs(zreals(zmeanfs(value2,coef1)) ) - ( 1.123456789 ) ) / fabs ( zreals(zmeanfs(value2,coef1)) ) < 3e-16 ); + assert( ( fabs(zimags(zmeanfs(value2,coef1)) ) - ( 1.123456789 ) ) / fabs ( zimags(zmeanfs(value2,coef1)) ) < 3e-16 ); + return 0; +} + + + +static int zmeanfaTest(void) { + + double tableR1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double tableI1[9] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0}; + double coefR1[9] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0}; + double coefI1[9] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0}; + + doubleComplex* table1 = DoubleComplexMatrix (tableR1, tableI1, 9); + doubleComplex* coef1 = DoubleComplexMatrix (coefR1, coefI1, 9); + + + printf("\n>>>> Mean Double Complex Array Test\n"); + + + assert( ( fabs(zreals(zmeanfa(table1, 3, coef1)) ) - ( 246.0 / 57.0 ) ) / fabs ( zreals(zmeanfa(table1, 3, coef1)) ) < 3e-16 ); + assert( ( fabs(zimags(zmeanfa(table1, 3, coef1)) ) - ( 288.0 / 57.0 ) ) / fabs ( zimags(zmeanfa(table1, 3, coef1)) ) < 3e-16 );/* +*/ + return 0; +} + +static int zrowmeanfaTest(void) { + + int i = 0 ; + + double tableR1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double tableI1[9] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0}; + double coefR1[9] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0}; + double coefI1[9] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0}; + + double tableR2[10] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0, 10.0}; + double tableI2[10] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0 , 0.0}; + double coefR2[10] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0 , 0.0}; + double coefI2[10] ={10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0, 19.0}; + + doubleComplex* table1 = DoubleComplexMatrix (tableR1, tableI1, 9); + doubleComplex* coef1 = DoubleComplexMatrix (coefR1, coefI1, 9); + + doubleComplex* table2 = DoubleComplexMatrix (tableR2, tableI2, 10); + doubleComplex* coef2 = DoubleComplexMatrix (coefR2, coefI2, 10); + + doubleComplex rowMeanmedTable1_3_3[3]; + doubleComplex rowMeanmedTable2_2_5[5]; + + rowMeanmedTable1_3_3[0] = DoubleComplex(0.0, 0.0); + rowMeanmedTable1_3_3[1] = DoubleComplex(0.0, 0.0); + rowMeanmedTable1_3_3[2] = DoubleComplex(0.0, 0.0); + + rowMeanmedTable2_2_5[0] = DoubleComplex(0.0, 0.0); + rowMeanmedTable2_2_5[1] = DoubleComplex(0.0, 0.0); + rowMeanmedTable2_2_5[2] = DoubleComplex(0.0, 0.0); + rowMeanmedTable2_2_5[3] = DoubleComplex(0.0, 0.0); + rowMeanmedTable2_2_5[4] = DoubleComplex(0.0, 0.0); + + /* + doubleComplex rowMeanmedTable1_1_9[9] = {DoubleComplex(0.0, 0.0)}; + doubleComplex rowMeanmedTable1_9_1[1] = {DoubleComplex(0.0, 0.0)}; + + doubleComplex rowMeanmedTable2_5_2[2] = {DoubleComplex(0.0, 0.0)}; +*/ + + printf("\n>>>> Row Meanf Double Complex Array Test\n"); + + /**/ + + zrowmeanfa(table1 , 3 , 3 , coef1 , rowMeanmedTable1_3_3); + + for (i = 0 ; i < 3 ; ++i ) + { + + printf("rowMeanmedTable_3_3[%d] = %e + %ei\n", i, zreals(rowMeanmedTable1_3_3[i]), zimags(rowMeanmedTable1_3_3[i])); + } + assert( fabs(zimags(rowMeanmedTable1_3_3[0]) - ( 27.0 / 16.0 ) ) / fabs ( zimags(rowMeanmedTable1_3_3[0]) ) < 3e-16 ); + assert( fabs(zreals(rowMeanmedTable1_3_3[0]) - ( 49.0 / 16.0 ) ) / fabs ( zreals(rowMeanmedTable1_3_3[0]) ) < 3e-16 ); + + assert( fabs(zimags(rowMeanmedTable1_3_3[1]) - ( 90.0 / 19.0 ) ) / fabs ( zimags(rowMeanmedTable1_3_3[1]) ) < 3e-16 ); + assert( fabs(zreals(rowMeanmedTable1_3_3[1]) - ( 80.0 / 19.0 ) ) / fabs ( zreals(rowMeanmedTable1_3_3[1]) ) < 3e-16 ); + + assert( fabs(zimags(rowMeanmedTable1_3_3[2]) - (171.0 / 22.0 ) ) / fabs ( zimags(rowMeanmedTable1_3_3[2]) ) < 3e-16 ); + assert( fabs(zreals(rowMeanmedTable1_3_3[2]) - (117.0 / 22.0 ) ) / fabs ( zreals(rowMeanmedTable1_3_3[2]) ) < 3e-16 ); +/**/ + + printf("\n\n"); + zrowmeanfa(table2 , 2 , 5 , coef2 , rowMeanmedTable2_2_5); + + for (i = 0 ; i < 5 ; ++i ) + { + printf("rowMeanmedTable_2_5[%d] = %e + %ei\n", i, zreals(rowMeanmedTable2_2_5[i]), zimags(rowMeanmedTable2_2_5[i])); + } + assert( fabs(zreals(rowMeanmedTable2_2_5[0]) - 1.2727273 ) / fabs ( zreals(rowMeanmedTable2_2_5[0]) ) < 1e-6 ); + assert( zimags(rowMeanmedTable2_2_5[0]) == 0); + + assert( fabs(zreals(rowMeanmedTable2_2_5[1]) - 3.5625000 ) / fabs ( zreals(rowMeanmedTable2_2_5[1]) ) < 1e-6 ); + assert( zimags(rowMeanmedTable2_2_5[1]) == 0); + + assert( fabs(zreals(rowMeanmedTable2_2_5[2]) - 7.2500000 ) / fabs ( zreals(rowMeanmedTable2_2_5[2]) ) < 1e-6 ); + assert( zimags(rowMeanmedTable2_2_5[2]) == 0); + + assert( fabs(zreals(rowMeanmedTable2_2_5[3]) - 3.6000000 ) / fabs ( zreals(rowMeanmedTable2_2_5[3]) ) < 1e-6 ); + assert( zimags(rowMeanmedTable2_2_5[3]) == 0); + + assert( fabs(zreals(rowMeanmedTable2_2_5[4]) - 9.7307692 ) / fabs ( zreals(rowMeanmedTable2_2_5[4]) ) < 1e-6 ); + assert( zimags(rowMeanmedTable2_2_5[4]) == 0); + + + return 0; +} + + +static int zcolumnmeanfaTest(void) { + + int i = 0 ; + + double tableR1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double tableI1[9] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0}; + double coefR1[9] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0}; + double coefI1[9] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0}; +/* + double tableR2[10] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0, 10.0}; + double tableI2[10] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0, 15.0}; + double coefR2[10] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0, 19.0}; + double coefI2[10] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}; +*/ + doubleComplex* table1 = DoubleComplexMatrix (tableR1, tableI1, 9); + doubleComplex* coef1 = DoubleComplexMatrix (coefR1, coefI1, 9); +/* + doubleComplex* table2 = DoubleComplexMatrix (tableR2, tableI2, 9); + doubleComplex* coef2 = DoubleComplexMatrix (coefR2, coefI2, 9); +*/ + doubleComplex columnMeanmedTable1_3_3[3] ; + /* + doubleComplex rowMeanmedTable1_1_9[9] = {DoubleComplex(0.0, 0.0)}; + doubleComplex rowMeanmedTable1_9_1[1] = {DoubleComplex(0.0, 0.0)}; + doubleComplex rowMeanmedTable2_2_5[5] = {DoubleComplex(0.0, 0.0)}; + doubleComplex rowMeanmedTable2_5_2[2] = {DoubleComplex(0.0, 0.0)}; +*/ + + columnMeanmedTable1_3_3[0] = DoubleComplex(0.0, 0.0); + columnMeanmedTable1_3_3[1] = DoubleComplex(0.0, 0.0); + columnMeanmedTable1_3_3[2] = DoubleComplex(0.0, 0.0); + + printf("\n>>>> Column Meanf Double Complex Array Test\n"); + + /**/ + + zcolumnmeanfa(table1 , 3 , 3 , coef1 , columnMeanmedTable1_3_3); + + for (i = 0 ; i < 3 ; ++i ) + { + printf("columnMeanmedTable_3_3[%d] = %e + %ei\n", i, zreals(columnMeanmedTable1_3_3[i]), zimags(columnMeanmedTable1_3_3[i])); + } + assert( ( fabs(zimags(columnMeanmedTable1_3_3[0]) ) - (138.0 / 33.0 ) ) / fabs ( zimags(columnMeanmedTable1_3_3[0]) ) < 3e-16 ); + assert( ( fabs(zreals(columnMeanmedTable1_3_3[0]) ) - ( 68.0 / 33.0 ) ) / fabs ( zreals(columnMeanmedTable1_3_3[0]) ) < 3e-16 ); + + assert( ( fabs(zimags(columnMeanmedTable1_3_3[1]) ) - ( 36.0 / 6.0 ) ) / fabs ( zimags(columnMeanmedTable1_3_3[1]) ) < 3e-16 ); + assert( ( fabs(zreals(columnMeanmedTable1_3_3[1]) ) - ( 32.0 / 6.0 ) ) / fabs ( zreals(columnMeanmedTable1_3_3[1]) ) < 3e-16 ); + + assert( ( fabs(zimags(columnMeanmedTable1_3_3[2]) ) - (114.0 / 18.0 ) ) / fabs ( zimags(columnMeanmedTable1_3_3[2]) ) < 3e-16 ); + assert( ( fabs(zreals(columnMeanmedTable1_3_3[2]) ) - (146.0 / 18.0 ) ) / fabs ( zreals(columnMeanmedTable1_3_3[2]) ) < 3e-16 ); + + + + + return 0; +} + + + +static int testMeanf(void) { + + dmeanfsTest(); + dmeanfaTest(); + dcolumnmeanfaTest(); + drowmeanfaTest(); + zmeanfsTest(); + zmeanfaTest(); + zrowmeanfaTest(); + zcolumnmeanfaTest(); + + return 0; +} + +int main(void) { + assert(testMeanf() == 0); + return 0; +} diff --git a/src/c/statisticsFunctions/meanf/testFloatMeanf.c b/src/c/statisticsFunctions/meanf/testFloatMeanf.c new file mode 100644 index 0000000..ead8a86 --- /dev/null +++ b/src/c/statisticsFunctions/meanf/testFloatMeanf.c @@ -0,0 +1,383 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <assert.h> +#include <stdio.h> +#include <math.h> +#include "meanf.h" + +/* #define LOCAL_DEBUG */ + +#define ERROR(x) printf("diff = %e\n", x) + +static int smeanfsTest(void) { + float value1 ; + float value2 ; + float coef1 ; + float coef2 ; + + value1 = 3.0f; + value2 = 1.123456789f; + coef1 = 56.0f ; + coef2 = 2.0f ; + + printf("\n>>>> Meanf Float Scalar Test\n"); + assert( ( fabs(smeanfs(value1,coef1) ) - ( 3.0f ) ) / fabs ( smeanfs(value1,coef1) ) < 1e-6 ); + assert( ( fabs(smeanfs(value2,coef2) ) - ( 1.123456789f ) ) / fabs ( smeanfs(value2,coef2) ) < 1e-6 ); + + return 0; +} + +static int smeanfaTest(void) { + float table1[3] = {3.0f, 3.0f, 3.0f}; + float coef1[3] = {10.0f, 2.0f, 6.0f}; + + float table2[5] = {3.186784563f, + 4.186784563f, + 5.186784563f, + 6.186784563f, + 7.186784563f}; + + float coef2[5] = {3.0f, + 4.0f, + 5.0f, + 6.0f, + 7.0f}; + + printf("\n>>>> Meanf Float Array Test\n"); + assert(smeanfa(table1, 3, coef1) == 54.0f / 18.0f); + assert((smeanfa(table2, 5, coef2) - (3.186784563f*3.0f + 4.186784563f*4.0f + 5.186784563f*5.0f + 6.186784563f*6.0f + 7.186784563f*7.0f) / 25.0f) / smeanfa(table2, 5 ,coef2) < 1e-6); + return 0; +} + + +static int scolumnmeanfaTest(void) { + int i = 0; + float table1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float coef1[9] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f}; + float table2[10] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f}; + float coef2[10] = {11.0f, 12.0f, 13.0f, 14.0f , 15.0f, 16.0f, 17.0f, 18.0f, 19.0f, 20.0f}; + float columnMeanmedTable1_3_3[3] = {0}; + float columnMeanmedTable1_1_9[1] = {0}; + float columnMeanmedTable1_9_1[9] = {0}; + float columnMeanmedTable2_2_5[2] = {0}; + float columnMeanmedTable2_5_2[5] = {0}; + + printf("\n>>>> Column Mean Float Array Test\n"); + /* + [ 1 2 3 ] [10 11 12 ] + [ 4 5 6 ].*[ 1 2 3 ] => [ 68 32 146 ] + [ 7 8 9 ] [ 5 6 7 ] + */ + scolumnmeanfa(table1, 3, 3, coef1 ,columnMeanmedTable1_3_3); + assert( fabs(columnMeanmedTable1_3_3[0] - ( 68.0f / 33.0f ) ) / fabs ( columnMeanmedTable1_3_3[0] ) < 1e-6 ); + assert( fabs(columnMeanmedTable1_3_3[1] - ( 32.0f / 6.0f ) ) / fabs ( columnMeanmedTable1_3_3[1] ) < 1e-6 ); + assert( fabs(columnMeanmedTable1_3_3[2] - ( 146.0f / 18.0f ) ) / fabs ( columnMeanmedTable1_3_3[2] ) < 1e-6 ); + + /* + [ 1 2 3 4 5 6 7 8 9 ] => [ 45 ] + */ + scolumnmeanfa(table1, 1, 9, coef1 ,columnMeanmedTable1_1_9); + assert( ( fabs(columnMeanmedTable1_1_9[0] ) - ( 246.0f / 57.0f ) ) / fabs ( columnMeanmedTable1_1_9[0] ) < 1e-6 ); + + /* + [ 1 ] + [ 2 ] + [ 3 ] + [ 4 ] + [ 5 ] => [ 1 2 3 4 5 6 7 8 9 ] + [ 6 ] + [ 7 ] + [ 8 ] + [ 9 ] + */ + scolumnmeanfa(table1, 9, 1, coef1, columnMeanmedTable1_9_1); + for ( i = 0 ; i < 9 ; ++i) { + printf("columnMeanmedTable1_9_1[%d] = %e\n", i, columnMeanmedTable1_9_1[i]); + assert(columnMeanmedTable1_9_1[i] == table1[i]); + } + + /* + [ 1 3 5 7 9 ] .* [ 11 13 15 17 19 ] + [ 2 4 6 8 10 ] [ 12 14 16 18 20 ]=> [ 415 520 ] + */ + scolumnmeanfa(table2, 2, 5, coef2 , columnMeanmedTable2_2_5); + assert( ( fabs(columnMeanmedTable2_2_5[0] ) - ( 415.0f / 75.0f ) ) / fabs ( columnMeanmedTable2_2_5[0] ) < 1e-6 ); + assert( ( fabs(columnMeanmedTable2_2_5[1] ) - ( 520.0f / 80.0f ) ) / fabs ( columnMeanmedTable2_2_5[1] ) < 1e-6 ); + for ( i = 0 ; i < 2 ; ++i) { + printf("columnMeanmedTable2_2_5[%d] = %e\n", i, columnMeanmedTable2_2_5[i]); + } + + /* + [ 1 6 ] [ 11 16 ] + [ 2 7 ] [ 12 17 ] => [ 107 143 183 227 275 ] + [ 3 8 ].*[ 13 18 ] + [ 4 9 ] [ 14 19 ] + [ 5 10 ] [ 15 20 ] + */ + scolumnmeanfa(table2, 5, 2, coef2 ,columnMeanmedTable2_5_2); + assert( fabs(columnMeanmedTable2_5_2[0] - ( 107.0f / 27.0f ) ) / fabs ( columnMeanmedTable2_5_2[0] ) < 1e-6 ); + assert( fabs(columnMeanmedTable2_5_2[1] - ( 143.0f / 29.0f ) ) / fabs ( columnMeanmedTable2_5_2[1] ) < 1e-6 ); + assert( fabs(columnMeanmedTable2_5_2[2] - ( 183.0f / 31.0f ) ) / fabs ( columnMeanmedTable2_5_2[2] ) < 1e-6 ); + assert( fabs(columnMeanmedTable2_5_2[3] - ( 227.0f / 33.0f ) ) / fabs ( columnMeanmedTable2_5_2[3] ) < 1e-6 ); + assert( fabs(columnMeanmedTable2_5_2[4] - ( 275.0f / 35.0f ) ) / fabs ( columnMeanmedTable2_5_2[4] ) < 1e-6 ); + for ( i = 0 ; i < 5 ; ++i) { + printf("columnMeanmedTable2_5_2[%d] = %e\n", i, columnMeanmedTable2_5_2[i]); + } + + return 0; +} + + +static int srowmeanfaTest(void) { + int i = 0; + float table1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float coef1[9] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f}; + float table2[10] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f}; + float coef2[10] = {11.0f, 12.0f, 13.0f, 14.0f , 15.0f, 16.0f, 17.0f, 18.0f, 19.0f, 20.0f}; + float rowMeanmedTable1_3_3[3] = {0}; + float rowMeanmedTable1_1_9[9] = {0}; + float rowMeanmedTable1_9_1[1] = {0}; + float rowMeanmedTable2_2_5[5] = {0}; + /*float rowMeanmedTable2_5_2[2] = {0};*/ + + printf("\n>>>> Row Mean Float Array Test\n"); + /* + [ 1 2 3 ] [10 11 12 ] + [ 4 5 6 ].*[ 1 2 3 ] => [ 49 80 117 ] + [ 7 8 9 ] [ 5 6 7 ] + */ + srowmeanfa(table1, 3, 3, coef1 , rowMeanmedTable1_3_3); + for ( i = 0 ; i < 3 ; ++i) { + printf("rowMeanmedTable1_3_3[%d] = %e\n", i, rowMeanmedTable1_3_3[i]); + } + assert( fabs(rowMeanmedTable1_3_3[0] - ( 49.0f / 16.0f ) ) / fabs ( rowMeanmedTable1_3_3[0] ) < 1e-6 ); + assert( fabs(rowMeanmedTable1_3_3[1] - ( 80.0f / 19.0f ) ) / fabs ( rowMeanmedTable1_3_3[1] ) < 1e-6 ); + assert( fabs(rowMeanmedTable1_3_3[2] - ( 117.0f / 22.0f ) ) / fabs ( rowMeanmedTable1_3_3[2] ) < 1e-6 ); + + /* + [ 1 ] + [ 2 ] + [ 3 ] + [ 4 ] + [ 5 ] => [ 1 2 3 4 5 6 7 8 9 ] + [ 6 ] + [ 7 ] + [ 8 ] + [ 9 ] + */ + srowmeanfa(table1, 1, 9, coef1, rowMeanmedTable1_1_9); + for ( i = 0 ; i < 9 ; ++i) { + printf("rowMeanmedTable1_1_9[%d] = %e\n", i, rowMeanmedTable1_1_9[i]); + assert(rowMeanmedTable1_1_9[i] == table1[i]); + } + + /* + [ 1 2 3 4 5 6 7 8 9 ] => [ 246 ] + */ + srowmeanfa(table1, 9, 1, coef1, rowMeanmedTable1_9_1); + assert( ( fabs(rowMeanmedTable1_9_1[0] ) - ( 246.0f / 57.0f ) ) / fabs ( rowMeanmedTable1_9_1[0] ) < 1e-6 ); + + /* + [ 1 3 5 7 9 ] .* [ 11 13 15 17 19 ] + [ 2 4 6 8 10 ] [ 12 14 16 18 20 ] => [ 3 7 11 15 19 ] + */ + srowmeanfa(table2, 2, 5, coef2, rowMeanmedTable2_2_5); + for ( i = 0 ; i < 5 ; ++i) { + printf("rowMeanmedTable2_2_5[%d] = %e\n", i, rowMeanmedTable2_2_5[i]); + } + assert( fabs(rowMeanmedTable2_2_5[0] - ( 35.0f / 23.0f ) ) / fabs ( rowMeanmedTable2_2_5[0] ) < 1e-6 ); + assert( fabs(rowMeanmedTable2_2_5[1] - ( 95.0f / 27.0f ) ) / fabs ( rowMeanmedTable2_2_5[1] ) < 1e-6 ); + assert( fabs(rowMeanmedTable2_2_5[2] - ( 171.0f / 31.0f ) ) / fabs ( rowMeanmedTable2_2_5[2] ) < 1e-6 ); + assert( fabs(rowMeanmedTable2_2_5[3] - ( 263.0f / 35.0f ) ) / fabs ( rowMeanmedTable2_2_5[3] ) < 1e-6 ); + assert( fabs(rowMeanmedTable2_2_5[4] - ( 371.0f / 39.0f ) ) / fabs ( rowMeanmedTable2_2_5[4] ) < 1e-6 ); + + + return 0; +} + +static int cmeanfsTest(void) { + floatComplex value1 ; + floatComplex coef1 ; + floatComplex value2 ; + floatComplex coef2 ; + + value1 = FloatComplex(3.0f, 3.0f); + coef1 = FloatComplex(3.0f, 0.0f); + value2 = FloatComplex(1.123456789f, 1.123456789f); + coef2 = FloatComplex(9.0f, 0.0f); + + printf("\n>>>> Mean Float Complex Scalar Test\n"); + assert( fabs(creals(cmeanfs(value1,coef1)) - ( 3.0f ) ) / fabs ( creals(cmeanfs(value1,coef1)) ) < 1e-6 ); + assert( fabs(cimags(cmeanfs(value1,coef1)) - ( 3.0f ) ) / fabs ( cimags(cmeanfs(value1,coef1)) ) < 1e-6 ); + assert( fabs(creals(cmeanfs(value2,coef1)) - ( 1.123456789f ) ) / fabs ( creals(cmeanfs(value2,coef1)) ) < 1e-6 ); + assert( fabs(cimags(cmeanfs(value2,coef1)) - ( 1.123456789f ) ) / fabs ( cimags(cmeanfs(value2,coef1)) ) < 1e-6 ); + return 0; +} + + + +static int cmeanfaTest(void) { + + float tableR1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float tableI1[9] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f}; + float coefR1[9] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f}; + float coefI1[9] = { 0.0f, 0.0f, 0.0f, 0.0f , 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; + + floatComplex* table1 = FloatComplexMatrix (tableR1, tableI1, 9); + floatComplex* coef1 = FloatComplexMatrix (coefR1, coefI1, 9); + + + printf("\n>>>> Mean Float Complex Array Test\n"); + printf("\tMeanmedTable_1_1[0] = %e + %ei\n", creals(cmeanfa(table1, 9, coef1)), cimags(cmeanfa(table1, 9, coef1))); + + assert( fabs( creals(cmeanfa(table1, 9, coef1)) - ( 246.0f / 57.0f ) ) / fabs ( creals(cmeanfa(table1, 9, coef1)) ) < 1e-6 ); + assert( fabs( cimags(cmeanfa(table1, 9, coef1)) - ( 288.0f / 57.0f ) ) / fabs ( cimags(cmeanfa(table1, 9, coef1)) ) < 1e-6 );/* +*/ + return 0; +} + +static int crowmeanfaTest(void) { + + int i = 0 ; + + float tableR1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float tableI1[9] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f}; + float coefR1[9] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f}; + float coefI1[9] = { 0.0f, 0.0f, 0.0f, 0.0f , 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; +/* + float tableR2[10] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f, 10.0f}; + float tableI2[10] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 15.0f}; + float coefR2[10] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f, 19.0f}; + float coefI2[10] = { 0.0f, 0.0f, 0.0f, 0.0f , 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; +*/ + floatComplex* table1 = FloatComplexMatrix (tableR1, tableI1, 9); + floatComplex* coef1 = FloatComplexMatrix (coefR1, coefI1, 9); +/* + floatComplex* table2 = FloatComplexMatrix (tableR2, tableI2, 9); + floatComplex* coef2 = FloatComplexMatrix (coefR2, coefI2, 9); +*/ + floatComplex rowMeanmedTable1_3_3[3] ; + rowMeanmedTable1_3_3[0] = FloatComplex(0.0f, 0.0f); + rowMeanmedTable1_3_3[1] = FloatComplex(0.0f, 0.0f); + rowMeanmedTable1_3_3[2] = FloatComplex(0.0f, 0.0f); + /* + floatComplex rowMeanmedTable1_1_9[9] = {FloatComplex(0.0f, 0.0f)}; + floatComplex rowMeanmedTable1_9_1[1] = {FloatComplex(0.0f, 0.0f)}; + floatComplex rowMeanmedTable2_2_5[5] = {FloatComplex(0.0f, 0.0f)}; + floatComplex rowMeanmedTable2_5_2[2] = {FloatComplex(0.0f, 0.0f)}; +*/ + + printf("\n>>>> Row Meanf Float Complex Array Test\n"); + + /**/ + + crowmeanfa(table1 , 3 , 3 , coef1 , rowMeanmedTable1_3_3); + + for (i = 0 ; i < 3 ; ++i ) + { + + printf("rowMeanmedTable_3_3[%d] = %e + %ei\n", i, creals(rowMeanmedTable1_3_3[i]), cimags(rowMeanmedTable1_3_3[i])); + } + assert( fabs(cimags(rowMeanmedTable1_3_3[0]) - ( 27.0f / 16.0f ) ) / fabs ( cimags(rowMeanmedTable1_3_3[0]) ) < 1e-6 ); + assert( fabs(creals(rowMeanmedTable1_3_3[0]) - ( 49.0f / 16.0f ) ) / fabs ( creals(rowMeanmedTable1_3_3[0]) ) < 1e-6 ); + + assert( fabs(cimags(rowMeanmedTable1_3_3[1]) - ( 90.0f / 19.0f ) ) / fabs ( cimags(rowMeanmedTable1_3_3[1]) ) < 1e-6 ); + assert( fabs(creals(rowMeanmedTable1_3_3[1]) - ( 80.0f / 19.0f ) ) / fabs ( creals(rowMeanmedTable1_3_3[1]) ) < 1e-6 ); + + assert( fabs(cimags(rowMeanmedTable1_3_3[2]) - (171.0f / 22.0f ) ) / fabs ( cimags(rowMeanmedTable1_3_3[2]) ) < 1e-6 ); + assert( fabs(creals(rowMeanmedTable1_3_3[2]) - (117.0f / 22.0f ) ) / fabs ( creals(rowMeanmedTable1_3_3[2]) ) < 1e-6 ); + + + + + return 0; +} + + +static int ccolumnmeanfaTest(void) { + + int i = 0 ; + + float tableR1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float tableI1[9] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f}; + float coefR1[9] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f}; + float coefI1[9] = { 0.0f, 0.0f, 0.0f, 0.0f , 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; +/* + float tableR2[10] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f, 10.0f}; + float tableI2[10] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 15.0f}; + float coefR2[10] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f, 19.0f}; + float coefI2[10] = { 0.0f, 0.0f, 0.0f, 0.0f , 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; +*/ + floatComplex* table1 = FloatComplexMatrix (tableR1, tableI1, 9); + floatComplex* coef1 = FloatComplexMatrix (coefR1, coefI1, 9); +/* + floatComplex* table2 = FloatComplexMatrix (tableR2, tableI2, 9); + floatComplex* coef2 = FloatComplexMatrix (coefR2, coefI2, 9); +*/ + floatComplex columnMeanmedTable1_3_3[3] ; + columnMeanmedTable1_3_3[0] = FloatComplex(0.0f, 0.0f); + columnMeanmedTable1_3_3[1] = FloatComplex(0.0f, 0.0f); + columnMeanmedTable1_3_3[2] = FloatComplex(0.0f, 0.0f); + /* + floatComplex rowMeanmedTable1_1_9[9] = {FloatComplex(0.0f, 0.0f)}; + floatComplex rowMeanmedTable1_9_1[1] = {FloatComplex(0.0f, 0.0f)}; + floatComplex rowMeanmedTable2_2_5[5] = {FloatComplex(0.0f, 0.0f)}; + floatComplex rowMeanmedTable2_5_2[2] = {FloatComplex(0.0f, 0.0f)}; +*/ + + printf("\n>>>> Column Meanf Float Complex Array Test\n"); + + /**/ + + ccolumnmeanfa(table1 , 3 , 3 , coef1 , columnMeanmedTable1_3_3); + + for (i = 0 ; i < 3 ; ++i ) + { + printf("columnMeanmedTable_3_3[%d] = %e + %ei\n", i, creals(columnMeanmedTable1_3_3[i]), cimags(columnMeanmedTable1_3_3[i])); + } + assert( fabs(cimags(columnMeanmedTable1_3_3[0]) - (138.0f / 33.0f ) ) / fabs ( cimags(columnMeanmedTable1_3_3[0]) ) < 1e-6 ); + assert( fabs(creals(columnMeanmedTable1_3_3[0]) - ( 68.0f / 33.0f ) ) / fabs ( creals(columnMeanmedTable1_3_3[0]) ) < 1e-6 ); + + assert( fabs(cimags(columnMeanmedTable1_3_3[1]) - ( 36.0f / 6.0f ) ) / fabs ( cimags(columnMeanmedTable1_3_3[1]) ) < 1e-6 ); + assert( fabs(creals(columnMeanmedTable1_3_3[1]) - ( 32.0f / 6.0f ) ) / fabs ( creals(columnMeanmedTable1_3_3[1]) ) < 1e-6 ); + + assert( fabs(cimags(columnMeanmedTable1_3_3[2]) - (114.0f / 18.0f ) ) / fabs ( cimags(columnMeanmedTable1_3_3[2]) ) < 1e-6 ); + assert( fabs(creals(columnMeanmedTable1_3_3[2]) - (146.0f / 18.0f ) ) / fabs ( creals(columnMeanmedTable1_3_3[2]) ) < 1e-6 ); + + + + + return 0; +} + + + +static int testMeanf(void) { + + smeanfsTest(); + smeanfaTest(); + scolumnmeanfaTest(); + srowmeanfaTest(); + cmeanfsTest(); + cmeanfaTest(); + crowmeanfaTest(); + ccolumnmeanfaTest(); + + return 0; +} + +int main(void) { + assert(testMeanf() == 0); + return 0; +} + diff --git a/src/c/statisticsFunctions/meanf/zcolumnmeanfa.c b/src/c/statisticsFunctions/meanf/zcolumnmeanfa.c new file mode 100644 index 0000000..efbfa89 --- /dev/null +++ b/src/c/statisticsFunctions/meanf/zcolumnmeanfa.c @@ -0,0 +1,39 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "meanf.h" +#include "sum.h" +#include "multiplication.h" + +void zcolumnmeanfa(doubleComplex *in1, int lines, int columns, doubleComplex *in2, doubleComplex *out) { + int i = 0; + int j = 0; + doubleComplex tempCoefSum = DoubleComplex(0.0,0.0); + doubleComplex tempMul = DoubleComplex(0.0,0.0); + /*we first multiply each cell of the input matrix by its coefficient*/ + for (j = 0; j < lines ; ++j) + { + tempCoefSum = DoubleComplex(0.0,0.0); + out[j]= DoubleComplex(0.0,0.0); + for ( i = 0 ; i < columns; ++i ) + { + + tempMul = zmuls ( in1[lines*i + j] , in2[lines*i + j]); /* we times by the coefficient*/ + tempCoefSum = zadds ( in2[lines*i + j] ,tempCoefSum ) ; + out[j] = zadds (tempMul, out[j]) ; + } + + out[j] = zrdivs(out[j] ,tempCoefSum) ; + } +} + + diff --git a/src/c/statisticsFunctions/meanf/zmeanfa.c b/src/c/statisticsFunctions/meanf/zmeanfa.c new file mode 100644 index 0000000..f6691d9 --- /dev/null +++ b/src/c/statisticsFunctions/meanf/zmeanfa.c @@ -0,0 +1,29 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "meanf.h" +#include "multiplication.h" +#include "division.h" + +doubleComplex zmeanfa(doubleComplex *in1, int size, doubleComplex *in2 ) { + doubleComplex accumulate = DoubleComplex(0.0, 0.0); + doubleComplex freAccumulate = DoubleComplex(0.0, 0.0); + int i = 0; + + for (i = 0; i < size; ++i) + { + accumulate = zadds(accumulate , zmuls( in1[i] ,in2[i])); + freAccumulate = zadds(in2[i],freAccumulate); + } + return zrdivs(accumulate ,freAccumulate); +} + diff --git a/src/c/statisticsFunctions/meanf/zmeanfdz.c b/src/c/statisticsFunctions/meanf/zmeanfdz.c new file mode 100644 index 0000000..a53902b --- /dev/null +++ b/src/c/statisticsFunctions/meanf/zmeanfdz.c @@ -0,0 +1,23 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <stdlib.h> +#include "meanf.h" +#include "zeros.h" + +doubleComplex zmeanfdz (double* in1 ,int lines , int columns , doubleComplex* in2) + { + double* ZEROS = (double *) malloc((unsigned int)(lines*columns*sizeof(double))); + dzerosa(ZEROS,lines,columns); + + return zmeanfa(DoubleComplexMatrix(in1,ZEROS,lines*columns), lines*columns , in2); + } diff --git a/src/c/statisticsFunctions/meanf/zmeanfzd.c b/src/c/statisticsFunctions/meanf/zmeanfzd.c new file mode 100644 index 0000000..f31910b --- /dev/null +++ b/src/c/statisticsFunctions/meanf/zmeanfzd.c @@ -0,0 +1,23 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <stdlib.h> +#include "meanf.h" +#include "zeros.h" + +doubleComplex zmeanfzd (doubleComplex* in1 ,int lines , int columns , double* in2) + { + double* ZEROS = (double *) malloc((unsigned int)(lines*columns*sizeof(double))); + dzerosa(ZEROS,lines,columns); + + return zmeanfa(in1, lines*columns , DoubleComplexMatrix(in2,ZEROS,lines*columns)); + } diff --git a/src/c/statisticsFunctions/meanf/zrowmeanfa.c b/src/c/statisticsFunctions/meanf/zrowmeanfa.c new file mode 100644 index 0000000..7911413 --- /dev/null +++ b/src/c/statisticsFunctions/meanf/zrowmeanfa.c @@ -0,0 +1,36 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "meanf.h" +#include "sum.h" +#include "multiplication.h" +void zrowmeanfa(doubleComplex *in1, int lines, int columns, doubleComplex *in2, doubleComplex *out) { + int i = 0; + int j = 0; + doubleComplex tempCoefSum = DoubleComplex(0.0,0.0); + doubleComplex tempMul = DoubleComplex(0.0,0.0); + /*we first multiply each cell of the input matrix by its coefficient*/ + for (j = 0; j < columns; ++j) + { + tempCoefSum = DoubleComplex(0.0,0.0); + out[j]= DoubleComplex(0.0,0.0); + for ( i = 0 ; i < lines; ++i ) + { + + tempMul = zmuls ( in1[lines*j + i] , in2[lines*j + i]); /* we times by the coefficient*/ + tempCoefSum = zadds ( in2[lines*j + i] ,tempCoefSum ) ; + out[j] = zadds (tempMul, out[j]) ; + } + + out[j] = zrdivs(out[j] ,tempCoefSum) ; + } +} diff --git a/src/c/statisticsFunctions/min/Makefile.am b/src/c/statisticsFunctions/min/Makefile.am new file mode 100644 index 0000000..5b8a357 --- /dev/null +++ b/src/c/statisticsFunctions/min/Makefile.am @@ -0,0 +1,51 @@ +## +## Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +## Copyright (C) 2006-2008 - INRIA - Bruno JOFRET +## +## This file must be used under the terms of the CeCILL. +## This source file is licensed as described in the file COPYING, which +## you should have received as part of this distribution. The terms +## are also available at +## http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt +## +## + +libMin_la_CFLAGS = -I $(top_builddir)/src/c/statisticsFunctions/includes + +instdir = $(top_builddir)/lib + +pkglib_LTLIBRARIES = libMin.la + +libMin_la_SOURCES = $(HEAD) $(SRC) + +SRC = smina.c \ + srowmina.c \ + scolumnmina.c \ + dmina.c \ + drowmina.c \ + dcolumnmina.c + +HEAD = ../includes/statMin.h + +#### +# Checking Part +#### + +check_INCLUDES = -I $(top_builddir)/src/c/statisticsFunctions/includes + +check_LDADD = $(top_builddir)/src/c/statisticsFunctions/min/libMin.la + +check_PROGRAMS = testFloatMin testDoubleMin + +TESTS = testFloatMin testDoubleMin + +# +# -*- Min Tests -*- +# +testFloatMin_SOURCES = testFloatMin.c +testFloatMin_CFLAGS = $(check_INCLUDES) +testFloatMin_LDADD = $(check_LDADD) + +testDoubleMin_SOURCES =testDoubleMin.c +testDoubleMin_CFLAGS = $(check_INCLUDES) +testDoubleMin_LDADD = $(check_LDADD) diff --git a/src/c/statisticsFunctions/min/Makefile.in b/src/c/statisticsFunctions/min/Makefile.in new file mode 100644 index 0000000..fe6ddb3 --- /dev/null +++ b/src/c/statisticsFunctions/min/Makefile.in @@ -0,0 +1,759 @@ +# Makefile.in generated by automake 1.11.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +check_PROGRAMS = testFloatMin$(EXEEXT) testDoubleMin$(EXEEXT) +TESTS = testFloatMin$(EXEEXT) testDoubleMin$(EXEEXT) +subdir = src/c/statisticsFunctions/min +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/includes/machine.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__installdirs = "$(DESTDIR)$(pkglibdir)" +LTLIBRARIES = $(pkglib_LTLIBRARIES) +libMin_la_LIBADD = +am__objects_1 = +am__objects_2 = libMin_la-smina.lo libMin_la-srowmina.lo \ + libMin_la-scolumnmina.lo libMin_la-dmina.lo \ + libMin_la-drowmina.lo libMin_la-dcolumnmina.lo +am_libMin_la_OBJECTS = $(am__objects_1) $(am__objects_2) +libMin_la_OBJECTS = $(am_libMin_la_OBJECTS) +libMin_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(libMin_la_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +am_testDoubleMin_OBJECTS = testDoubleMin-testDoubleMin.$(OBJEXT) +testDoubleMin_OBJECTS = $(am_testDoubleMin_OBJECTS) +testDoubleMin_DEPENDENCIES = $(check_LDADD) +testDoubleMin_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testDoubleMin_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +am_testFloatMin_OBJECTS = testFloatMin-testFloatMin.$(OBJEXT) +testFloatMin_OBJECTS = $(am_testFloatMin_OBJECTS) +testFloatMin_DEPENDENCIES = $(check_LDADD) +testFloatMin_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testFloatMin_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/includes +depcomp = $(SHELL) $(top_srcdir)/config/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +CCLD = $(CC) +LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ + $(LDFLAGS) -o $@ +SOURCES = $(libMin_la_SOURCES) $(testDoubleMin_SOURCES) \ + $(testFloatMin_SOURCES) +DIST_SOURCES = $(libMin_la_SOURCES) $(testDoubleMin_SOURCES) \ + $(testFloatMin_SOURCES) +ETAGS = etags +CTAGS = ctags +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +F77 = @F77@ +FFLAGS = @FFLAGS@ +FGREP = @FGREP@ +GREP = @GREP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBMATH = @LIBMATH@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +ac_ct_F77 = @ac_ct_F77@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +lt_ECHO = @lt_ECHO@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +libMin_la_CFLAGS = -I $(top_builddir)/src/c/statisticsFunctions/includes +instdir = $(top_builddir)/lib +pkglib_LTLIBRARIES = libMin.la +libMin_la_SOURCES = $(HEAD) $(SRC) +SRC = smina.c \ + srowmina.c \ + scolumnmina.c \ + dmina.c \ + drowmina.c \ + dcolumnmina.c + +HEAD = ../includes/statMin.h + +#### +# Checking Part +#### +check_INCLUDES = -I $(top_builddir)/src/c/statisticsFunctions/includes +check_LDADD = $(top_builddir)/src/c/statisticsFunctions/min/libMin.la + +# +# -*- Min Tests -*- +# +testFloatMin_SOURCES = testFloatMin.c +testFloatMin_CFLAGS = $(check_INCLUDES) +testFloatMin_LDADD = $(check_LDADD) +testDoubleMin_SOURCES = testDoubleMin.c +testDoubleMin_CFLAGS = $(check_INCLUDES) +testDoubleMin_LDADD = $(check_LDADD) +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/c/statisticsFunctions/min/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/c/statisticsFunctions/min/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): +install-pkglibLTLIBRARIES: $(pkglib_LTLIBRARIES) + @$(NORMAL_INSTALL) + test -z "$(pkglibdir)" || $(MKDIR_P) "$(DESTDIR)$(pkglibdir)" + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + list2=; for p in $$list; do \ + if test -f $$p; then \ + list2="$$list2 $$p"; \ + else :; fi; \ + done; \ + test -z "$$list2" || { \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(pkglibdir)'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(pkglibdir)"; \ + } + +uninstall-pkglibLTLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(pkglibdir)/$$f'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(pkglibdir)/$$f"; \ + done + +clean-pkglibLTLIBRARIES: + -test -z "$(pkglib_LTLIBRARIES)" || rm -f $(pkglib_LTLIBRARIES) + @list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done +libMin.la: $(libMin_la_OBJECTS) $(libMin_la_DEPENDENCIES) + $(libMin_la_LINK) -rpath $(pkglibdir) $(libMin_la_OBJECTS) $(libMin_la_LIBADD) $(LIBS) + +clean-checkPROGRAMS: + @list='$(check_PROGRAMS)'; test -n "$$list" || exit 0; \ + echo " rm -f" $$list; \ + rm -f $$list || exit $$?; \ + test -n "$(EXEEXT)" || exit 0; \ + list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f" $$list; \ + rm -f $$list +testDoubleMin$(EXEEXT): $(testDoubleMin_OBJECTS) $(testDoubleMin_DEPENDENCIES) + @rm -f testDoubleMin$(EXEEXT) + $(testDoubleMin_LINK) $(testDoubleMin_OBJECTS) $(testDoubleMin_LDADD) $(LIBS) +testFloatMin$(EXEEXT): $(testFloatMin_OBJECTS) $(testFloatMin_DEPENDENCIES) + @rm -f testFloatMin$(EXEEXT) + $(testFloatMin_LINK) $(testFloatMin_OBJECTS) $(testFloatMin_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMin_la-dcolumnmina.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMin_la-dmina.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMin_la-drowmina.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMin_la-scolumnmina.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMin_la-smina.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libMin_la-srowmina.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testDoubleMin-testDoubleMin.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testFloatMin-testFloatMin.Po@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c $< + +.c.obj: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< + +libMin_la-smina.lo: smina.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMin_la_CFLAGS) $(CFLAGS) -MT libMin_la-smina.lo -MD -MP -MF $(DEPDIR)/libMin_la-smina.Tpo -c -o libMin_la-smina.lo `test -f 'smina.c' || echo '$(srcdir)/'`smina.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMin_la-smina.Tpo $(DEPDIR)/libMin_la-smina.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='smina.c' object='libMin_la-smina.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMin_la_CFLAGS) $(CFLAGS) -c -o libMin_la-smina.lo `test -f 'smina.c' || echo '$(srcdir)/'`smina.c + +libMin_la-srowmina.lo: srowmina.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMin_la_CFLAGS) $(CFLAGS) -MT libMin_la-srowmina.lo -MD -MP -MF $(DEPDIR)/libMin_la-srowmina.Tpo -c -o libMin_la-srowmina.lo `test -f 'srowmina.c' || echo '$(srcdir)/'`srowmina.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMin_la-srowmina.Tpo $(DEPDIR)/libMin_la-srowmina.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='srowmina.c' object='libMin_la-srowmina.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMin_la_CFLAGS) $(CFLAGS) -c -o libMin_la-srowmina.lo `test -f 'srowmina.c' || echo '$(srcdir)/'`srowmina.c + +libMin_la-scolumnmina.lo: scolumnmina.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMin_la_CFLAGS) $(CFLAGS) -MT libMin_la-scolumnmina.lo -MD -MP -MF $(DEPDIR)/libMin_la-scolumnmina.Tpo -c -o libMin_la-scolumnmina.lo `test -f 'scolumnmina.c' || echo '$(srcdir)/'`scolumnmina.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMin_la-scolumnmina.Tpo $(DEPDIR)/libMin_la-scolumnmina.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='scolumnmina.c' object='libMin_la-scolumnmina.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMin_la_CFLAGS) $(CFLAGS) -c -o libMin_la-scolumnmina.lo `test -f 'scolumnmina.c' || echo '$(srcdir)/'`scolumnmina.c + +libMin_la-dmina.lo: dmina.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMin_la_CFLAGS) $(CFLAGS) -MT libMin_la-dmina.lo -MD -MP -MF $(DEPDIR)/libMin_la-dmina.Tpo -c -o libMin_la-dmina.lo `test -f 'dmina.c' || echo '$(srcdir)/'`dmina.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMin_la-dmina.Tpo $(DEPDIR)/libMin_la-dmina.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dmina.c' object='libMin_la-dmina.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMin_la_CFLAGS) $(CFLAGS) -c -o libMin_la-dmina.lo `test -f 'dmina.c' || echo '$(srcdir)/'`dmina.c + +libMin_la-drowmina.lo: drowmina.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMin_la_CFLAGS) $(CFLAGS) -MT libMin_la-drowmina.lo -MD -MP -MF $(DEPDIR)/libMin_la-drowmina.Tpo -c -o libMin_la-drowmina.lo `test -f 'drowmina.c' || echo '$(srcdir)/'`drowmina.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMin_la-drowmina.Tpo $(DEPDIR)/libMin_la-drowmina.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='drowmina.c' object='libMin_la-drowmina.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMin_la_CFLAGS) $(CFLAGS) -c -o libMin_la-drowmina.lo `test -f 'drowmina.c' || echo '$(srcdir)/'`drowmina.c + +libMin_la-dcolumnmina.lo: dcolumnmina.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMin_la_CFLAGS) $(CFLAGS) -MT libMin_la-dcolumnmina.lo -MD -MP -MF $(DEPDIR)/libMin_la-dcolumnmina.Tpo -c -o libMin_la-dcolumnmina.lo `test -f 'dcolumnmina.c' || echo '$(srcdir)/'`dcolumnmina.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libMin_la-dcolumnmina.Tpo $(DEPDIR)/libMin_la-dcolumnmina.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dcolumnmina.c' object='libMin_la-dcolumnmina.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libMin_la_CFLAGS) $(CFLAGS) -c -o libMin_la-dcolumnmina.lo `test -f 'dcolumnmina.c' || echo '$(srcdir)/'`dcolumnmina.c + +testDoubleMin-testDoubleMin.o: testDoubleMin.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleMin_CFLAGS) $(CFLAGS) -MT testDoubleMin-testDoubleMin.o -MD -MP -MF $(DEPDIR)/testDoubleMin-testDoubleMin.Tpo -c -o testDoubleMin-testDoubleMin.o `test -f 'testDoubleMin.c' || echo '$(srcdir)/'`testDoubleMin.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleMin-testDoubleMin.Tpo $(DEPDIR)/testDoubleMin-testDoubleMin.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleMin.c' object='testDoubleMin-testDoubleMin.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleMin_CFLAGS) $(CFLAGS) -c -o testDoubleMin-testDoubleMin.o `test -f 'testDoubleMin.c' || echo '$(srcdir)/'`testDoubleMin.c + +testDoubleMin-testDoubleMin.obj: testDoubleMin.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleMin_CFLAGS) $(CFLAGS) -MT testDoubleMin-testDoubleMin.obj -MD -MP -MF $(DEPDIR)/testDoubleMin-testDoubleMin.Tpo -c -o testDoubleMin-testDoubleMin.obj `if test -f 'testDoubleMin.c'; then $(CYGPATH_W) 'testDoubleMin.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleMin.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleMin-testDoubleMin.Tpo $(DEPDIR)/testDoubleMin-testDoubleMin.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleMin.c' object='testDoubleMin-testDoubleMin.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleMin_CFLAGS) $(CFLAGS) -c -o testDoubleMin-testDoubleMin.obj `if test -f 'testDoubleMin.c'; then $(CYGPATH_W) 'testDoubleMin.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleMin.c'; fi` + +testFloatMin-testFloatMin.o: testFloatMin.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatMin_CFLAGS) $(CFLAGS) -MT testFloatMin-testFloatMin.o -MD -MP -MF $(DEPDIR)/testFloatMin-testFloatMin.Tpo -c -o testFloatMin-testFloatMin.o `test -f 'testFloatMin.c' || echo '$(srcdir)/'`testFloatMin.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatMin-testFloatMin.Tpo $(DEPDIR)/testFloatMin-testFloatMin.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatMin.c' object='testFloatMin-testFloatMin.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatMin_CFLAGS) $(CFLAGS) -c -o testFloatMin-testFloatMin.o `test -f 'testFloatMin.c' || echo '$(srcdir)/'`testFloatMin.c + +testFloatMin-testFloatMin.obj: testFloatMin.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatMin_CFLAGS) $(CFLAGS) -MT testFloatMin-testFloatMin.obj -MD -MP -MF $(DEPDIR)/testFloatMin-testFloatMin.Tpo -c -o testFloatMin-testFloatMin.obj `if test -f 'testFloatMin.c'; then $(CYGPATH_W) 'testFloatMin.c'; else $(CYGPATH_W) '$(srcdir)/testFloatMin.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatMin-testFloatMin.Tpo $(DEPDIR)/testFloatMin-testFloatMin.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatMin.c' object='testFloatMin-testFloatMin.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatMin_CFLAGS) $(CFLAGS) -c -o testFloatMin-testFloatMin.obj `if test -f 'testFloatMin.c'; then $(CYGPATH_W) 'testFloatMin.c'; else $(CYGPATH_W) '$(srcdir)/testFloatMin.c'; fi` + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + set x; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) + $(MAKE) $(AM_MAKEFLAGS) check-TESTS +check: check-am +all-am: Makefile $(LTLIBRARIES) +installdirs: + for dir in "$(DESTDIR)$(pkglibdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-checkPROGRAMS clean-generic clean-libtool \ + clean-pkglibLTLIBRARIES mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-pkglibLTLIBRARIES + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-pkglibLTLIBRARIES + +.MAKE: check-am install-am install-strip + +.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \ + clean-checkPROGRAMS clean-generic clean-libtool \ + clean-pkglibLTLIBRARIES ctags distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-pkglibLTLIBRARIES install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ + uninstall-am uninstall-pkglibLTLIBRARIES + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/src/c/statisticsFunctions/min/dcolumnmina.c b/src/c/statisticsFunctions/min/dcolumnmina.c new file mode 100644 index 0000000..6f0b3c1 --- /dev/null +++ b/src/c/statisticsFunctions/min/dcolumnmina.c @@ -0,0 +1,24 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "statMin.h" + +void dcolumnmina(double *in, int rows, int columns, double* out) { + int i = 0, j = 0; + + for (i = 0; i < rows; i++) { + out[i]=in[i*columns]; + for (j=0;j<columns;j++) + if (in[i+j*rows]<out[i]) out[i] = in[i+j*rows]; + } + +} diff --git a/src/c/statisticsFunctions/min/dmina.c b/src/c/statisticsFunctions/min/dmina.c new file mode 100644 index 0000000..232232c --- /dev/null +++ b/src/c/statisticsFunctions/min/dmina.c @@ -0,0 +1,25 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "statMin.h" + +double dmina(double *in, int size) { + double out = in[0]; + int i = 0; + + for (i = 1; i < size; ++i) + { + if (in[i]<out) out = in[i]; + } + return out; + +} diff --git a/src/c/statisticsFunctions/min/drowmina.c b/src/c/statisticsFunctions/min/drowmina.c new file mode 100644 index 0000000..f74498a --- /dev/null +++ b/src/c/statisticsFunctions/min/drowmina.c @@ -0,0 +1,23 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "statMin.h" + +void drowmina(double *in, int rows, int columns, double* out) { + int i = 0, j = 0; + + for (i = 0; i < columns; i++) { + out[i]=in[i*rows]; + for (j = 1 ; j < rows ; j++) + if (in[i*rows+j]<out[i]) out[i] = in[i*rows+j]; + } +} diff --git a/src/c/statisticsFunctions/min/i16columnmina.c b/src/c/statisticsFunctions/min/i16columnmina.c new file mode 100644 index 0000000..64ec334 --- /dev/null +++ b/src/c/statisticsFunctions/min/i16columnmina.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "statMin.h" + +void i16columnmina(int16 *in, int rows, int columns, int16* out) { + int i = 0, j = 0; + + for (i = 0; i < rows; i++) { + out[i]=(int16)in[i*columns]; + for (j=0;j<columns;j++) + if (in[i+j*rows]<out[i]) + out[i] = (int16)in[i+j*rows]; + } + +} diff --git a/src/c/statisticsFunctions/min/i16mina.c b/src/c/statisticsFunctions/min/i16mina.c new file mode 100644 index 0000000..402b946 --- /dev/null +++ b/src/c/statisticsFunctions/min/i16mina.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "statMin.h" + +int16 i16mina(int16 *in, int size) { + int16 out = in[0]; + int i = 0; + + for (i = 1; i < size; ++i) + { + if (in[i]<out) + out = (int16)in[i]; + } + return out; + +} diff --git a/src/c/statisticsFunctions/min/i16rowmina.c b/src/c/statisticsFunctions/min/i16rowmina.c new file mode 100644 index 0000000..51f575a --- /dev/null +++ b/src/c/statisticsFunctions/min/i16rowmina.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "statMin.h" + +void i16rowmina(int16 *in, int rows, int columns, int16* out) { + int i = 0, j = 0; + + for (i = 0; i < columns; i++) { + out[i]=(int16)in[i*rows]; + for (j = 1 ; j < rows ; j++) + if (in[i*rows+j]<out[i]) + out[i] = (int16)in[i*rows+j]; + } +} diff --git a/src/c/statisticsFunctions/min/i8columnmina.c b/src/c/statisticsFunctions/min/i8columnmina.c new file mode 100644 index 0000000..041bc9b --- /dev/null +++ b/src/c/statisticsFunctions/min/i8columnmina.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "statMin.h" + +void i8columnmina(int8 *in, int rows, int columns, int8* out) { + int i = 0, j = 0; + + for (i = 0; i < rows; i++) { + out[i]=(int8)in[i*columns]; + for (j=0;j<columns;j++) + if (in[i+j*rows]<out[i]) + out[i] = (int8)in[i+j*rows]; + } + +} diff --git a/src/c/statisticsFunctions/min/i8mina.c b/src/c/statisticsFunctions/min/i8mina.c new file mode 100644 index 0000000..f7acac7 --- /dev/null +++ b/src/c/statisticsFunctions/min/i8mina.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "statMin.h" + +int8 i8mina(int8 *in, int size) { + int8 out = in[0]; + int i = 0; + + for (i = 1; i < size; ++i) + { + if (in[i]<out) + out = (int8)in[i]; + } + return out; + +} diff --git a/src/c/statisticsFunctions/min/i8rowmina.c b/src/c/statisticsFunctions/min/i8rowmina.c new file mode 100644 index 0000000..1c57382 --- /dev/null +++ b/src/c/statisticsFunctions/min/i8rowmina.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "statMin.h" + +void i8rowmina(int8 *in, int rows, int columns, int8* out) { + int i = 0, j = 0; + + for (i = 0; i < columns; i++) { + out[i]=(int8)in[i*rows]; + for (j = 1 ; j < rows ; j++) + if (in[i*rows+j]<out[i]) + out[i] = (int8)in[i*rows+j]; + } +} diff --git a/src/c/statisticsFunctions/min/scolumnmina.c b/src/c/statisticsFunctions/min/scolumnmina.c new file mode 100644 index 0000000..8e19b1d --- /dev/null +++ b/src/c/statisticsFunctions/min/scolumnmina.c @@ -0,0 +1,24 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "statMin.h" + +void scolumnmina(float *in, int rows, int columns, float* out) { + int i = 0, j = 0; + + for (i = 0; i < rows; i++) { + out[i]=in[i*columns]; + for (j=0;j<columns;j++) + if (in[i+j*rows]<out[i]) out[i] = in[i+j*rows]; + } + +} diff --git a/src/c/statisticsFunctions/min/smina.c b/src/c/statisticsFunctions/min/smina.c new file mode 100644 index 0000000..bdc929c --- /dev/null +++ b/src/c/statisticsFunctions/min/smina.c @@ -0,0 +1,25 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Arnaud Torset + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "statMin.h" + +float smina(float *in, int size) { + float out = in[0]; + int i = 0; + + for (i = 1; i < size; ++i) + { + if (in[i]<out) out = in[i]; + } + return out; + +} diff --git a/src/c/statisticsFunctions/min/srowmina.c b/src/c/statisticsFunctions/min/srowmina.c new file mode 100644 index 0000000..bbdb4f0 --- /dev/null +++ b/src/c/statisticsFunctions/min/srowmina.c @@ -0,0 +1,23 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "statMin.h" + +void srowmina(float *in, int rows, int columns, float* out) { + int i = 0, j = 0; + + for (i = 0; i < columns; i++) { + out[i]=in[i*rows]; + for (j = 1 ; j < rows ; j++) + if (in[i*rows+j]<out[i]) out[i] = in[i*rows+j]; + } +} diff --git a/src/c/statisticsFunctions/min/testDoubleMin.c b/src/c/statisticsFunctions/min/testDoubleMin.c new file mode 100644 index 0000000..4152216 --- /dev/null +++ b/src/c/statisticsFunctions/min/testDoubleMin.c @@ -0,0 +1,93 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Arnaud Torset + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + + + +#include "statMin.h" +#include "assert.h" +#include "stdio.h" + + +static void dminaTest(void){ + double in[12]={4,5,7,1,2,6,4,1,2,5,4,3}; + double out; + + out = dmina(in,12); + assert(out-1==0); + +} + + +static void drowminaTest(void){ + double in[12]={4,5,7,1,2,6,4,1,2,5,4,3}; + double result2[2]={1,1}; + double result3[3]={1,1,2}; + double result4[4]={4,1,1,3}; + double result6[6]={4,1,2,1,2,3}; + double out1[1],out2[2],out3[3],out4[4],out6[6],out12[12]; + int i; + + + drowmina(in,12,1,out1); + drowmina(in,6,2,out2); + drowmina(in,4,3,out3); + drowmina(in,3,4,out4); + drowmina(in,2,6,out6); + drowmina(in,1,12,out12); + + assert(out1[0]-1==0); + for (i=0;i<2;i++) assert(out2[i]-result2[i]==0); + for (i=0;i<3;i++) assert(out3[i]-result3[i]==0); + for (i=0;i<4;i++) assert(out4[i]-result4[i]==0); + for (i=0;i<6;i++) assert(out6[i]-result6[i]==0); + for (i=0;i<12;i++) assert(out12[i]-in[i]==0); +} + + +static void dcolumnminaTest(void){ + double in[12]={4,5,7,1,2,6,4,1,2,5,4,3}; + double out1[1],out2[2],out3[3],out4[4],out6[6],out12[12]; + double result2[2]={2,1}; + double result3[3]={1,1,2}; + double result4[4]={2,5,4,1}; + double result6[6]={4,1,2,1,2,3}; + int i; + + + + dcolumnmina(in,12,1,out12); + dcolumnmina(in,6,2,out6); + dcolumnmina(in,4,3,out4); + dcolumnmina(in,3,4,out3); + dcolumnmina(in,2,6,out2); + dcolumnmina(in,1,12,out1); + + assert(out1[0]-1==0); + for (i=0;i<2;i++) assert(out2[i]-result2[i]==0); + for (i=0;i<3;i++) assert(out3[i]-result3[i]==0); + for (i=0;i<4;i++) assert(out4[i]-result4[i]==0); + for (i=0;i<6;i++) assert(out6[i]-result6[i]==0); + for (i=0;i<12;i++) assert(out12[i]-in[i]==0); +} + +static int minTest(void){ + dminaTest(); + drowminaTest(); + dcolumnminaTest(); + return 0; +} + + +int main(void){ + assert(minTest()==0); + return 0; +} diff --git a/src/c/statisticsFunctions/min/testFloatMin.c b/src/c/statisticsFunctions/min/testFloatMin.c new file mode 100644 index 0000000..70022a6 --- /dev/null +++ b/src/c/statisticsFunctions/min/testFloatMin.c @@ -0,0 +1,92 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Arnaud Torset + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + + + +#include "statMin.h" +#include "assert.h" +#include "stdio.h" + +static void sminaTest(void){ + float in[12]={4,5,7,1,2,6,4,1,2,5,4,3}; + float out; + + out = smina(in,12); + assert(out-1==0); + +} + + +static void srowminaTest(void){ + float in[12]={4,5,7,1,2,6,4,1,2,5,4,3}; + float out1[1],out2[2],out3[3],out4[4],out6[6],out12[12]; + float result2[2]={1,1}; + float result3[3]={1,1,2}; + float result4[4]={4,1,1,3}; + float result6[6]={4,1,2,1,2,3}; + int i; + + + srowmina(in,12,1,out1); + srowmina(in,6,2,out2); + srowmina(in,4,3,out3); + srowmina(in,3,4,out4); + srowmina(in,2,6,out6); + srowmina(in,1,12,out12); + + assert(out1[0]-1==0); + for (i=0;i<2;i++) assert(out2[i]-result2[i]==0); + for (i=0;i<3;i++) assert(out3[i]-result3[i]==0); + for (i=0;i<4;i++) assert(out4[i]-result4[i]==0); + for (i=0;i<6;i++) assert(out6[i]-result6[i]==0); + for (i=0;i<12;i++) assert(out12[i]-in[i]==0); +} + + +static void scolumnminaTest(void){ + float in[12]={4,5,7,1,2,6,4,1,2,5,4,3}; + float out1[1],out2[2],out3[3],out4[4],out6[6],out12[12]; + float result2[2]={2,1}; + float result3[3]={1,1,2}; + float result4[4]={2,5,4,1}; + float result6[6]={4,1,2,1,2,3}; + int i; + + + + scolumnmina(in,12,1,out12); + scolumnmina(in,6,2,out6); + scolumnmina(in,4,3,out4); + scolumnmina(in,3,4,out3); + scolumnmina(in,2,6,out2); + scolumnmina(in,1,12,out1); + + assert(out1[0]-1==0); + for (i=0;i<2;i++) assert(out2[i]-result2[i]==0); + for (i=0;i<3;i++) assert(out3[i]-result3[i]==0); + for (i=0;i<4;i++) assert(out4[i]-result4[i]==0); + for (i=0;i<6;i++) assert(out6[i]-result6[i]==0); + for (i=0;i<12;i++) assert(out12[i]-in[i]==0); +} + +static int minTest(void){ + sminaTest(); + srowminaTest(); + scolumnminaTest(); + return 0; +} + + +int main(void){ + assert(minTest()==0); + return 0; +} diff --git a/src/c/statisticsFunctions/min/test_DoubleMin/testDoubleMin.vcxproj b/src/c/statisticsFunctions/min/test_DoubleMin/testDoubleMin.vcxproj new file mode 100644 index 0000000..aa78adb --- /dev/null +++ b/src/c/statisticsFunctions/min/test_DoubleMin/testDoubleMin.vcxproj @@ -0,0 +1,178 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{9678E693-3459-4D6F-9017-EA3E28A58AC7}</ProjectGuid>
+ <RootNamespace>testDoubleMin</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testDoubleMin.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\..\..\type\type.vcxproj">
+ <Project>{9b1bd750-1fef-4d6b-9422-782d16181cee}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ <ProjectReference Include="..\..\statisticsFunctions.vcxproj">
+ <Project>{e11ed064-3bf2-4f70-b66e-3223c737ec60}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/min/test_DoubleMin/testDoubleMin.vcxproj.filters b/src/c/statisticsFunctions/min/test_DoubleMin/testDoubleMin.vcxproj.filters new file mode 100644 index 0000000..257addf --- /dev/null +++ b/src/c/statisticsFunctions/min/test_DoubleMin/testDoubleMin.vcxproj.filters @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testDoubleMin.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/min/test_FloatMin/testFloatMin.vcxproj b/src/c/statisticsFunctions/min/test_FloatMin/testFloatMin.vcxproj new file mode 100644 index 0000000..409d4ad --- /dev/null +++ b/src/c/statisticsFunctions/min/test_FloatMin/testFloatMin.vcxproj @@ -0,0 +1,178 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{0A156C36-89D5-485E-BB8E-C7536A1DA566}</ProjectGuid>
+ <RootNamespace>testFloatMin</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testFloatMin.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\..\..\type\type.vcxproj">
+ <Project>{9b1bd750-1fef-4d6b-9422-782d16181cee}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ <ProjectReference Include="..\..\statisticsFunctions.vcxproj">
+ <Project>{e11ed064-3bf2-4f70-b66e-3223c737ec60}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/min/test_FloatMin/testFloatMin.vcxproj.filters b/src/c/statisticsFunctions/min/test_FloatMin/testFloatMin.vcxproj.filters new file mode 100644 index 0000000..ab525fa --- /dev/null +++ b/src/c/statisticsFunctions/min/test_FloatMin/testFloatMin.vcxproj.filters @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testFloatMin.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/min/u16columnmina.c b/src/c/statisticsFunctions/min/u16columnmina.c new file mode 100644 index 0000000..1df155d --- /dev/null +++ b/src/c/statisticsFunctions/min/u16columnmina.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "statMin.h" + +void u16columnmina(uint16 *in, int rows, int columns, uint16* out) { + int i = 0, j = 0; + + for (i = 0; i < rows; i++) { + out[i]=(uint16)in[i*columns]; + for (j=0;j<columns;j++) + if (in[i+j*rows]<out[i]) + out[i] = (uint16)in[i+j*rows]; + } + +} diff --git a/src/c/statisticsFunctions/min/u16mina.c b/src/c/statisticsFunctions/min/u16mina.c new file mode 100644 index 0000000..e09f044 --- /dev/null +++ b/src/c/statisticsFunctions/min/u16mina.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "statMin.h" + +uint16 u16mina(uint16 *in, int size) { + uint16 out = in[0]; + int i = 0; + + for (i = 1; i < size; ++i) + { + if (in[i]<out) + out = (uint16)in[i]; + } + return out; + +} diff --git a/src/c/statisticsFunctions/min/u16rowmina.c b/src/c/statisticsFunctions/min/u16rowmina.c new file mode 100644 index 0000000..dc4ba08 --- /dev/null +++ b/src/c/statisticsFunctions/min/u16rowmina.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "statMin.h" + +void u16rowmina(uint16 *in, int rows, int columns, uint16* out) { + int i = 0, j = 0; + + for (i = 0; i < columns; i++) { + out[i]=(uint16)in[i*rows]; + for (j = 1 ; j < rows ; j++) + if (in[i*rows+j]<out[i]) + out[i] = (uint16)in[i*rows+j]; + } +} diff --git a/src/c/statisticsFunctions/min/u8columnmina.c b/src/c/statisticsFunctions/min/u8columnmina.c new file mode 100644 index 0000000..07269fa --- /dev/null +++ b/src/c/statisticsFunctions/min/u8columnmina.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "statMin.h" + +void u8columnmina(uint8 *in, int rows, int columns, uint8* out) { + int i = 0, j = 0; + + for (i = 0; i < rows; i++) { + out[i]=(uint8)in[i*columns]; + for (j=0;j<columns;j++) + if (in[i+j*rows]<out[i]) + out[i] = (uint8)in[i+j*rows]; + } + +} diff --git a/src/c/statisticsFunctions/min/u8mina.c b/src/c/statisticsFunctions/min/u8mina.c new file mode 100644 index 0000000..579d1b3 --- /dev/null +++ b/src/c/statisticsFunctions/min/u8mina.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "statMin.h" + +uint8 u8mina(uint8 *in, int size) { + uint8 out = in[0]; + int i = 0; + + for (i = 1; i < size; ++i) + { + if (in[i]<out) + out = (uint8)in[i]; + } + return out; + +} diff --git a/src/c/statisticsFunctions/min/u8rowmina.c b/src/c/statisticsFunctions/min/u8rowmina.c new file mode 100644 index 0000000..2f1de4f --- /dev/null +++ b/src/c/statisticsFunctions/min/u8rowmina.c @@ -0,0 +1,24 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Mushir + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "statMin.h" + +void u8rowmina(uint8 *in, int rows, int columns, uint8* out) { + int i = 0, j = 0; + + for (i = 0; i < columns; i++) { + out[i]=(uint8)in[i*rows]; + for (j = 1 ; j < rows ; j++) + if (in[i*rows+j]<out[i]) + out[i] = (uint8)in[i*rows+j]; + } +} diff --git a/src/c/statisticsFunctions/prod/Makefile.am b/src/c/statisticsFunctions/prod/Makefile.am new file mode 100644 index 0000000..4c217f5 --- /dev/null +++ b/src/c/statisticsFunctions/prod/Makefile.am @@ -0,0 +1,66 @@ +## +## Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +## Copyright (C) 2006-2008 - INRIA - Bruno JOFRET +## +## This file must be used under the terms of the CeCILL. +## This source file is licensed as described in the file COPYING, which +## you should have received as part of this distribution. The terms +## are also available at +## http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt +## +## + +libProd_la_CFLAGS = -I $(top_builddir)/src/c/type \ + -I $(top_builddir)/src/c/operations/includes \ + -I ../includes + +instdir = $(top_builddir)/lib + +pkglib_LTLIBRARIES = libProd.la + +libProd_la_SOURCES = $(HEAD) $(SRC) + +SRC = sproda.c \ + srowproda.c \ + scolumnproda.c \ + dproda.c \ + drowproda.c \ + dcolumnproda.c \ + cproda.c \ + crowproda.c \ + ccolumnproda.c \ + zproda.c \ + zrowproda.c \ + zcolumnproda.c + +HEAD = ../includes/prod.h + +#### +# Checking Part +#### + +check_INCLUDES = -I $(top_builddir)/src/c/statisticsFunctions/includes \ + -I $(top_builddir)/src/c/operations/includes \ + -I $(top_builddir)/src/c/type + +check_LDADD = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ + $(top_builddir)/src/c/statisticsFunctions/prod/libProd.la \ + @LIBMATH@ + +check_PROGRAMS = testFloatProd testDoubleProd + +TESTS = testFloatProd testDoubleProd + +# +# -*- Prod Tests -*- +# +testFloatProd_SOURCES = testFloatProd.c +testFloatProd_CFLAGS = $(check_INCLUDES) +testFloatProd_LDADD = $(check_LDADD) + +testDoubleProd_SOURCES =testDoubleProd.c +testDoubleProd_CFLAGS = $(check_INCLUDES) +testDoubleProd_LDADD = $(check_LDADD) diff --git a/src/c/statisticsFunctions/prod/Makefile.in b/src/c/statisticsFunctions/prod/Makefile.in new file mode 100644 index 0000000..67fb623 --- /dev/null +++ b/src/c/statisticsFunctions/prod/Makefile.in @@ -0,0 +1,833 @@ +# Makefile.in generated by automake 1.11.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +check_PROGRAMS = testFloatProd$(EXEEXT) testDoubleProd$(EXEEXT) +TESTS = testFloatProd$(EXEEXT) testDoubleProd$(EXEEXT) +subdir = src/c/statisticsFunctions/prod +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/includes/machine.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__installdirs = "$(DESTDIR)$(pkglibdir)" +LTLIBRARIES = $(pkglib_LTLIBRARIES) +libProd_la_LIBADD = +am__objects_1 = +am__objects_2 = libProd_la-sproda.lo libProd_la-srowproda.lo \ + libProd_la-scolumnproda.lo libProd_la-dproda.lo \ + libProd_la-drowproda.lo libProd_la-dcolumnproda.lo \ + libProd_la-cproda.lo libProd_la-crowproda.lo \ + libProd_la-ccolumnproda.lo libProd_la-zproda.lo \ + libProd_la-zrowproda.lo libProd_la-zcolumnproda.lo +am_libProd_la_OBJECTS = $(am__objects_1) $(am__objects_2) +libProd_la_OBJECTS = $(am_libProd_la_OBJECTS) +libProd_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(libProd_la_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +am_testDoubleProd_OBJECTS = testDoubleProd-testDoubleProd.$(OBJEXT) +testDoubleProd_OBJECTS = $(am_testDoubleProd_OBJECTS) +am__DEPENDENCIES_1 = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ + $(top_builddir)/src/c/statisticsFunctions/prod/libProd.la +testDoubleProd_DEPENDENCIES = $(am__DEPENDENCIES_1) +testDoubleProd_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testDoubleProd_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +am_testFloatProd_OBJECTS = testFloatProd-testFloatProd.$(OBJEXT) +testFloatProd_OBJECTS = $(am_testFloatProd_OBJECTS) +testFloatProd_DEPENDENCIES = $(am__DEPENDENCIES_1) +testFloatProd_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testFloatProd_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/includes +depcomp = $(SHELL) $(top_srcdir)/config/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +CCLD = $(CC) +LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ + $(LDFLAGS) -o $@ +SOURCES = $(libProd_la_SOURCES) $(testDoubleProd_SOURCES) \ + $(testFloatProd_SOURCES) +DIST_SOURCES = $(libProd_la_SOURCES) $(testDoubleProd_SOURCES) \ + $(testFloatProd_SOURCES) +ETAGS = etags +CTAGS = ctags +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +F77 = @F77@ +FFLAGS = @FFLAGS@ +FGREP = @FGREP@ +GREP = @GREP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBMATH = @LIBMATH@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +ac_ct_F77 = @ac_ct_F77@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +lt_ECHO = @lt_ECHO@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +libProd_la_CFLAGS = -I $(top_builddir)/src/c/type \ + -I $(top_builddir)/src/c/operations/includes \ + -I ../includes + +instdir = $(top_builddir)/lib +pkglib_LTLIBRARIES = libProd.la +libProd_la_SOURCES = $(HEAD) $(SRC) +SRC = sproda.c \ + srowproda.c \ + scolumnproda.c \ + dproda.c \ + drowproda.c \ + dcolumnproda.c \ + cproda.c \ + crowproda.c \ + ccolumnproda.c \ + zproda.c \ + zrowproda.c \ + zcolumnproda.c + +HEAD = ../includes/prod.h + +#### +# Checking Part +#### +check_INCLUDES = -I $(top_builddir)/src/c/statisticsFunctions/includes \ + -I $(top_builddir)/src/c/operations/includes \ + -I $(top_builddir)/src/c/type + +check_LDADD = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ + $(top_builddir)/src/c/statisticsFunctions/prod/libProd.la \ + @LIBMATH@ + + +# +# -*- Prod Tests -*- +# +testFloatProd_SOURCES = testFloatProd.c +testFloatProd_CFLAGS = $(check_INCLUDES) +testFloatProd_LDADD = $(check_LDADD) +testDoubleProd_SOURCES = testDoubleProd.c +testDoubleProd_CFLAGS = $(check_INCLUDES) +testDoubleProd_LDADD = $(check_LDADD) +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/c/statisticsFunctions/prod/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/c/statisticsFunctions/prod/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): +install-pkglibLTLIBRARIES: $(pkglib_LTLIBRARIES) + @$(NORMAL_INSTALL) + test -z "$(pkglibdir)" || $(MKDIR_P) "$(DESTDIR)$(pkglibdir)" + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + list2=; for p in $$list; do \ + if test -f $$p; then \ + list2="$$list2 $$p"; \ + else :; fi; \ + done; \ + test -z "$$list2" || { \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(pkglibdir)'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(pkglibdir)"; \ + } + +uninstall-pkglibLTLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(pkglibdir)/$$f'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(pkglibdir)/$$f"; \ + done + +clean-pkglibLTLIBRARIES: + -test -z "$(pkglib_LTLIBRARIES)" || rm -f $(pkglib_LTLIBRARIES) + @list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done +libProd.la: $(libProd_la_OBJECTS) $(libProd_la_DEPENDENCIES) + $(libProd_la_LINK) -rpath $(pkglibdir) $(libProd_la_OBJECTS) $(libProd_la_LIBADD) $(LIBS) + +clean-checkPROGRAMS: + @list='$(check_PROGRAMS)'; test -n "$$list" || exit 0; \ + echo " rm -f" $$list; \ + rm -f $$list || exit $$?; \ + test -n "$(EXEEXT)" || exit 0; \ + list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f" $$list; \ + rm -f $$list +testDoubleProd$(EXEEXT): $(testDoubleProd_OBJECTS) $(testDoubleProd_DEPENDENCIES) + @rm -f testDoubleProd$(EXEEXT) + $(testDoubleProd_LINK) $(testDoubleProd_OBJECTS) $(testDoubleProd_LDADD) $(LIBS) +testFloatProd$(EXEEXT): $(testFloatProd_OBJECTS) $(testFloatProd_DEPENDENCIES) + @rm -f testFloatProd$(EXEEXT) + $(testFloatProd_LINK) $(testFloatProd_OBJECTS) $(testFloatProd_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libProd_la-ccolumnproda.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libProd_la-cproda.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libProd_la-crowproda.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libProd_la-dcolumnproda.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libProd_la-dproda.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libProd_la-drowproda.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libProd_la-scolumnproda.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libProd_la-sproda.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libProd_la-srowproda.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libProd_la-zcolumnproda.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libProd_la-zproda.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libProd_la-zrowproda.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testDoubleProd-testDoubleProd.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testFloatProd-testFloatProd.Po@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c $< + +.c.obj: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< + +libProd_la-sproda.lo: sproda.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -MT libProd_la-sproda.lo -MD -MP -MF $(DEPDIR)/libProd_la-sproda.Tpo -c -o libProd_la-sproda.lo `test -f 'sproda.c' || echo '$(srcdir)/'`sproda.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libProd_la-sproda.Tpo $(DEPDIR)/libProd_la-sproda.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='sproda.c' object='libProd_la-sproda.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -c -o libProd_la-sproda.lo `test -f 'sproda.c' || echo '$(srcdir)/'`sproda.c + +libProd_la-srowproda.lo: srowproda.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -MT libProd_la-srowproda.lo -MD -MP -MF $(DEPDIR)/libProd_la-srowproda.Tpo -c -o libProd_la-srowproda.lo `test -f 'srowproda.c' || echo '$(srcdir)/'`srowproda.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libProd_la-srowproda.Tpo $(DEPDIR)/libProd_la-srowproda.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='srowproda.c' object='libProd_la-srowproda.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -c -o libProd_la-srowproda.lo `test -f 'srowproda.c' || echo '$(srcdir)/'`srowproda.c + +libProd_la-scolumnproda.lo: scolumnproda.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -MT libProd_la-scolumnproda.lo -MD -MP -MF $(DEPDIR)/libProd_la-scolumnproda.Tpo -c -o libProd_la-scolumnproda.lo `test -f 'scolumnproda.c' || echo '$(srcdir)/'`scolumnproda.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libProd_la-scolumnproda.Tpo $(DEPDIR)/libProd_la-scolumnproda.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='scolumnproda.c' object='libProd_la-scolumnproda.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -c -o libProd_la-scolumnproda.lo `test -f 'scolumnproda.c' || echo '$(srcdir)/'`scolumnproda.c + +libProd_la-dproda.lo: dproda.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -MT libProd_la-dproda.lo -MD -MP -MF $(DEPDIR)/libProd_la-dproda.Tpo -c -o libProd_la-dproda.lo `test -f 'dproda.c' || echo '$(srcdir)/'`dproda.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libProd_la-dproda.Tpo $(DEPDIR)/libProd_la-dproda.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dproda.c' object='libProd_la-dproda.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -c -o libProd_la-dproda.lo `test -f 'dproda.c' || echo '$(srcdir)/'`dproda.c + +libProd_la-drowproda.lo: drowproda.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -MT libProd_la-drowproda.lo -MD -MP -MF $(DEPDIR)/libProd_la-drowproda.Tpo -c -o libProd_la-drowproda.lo `test -f 'drowproda.c' || echo '$(srcdir)/'`drowproda.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libProd_la-drowproda.Tpo $(DEPDIR)/libProd_la-drowproda.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='drowproda.c' object='libProd_la-drowproda.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -c -o libProd_la-drowproda.lo `test -f 'drowproda.c' || echo '$(srcdir)/'`drowproda.c + +libProd_la-dcolumnproda.lo: dcolumnproda.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -MT libProd_la-dcolumnproda.lo -MD -MP -MF $(DEPDIR)/libProd_la-dcolumnproda.Tpo -c -o libProd_la-dcolumnproda.lo `test -f 'dcolumnproda.c' || echo '$(srcdir)/'`dcolumnproda.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libProd_la-dcolumnproda.Tpo $(DEPDIR)/libProd_la-dcolumnproda.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dcolumnproda.c' object='libProd_la-dcolumnproda.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -c -o libProd_la-dcolumnproda.lo `test -f 'dcolumnproda.c' || echo '$(srcdir)/'`dcolumnproda.c + +libProd_la-cproda.lo: cproda.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -MT libProd_la-cproda.lo -MD -MP -MF $(DEPDIR)/libProd_la-cproda.Tpo -c -o libProd_la-cproda.lo `test -f 'cproda.c' || echo '$(srcdir)/'`cproda.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libProd_la-cproda.Tpo $(DEPDIR)/libProd_la-cproda.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='cproda.c' object='libProd_la-cproda.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -c -o libProd_la-cproda.lo `test -f 'cproda.c' || echo '$(srcdir)/'`cproda.c + +libProd_la-crowproda.lo: crowproda.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -MT libProd_la-crowproda.lo -MD -MP -MF $(DEPDIR)/libProd_la-crowproda.Tpo -c -o libProd_la-crowproda.lo `test -f 'crowproda.c' || echo '$(srcdir)/'`crowproda.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libProd_la-crowproda.Tpo $(DEPDIR)/libProd_la-crowproda.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='crowproda.c' object='libProd_la-crowproda.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -c -o libProd_la-crowproda.lo `test -f 'crowproda.c' || echo '$(srcdir)/'`crowproda.c + +libProd_la-ccolumnproda.lo: ccolumnproda.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -MT libProd_la-ccolumnproda.lo -MD -MP -MF $(DEPDIR)/libProd_la-ccolumnproda.Tpo -c -o libProd_la-ccolumnproda.lo `test -f 'ccolumnproda.c' || echo '$(srcdir)/'`ccolumnproda.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libProd_la-ccolumnproda.Tpo $(DEPDIR)/libProd_la-ccolumnproda.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='ccolumnproda.c' object='libProd_la-ccolumnproda.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -c -o libProd_la-ccolumnproda.lo `test -f 'ccolumnproda.c' || echo '$(srcdir)/'`ccolumnproda.c + +libProd_la-zproda.lo: zproda.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -MT libProd_la-zproda.lo -MD -MP -MF $(DEPDIR)/libProd_la-zproda.Tpo -c -o libProd_la-zproda.lo `test -f 'zproda.c' || echo '$(srcdir)/'`zproda.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libProd_la-zproda.Tpo $(DEPDIR)/libProd_la-zproda.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zproda.c' object='libProd_la-zproda.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -c -o libProd_la-zproda.lo `test -f 'zproda.c' || echo '$(srcdir)/'`zproda.c + +libProd_la-zrowproda.lo: zrowproda.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -MT libProd_la-zrowproda.lo -MD -MP -MF $(DEPDIR)/libProd_la-zrowproda.Tpo -c -o libProd_la-zrowproda.lo `test -f 'zrowproda.c' || echo '$(srcdir)/'`zrowproda.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libProd_la-zrowproda.Tpo $(DEPDIR)/libProd_la-zrowproda.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zrowproda.c' object='libProd_la-zrowproda.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -c -o libProd_la-zrowproda.lo `test -f 'zrowproda.c' || echo '$(srcdir)/'`zrowproda.c + +libProd_la-zcolumnproda.lo: zcolumnproda.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -MT libProd_la-zcolumnproda.lo -MD -MP -MF $(DEPDIR)/libProd_la-zcolumnproda.Tpo -c -o libProd_la-zcolumnproda.lo `test -f 'zcolumnproda.c' || echo '$(srcdir)/'`zcolumnproda.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libProd_la-zcolumnproda.Tpo $(DEPDIR)/libProd_la-zcolumnproda.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zcolumnproda.c' object='libProd_la-zcolumnproda.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libProd_la_CFLAGS) $(CFLAGS) -c -o libProd_la-zcolumnproda.lo `test -f 'zcolumnproda.c' || echo '$(srcdir)/'`zcolumnproda.c + +testDoubleProd-testDoubleProd.o: testDoubleProd.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleProd_CFLAGS) $(CFLAGS) -MT testDoubleProd-testDoubleProd.o -MD -MP -MF $(DEPDIR)/testDoubleProd-testDoubleProd.Tpo -c -o testDoubleProd-testDoubleProd.o `test -f 'testDoubleProd.c' || echo '$(srcdir)/'`testDoubleProd.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleProd-testDoubleProd.Tpo $(DEPDIR)/testDoubleProd-testDoubleProd.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleProd.c' object='testDoubleProd-testDoubleProd.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleProd_CFLAGS) $(CFLAGS) -c -o testDoubleProd-testDoubleProd.o `test -f 'testDoubleProd.c' || echo '$(srcdir)/'`testDoubleProd.c + +testDoubleProd-testDoubleProd.obj: testDoubleProd.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleProd_CFLAGS) $(CFLAGS) -MT testDoubleProd-testDoubleProd.obj -MD -MP -MF $(DEPDIR)/testDoubleProd-testDoubleProd.Tpo -c -o testDoubleProd-testDoubleProd.obj `if test -f 'testDoubleProd.c'; then $(CYGPATH_W) 'testDoubleProd.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleProd.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleProd-testDoubleProd.Tpo $(DEPDIR)/testDoubleProd-testDoubleProd.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleProd.c' object='testDoubleProd-testDoubleProd.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleProd_CFLAGS) $(CFLAGS) -c -o testDoubleProd-testDoubleProd.obj `if test -f 'testDoubleProd.c'; then $(CYGPATH_W) 'testDoubleProd.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleProd.c'; fi` + +testFloatProd-testFloatProd.o: testFloatProd.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatProd_CFLAGS) $(CFLAGS) -MT testFloatProd-testFloatProd.o -MD -MP -MF $(DEPDIR)/testFloatProd-testFloatProd.Tpo -c -o testFloatProd-testFloatProd.o `test -f 'testFloatProd.c' || echo '$(srcdir)/'`testFloatProd.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatProd-testFloatProd.Tpo $(DEPDIR)/testFloatProd-testFloatProd.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatProd.c' object='testFloatProd-testFloatProd.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatProd_CFLAGS) $(CFLAGS) -c -o testFloatProd-testFloatProd.o `test -f 'testFloatProd.c' || echo '$(srcdir)/'`testFloatProd.c + +testFloatProd-testFloatProd.obj: testFloatProd.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatProd_CFLAGS) $(CFLAGS) -MT testFloatProd-testFloatProd.obj -MD -MP -MF $(DEPDIR)/testFloatProd-testFloatProd.Tpo -c -o testFloatProd-testFloatProd.obj `if test -f 'testFloatProd.c'; then $(CYGPATH_W) 'testFloatProd.c'; else $(CYGPATH_W) '$(srcdir)/testFloatProd.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatProd-testFloatProd.Tpo $(DEPDIR)/testFloatProd-testFloatProd.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatProd.c' object='testFloatProd-testFloatProd.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatProd_CFLAGS) $(CFLAGS) -c -o testFloatProd-testFloatProd.obj `if test -f 'testFloatProd.c'; then $(CYGPATH_W) 'testFloatProd.c'; else $(CYGPATH_W) '$(srcdir)/testFloatProd.c'; fi` + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + set x; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) + $(MAKE) $(AM_MAKEFLAGS) check-TESTS +check: check-am +all-am: Makefile $(LTLIBRARIES) +installdirs: + for dir in "$(DESTDIR)$(pkglibdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-checkPROGRAMS clean-generic clean-libtool \ + clean-pkglibLTLIBRARIES mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-pkglibLTLIBRARIES + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-pkglibLTLIBRARIES + +.MAKE: check-am install-am install-strip + +.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \ + clean-checkPROGRAMS clean-generic clean-libtool \ + clean-pkglibLTLIBRARIES ctags distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-pkglibLTLIBRARIES install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ + uninstall-am uninstall-pkglibLTLIBRARIES + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/src/c/statisticsFunctions/prod/ccolumnproda.c b/src/c/statisticsFunctions/prod/ccolumnproda.c new file mode 100644 index 0000000..8ea35e2 --- /dev/null +++ b/src/c/statisticsFunctions/prod/ccolumnproda.c @@ -0,0 +1,36 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Arnaud TORSET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +/* This is a copy/paste with adaptation from sum */ + +#include "prod.h" +#include "multiplication.h" + +void ccolumnproda(floatComplex *in, int lines, int columns, floatComplex * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < lines; ++i) + { + out[i] = in[i]; + } + /* + ** Then accumulate in each row. + */ + for (i = lines ; i < lines * columns ; ++i) + { + out[i % lines] = cmuls(out[i % lines] , in[i]); + } +} diff --git a/src/c/statisticsFunctions/prod/cproda.c b/src/c/statisticsFunctions/prod/cproda.c new file mode 100644 index 0000000..fe0c65d --- /dev/null +++ b/src/c/statisticsFunctions/prod/cproda.c @@ -0,0 +1,30 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Arnaud TORSET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "prod.h" +#include "multiplication.h" + + +floatComplex cproda(floatComplex *in, int size) { + floatComplex accumulate = in[0]; + int i = 0; + + + for (i = 1; i < size; ++i) + { + accumulate = cmuls(accumulate,in[i]); + } + return accumulate; + +} + + diff --git a/src/c/statisticsFunctions/prod/crowproda.c b/src/c/statisticsFunctions/prod/crowproda.c new file mode 100644 index 0000000..463895d --- /dev/null +++ b/src/c/statisticsFunctions/prod/crowproda.c @@ -0,0 +1,37 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Arnaud TORSET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +/* This is a copy/paste with adaptation from sum */ + +#include "prod.h" +#include "multiplication.h" + +void crowproda(floatComplex *in, int lines, int columns, floatComplex * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < columns; ++i) + { + out[i] = in[i * lines]; + } + /* + ** Then accumulate in each column. + */ + for (i = 1 ; i <= (lines - 1) * columns ; ++i) + { + out[(i - 1) % columns] = cmuls( out[(i - 1) % columns] , + in[((i - 1) % columns) * lines + 1 + (i - 1) / columns]); + } +} diff --git a/src/c/statisticsFunctions/prod/dcolumnproda.c b/src/c/statisticsFunctions/prod/dcolumnproda.c new file mode 100644 index 0000000..6ecdcdc --- /dev/null +++ b/src/c/statisticsFunctions/prod/dcolumnproda.c @@ -0,0 +1,35 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Arnaud TORSET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +/* This is a copy/paste with adaptation from sum */ + +#include "prod.h" + +void dcolumnproda(double *in, int lines, int columns, double * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < lines; ++i) + { + out[i] = in[i]; + } + /* + ** Then accumulate in each row. + */ + for (i = lines ; i < lines * columns ; ++i) + { + out[i % lines] *= in[i]; + } +} diff --git a/src/c/statisticsFunctions/prod/dproda.c b/src/c/statisticsFunctions/prod/dproda.c new file mode 100644 index 0000000..cc05890 --- /dev/null +++ b/src/c/statisticsFunctions/prod/dproda.c @@ -0,0 +1,29 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Arnaud TORSET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "prod.h" + + +double dproda(double *in, int size) { + double accumulate = in[0]; + int i = 0; + + + for (i = 1; i < size; ++i) + { + accumulate *= in[i]; + } + return accumulate; + +} + + diff --git a/src/c/statisticsFunctions/prod/drowproda.c b/src/c/statisticsFunctions/prod/drowproda.c new file mode 100644 index 0000000..14f713c --- /dev/null +++ b/src/c/statisticsFunctions/prod/drowproda.c @@ -0,0 +1,35 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Arnaud TORSET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +/* This is a copy/paste with adaptation from sum */ + +#include "prod.h" + +void drowproda(double *in, int lines, int columns, double * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < columns; ++i) + { + out[i] = in[i * lines]; + } + /* + ** Then accumulate in each column. + */ + for (i = 1 ; i <= (lines - 1) * columns ; ++i) + { + out[(i - 1) % columns] *= in[((i - 1) % columns) * lines + 1 + (i - 1) / columns]; + } +} diff --git a/src/c/statisticsFunctions/prod/scolumnproda.c b/src/c/statisticsFunctions/prod/scolumnproda.c new file mode 100644 index 0000000..842d3d1 --- /dev/null +++ b/src/c/statisticsFunctions/prod/scolumnproda.c @@ -0,0 +1,35 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Arnaud TORSET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +/* This is a copy/paste with adaptation from sum */ + +#include "prod.h" + +void scolumnproda(float *in, int lines, int columns, float * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < lines; ++i) + { + out[i] = in[i]; + } + /* + ** Then accumulate in each row. + */ + for (i = lines ; i < lines * columns ; ++i) + { + out[i % lines] *= in[i]; + } +} diff --git a/src/c/statisticsFunctions/prod/sproda.c b/src/c/statisticsFunctions/prod/sproda.c new file mode 100644 index 0000000..9c5bfc2 --- /dev/null +++ b/src/c/statisticsFunctions/prod/sproda.c @@ -0,0 +1,29 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Arnaud TORSET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "prod.h" + + +float sproda(float *in, int size) { + float accumulate = in[0]; + int i = 0; + + + for (i = 1; i < size; ++i) + { + accumulate *= in[i]; + } + return accumulate; + +} + + diff --git a/src/c/statisticsFunctions/prod/srowproda.c b/src/c/statisticsFunctions/prod/srowproda.c new file mode 100644 index 0000000..197072a --- /dev/null +++ b/src/c/statisticsFunctions/prod/srowproda.c @@ -0,0 +1,35 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Arnaud TORSET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +/* This is a copy/paste with adaptation from sum */ + +#include "prod.h" + +void srowproda(float *in, int lines, int columns, float * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < columns; ++i) + { + out[i] = in[i * lines]; + } + /* + ** Then accumulate in each column. + */ + for (i = 1 ; i <= (lines - 1) * columns ; ++i) + { + out[(i - 1) % columns] *= in[((i - 1) % columns) * lines + 1 + (i - 1) / columns]; + } +} diff --git a/src/c/statisticsFunctions/prod/testDoubleProd.c b/src/c/statisticsFunctions/prod/testDoubleProd.c new file mode 100644 index 0000000..6b5972a --- /dev/null +++ b/src/c/statisticsFunctions/prod/testDoubleProd.c @@ -0,0 +1,519 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Arnaud TORSET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <assert.h> +#include <stdio.h> +#include <math.h> +#include "prod.h" + +/* #define LOCAL_DEBUG */ + +#define ERROR(x) printf("diff = %e\n", x) + +static int dprodsTest(void) { + double value1 = 3.0; + double value2 = 1.123456789; + + printf("\n>>>> prod Double Scalar Test\n"); + assert(dprods(value1) == 3.0); + assert(dprods(value2) == 1.123456789); + + return 0; +} + +static int dprodaTest(void) { + double table1[3] = {3.0, 3.0, 3.0}; + double table2[5] = {9.186784563, + 9.186784563, + 9.186784563, + 9.186784563, + 9.186784563}; + + printf("\n>>>> prod Double Array Test\n"); + printf("%f\n", dproda(table1, 3)); + assert(dproda(table1, 3) == 27.0); + assert((dproda(table2, 5) - (9.186784563 * 9.186784563 * 9.186784563 * 9.186784563 * 9.186784563)) / dproda(table2, 5) < 3e-15); + return 0; +} + +static int dcolumnprodaTest(void) { + int i = 0; + double table1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double table2[10] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0, 10.0}; + double columnProductedTable1_3_3[3] = {0}; + double columnProductedTable1_1_9[1] = {0}; + double columnProductedTable1_9_1[9] = {0}; + double columnProductedTable2_2_5[2] = {0}; + double columnProductedTable2_5_2[5] = {0}; + + printf("\n>>>> Column prod Double Array Test\n"); + /* + [ 1 2 3 ] [ 1*2*3=6 ] + [ 4 5 6 ] => [ 4*5*6=120 ] + [ 7 8 9 ] [ 7*8*9=504 ] + */ + dcolumnproda(table1, 3, 3,columnProductedTable1_3_3); + assert(columnProductedTable1_3_3[0] == 6.0); + assert(columnProductedTable1_3_3[1] == 120.0); + assert(columnProductedTable1_3_3[2] == 504.0); + + /* + [ 1 2 3 4 5 6 7 8 9 ] => [ 362880 ] + */ + dcolumnproda(table1, 1, 9,columnProductedTable1_1_9); + assert(columnProductedTable1_1_9[0] == 362880.0); + + /* + [ 1 ] [ 1 ] + [ 2 ] [ 2 ] + [ 3 ] [ 3 ] + [ 4 ] [ 4 ] + [ 5 ] => [ 5 ] + [ 6 ] [ 6 ] + [ 7 ] [ 7 ] + [ 8 ] [ 8 ] + [ 9 ] [ 9 ] + */ + dcolumnproda(table1, 9, 1,columnProductedTable1_9_1); + for ( i = 0 ; i < 9 ; ++i) { + printf("columnProductedTable1_9_1[%d] = %e\n", i, columnProductedTable1_9_1[i]); + assert(columnProductedTable1_9_1[i] == table1[i]); + } + + /* + [ 1 3 5 7 9 ] [ 945 ] + [ 2 4 6 8 10 ] => [ 3840 ] + */ + dcolumnproda(table2, 2, 5,columnProductedTable2_2_5); + assert(columnProductedTable2_2_5[0] == 945.0); + assert(columnProductedTable2_2_5[1] == 3840.0); + for ( i = 0 ; i < 2 ; ++i) { + printf("columnProductedTable2_2_5[%d] = %e\n", i, columnProductedTable2_2_5[i]); + } + + /* + [ 1 6 ] [ 6 ] + [ 2 7 ] => [ 14 ] + [ 3 8 ] [ 24 ] + [ 4 9 ] [ 36 ] + [ 5 10 ] [ 50 ] + */ + dcolumnproda(table2, 5, 2,columnProductedTable2_5_2); + assert(columnProductedTable2_5_2[0] == 6.0); + assert(columnProductedTable2_5_2[1] == 14.0); + assert(columnProductedTable2_5_2[2] == 24.0); + assert(columnProductedTable2_5_2[3] == 36.0); + assert(columnProductedTable2_5_2[4] == 50.0); + for ( i = 0 ; i < 5 ; ++i) { + printf("columnProductedTable2_5_2[%d] = %e\n", i, columnProductedTable2_5_2[i]); + } + + return 0; +} + +static int drowprodaTest(void) { + int i = 0; + double table1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double table2[10] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0, 10.0}; + double rowProductedTable1_3_3[3] = {0}; + double rowProductedTable1_1_9[9] = {0}; + double rowProductedTable1_9_1[1] = {0}; + double rowProductedTable2_2_5[5] = {0}; + double rowProductedTable2_5_2[2] = {0}; + + printf("\n>>>> Row prod Double Array Test\n"); + /* + [ 1 2 3 ] + [ 4 5 6 ] => [ 28 80 162 ] + [ 7 8 9 ] + */ + drowproda(table1, 3, 3,rowProductedTable1_3_3); + for ( i = 0 ; i < 3 ; ++i) { + printf("rowProductedTable1_3_3[%d] = %e\n", i, rowProductedTable1_3_3[i]); + } + assert(rowProductedTable1_3_3[0] == 28.0); + assert(rowProductedTable1_3_3[1] == 80.0); + assert(rowProductedTable1_3_3[2] == 162.0); + + /* + [ 1 2 3 4 5 6 7 8 9 ] => [ 1 2 3 4 5 6 7 8 9 ] + */ + drowproda(table1, 1, 9,rowProductedTable1_1_9); + for ( i = 0 ; i < 9 ; ++i) { + printf("rowProductedTable1_1_9[%d] = %e\n", i, rowProductedTable1_1_9[i]); + assert(rowProductedTable1_1_9[i] == table1[i]); + } + + /* + [ 1 ] + [ 2 ] + [ 3 ] + [ 4 ] + [ 5 ] => [ 362880 ] + [ 6 ] + [ 7 ] + [ 8 ] + [ 9 ] + */ + drowproda(table1, 9, 1,rowProductedTable1_9_1); + assert(rowProductedTable1_9_1[0] == 362880.0); + + /* + [ 1 3 5 7 9 ] + [ 2 4 6 8 10 ] => [ 2 12 30 56 90 ] + */ + drowproda(table2, 2, 5,rowProductedTable2_2_5); + assert(rowProductedTable2_2_5[0] == 2.0); + assert(rowProductedTable2_2_5[1] == 12.0); + assert(rowProductedTable2_2_5[2] == 30.0); + assert(rowProductedTable2_2_5[3] == 56.0); + assert(rowProductedTable2_2_5[4] == 90.0); + for ( i = 0 ; i < 5 ; ++i) { + printf("rowProductedTable2_2_5[%d] = %e\n", i, rowProductedTable2_2_5[i]); + } + + /* + [ 1 6 ] + [ 2 7 ] => [ 120 30240 ] + [ 3 8 ] + [ 4 9 ] + [ 5 10 ] + */ + drowproda(table2, 5, 2,rowProductedTable2_5_2); + assert(rowProductedTable2_5_2[0] == 120.0); + assert(rowProductedTable2_5_2[1] == 30240.0); + for ( i = 0 ; i < 2 ; ++i) { + printf("rowProductedTable2_5_2[%d] = %e\n", i, rowProductedTable2_5_2[i]); + } + + return 0; +} + +static int zprodsTest(void) { + doubleComplex value1 = DoubleComplex(3.0, 3.0); + doubleComplex value2 = DoubleComplex(1.123456789, 1.123456789); + + printf("\n>>>> prod Double Complex Scalar Test\n"); + assert(zreals(zprods(value1)) == 3.0); + assert(zimags(zprods(value1)) == 3.0); + assert(zreals(zprods(value2)) == 1.123456789); + assert(zimags(zprods(value2)) == 1.123456789); + return 0; +} + +static int zprodaTest(void) { + doubleComplex value1 = DoubleComplex(3.0, 3.0); + doubleComplex table1[3]; + doubleComplex value2 = DoubleComplex(9.186784563,9.186784563); + doubleComplex table2[5]; + + printf("\n>>>> prod Double Complex Array Test\n"); + table1[0] = value1; + table1[1] = value1; + table1[2] = value1; + + table2[0] = value2; + table2[1] = value2; + table2[2] = value2; + table2[3] = value2; + table2[4] = value2; + +#ifdef LOCAL_DEBUG + printf("--------\n"); + printf("%e\n", zreals(zproda(table1, 3))); + printf("%e\n", zimags(zproda(table1, 3))); + printf("%1.20f\n", zreals(zproda(table2, 5))); + printf("%1.20f\n", zimags(zproda(table2, 5))); + printf("%1.20f\n", zreals(zproda(table2, 5)) + 261744.55211053110542707); + printf("--------\n"); +#endif + assert(zreals(zproda(table1, 3)) == -54.0); + assert(zimags(zproda(table1, 3)) == 54.0); + assert(fabs(zreals(zproda(table2, 5)) + 261744.55211053110542707) < 3e-16); + assert(fabs(zimags(zproda(table2, 5)) + 261744.55211053110542707) < 3e-16); + + return 0; +} + +static int zrowprodaTest(void) { + int i = 0; + doubleComplex in[12]; + doubleComplex rowProductedIn_4_3[3]; + doubleComplex rowProductedIn_3_4[4]; + doubleComplex rowProductedIn_6_2[2]; + doubleComplex rowProductedIn_2_6[6]; + doubleComplex rowProductedIn_1_12[12]; + doubleComplex rowProductedIn_12_1[1]; + + printf("\n>>>> Row prod Double Complex Array Test\n"); + /* Init input var */ + for (i = 0 ; i < 12 ; ++i) + { + in[i] = DoubleComplex((double) i / 10.0, (11.0 - (double) i) / 10.0); + } + + /* + [ 1.1i 0.4+0.7i 0.8+0.3i ] + [ 0.1+i 0.5+0.6i 0.9+0.2i ] => [ 0.6787000000000000810019 - 0.5456i + [ 0.2+0.9i 0.6+0.5i 1+0.1i ] - 0.3964999999999999635847, + [ 0.3+0.8i 0.7+0.4i 1.1 ] 0.678700000000000192024 + 0.5456i] + */ + zrowproda(in, 4, 3, rowProductedIn_4_3); + for (i = 0 ; i < 3 ; ++i) { + printf("rowProductedIn_4_3[%d] = %e + %ei\n", i, zreals(rowProductedIn_4_3[i]), zimags(rowProductedIn_4_3[i])); + } + assert(fabs(zreals(rowProductedIn_4_3[0]) - 0.6787000000000000810019) < 3e-16); + assert(fabs(zimags(rowProductedIn_4_3[0]) + 0.5456) < 3e-16); + assert(fabs(zreals(rowProductedIn_4_3[1]) + 0.3964999999999999635847) < 3e-16); + assert(fabs(zimags(rowProductedIn_4_3[1]) - 0.0) < 3e-16); + assert(fabs(zreals(rowProductedIn_4_3[2]) - 0.6787000000000000810019) < 3e-16); + assert(fabs(zimags(rowProductedIn_4_3[2]) - 0.5456) < 3e-16); + + /* + [ 1.1i 0.3+0.8i 0.6+0.5i 0.9+0.2i ] + [ 0.1+i 0.4+0.7i 0.7+0.4i 1+0.1i ] => [ - 0.3190000000000000612843 - 0.9680000000000000826006i, + [ 0.2+0.9i 0.5+0.6i 0.8+0.3i 1.1 ] - 0.5380000000000000337508 + 0.0010000000000000563993i, + - 0.0010000000000000008882 + 0.5379999999999999227285i, + 0.9680000000000000826006 + 0.3190000000000000612843i ] + */ + zrowproda(in, 3, 4, rowProductedIn_3_4); + for (i = 0 ; i < 4 ; ++i) { + printf("rowProductedIn_3_4[%d] = %e + %ei\n", i, zreals(rowProductedIn_3_4[i]), zimags(rowProductedIn_3_4[i])); + } + assert(fabs(zreals(rowProductedIn_3_4[0]) + 0.3190000000000000612843) < 3e-16); + assert(fabs(zimags(rowProductedIn_3_4[0]) + 0.9680000000000000826006) < 3e-16); + assert(fabs(zreals(rowProductedIn_3_4[1]) + 0.5380000000000000337508) < 3e-16); + assert(fabs(zimags(rowProductedIn_3_4[1]) - 0.0010000000000000563993 ) < 3e-16); + assert(fabs(zreals(rowProductedIn_3_4[2]) + 0.0010000000000000008882) < 3e-16); + assert(fabs(zimags(rowProductedIn_3_4[2]) - 0.5379999999999999227285) < 3e-16); + assert(fabs(zreals(rowProductedIn_3_4[3]) - 0.9680000000000000826006) < 3e-16); + assert(fabs(zimags(rowProductedIn_3_4[3]) - 0.3190000000000000612843) < 3e-16); + + /* + [ 1.1i 0.6+0.5i ] + [ 0.1+i 0.7+0.4i ] + [ 0.2+0.9i 0.8+0.3i ] => [ 0.1725900000000000766853 + 0.5204650000000000664713i, + [ 0.3+0.8i 0.9+0.2i ] - 0.1725899999999999934186 + 0.5204649999999999554490i ] + [ 0.4+0.7i 1+0.1i ] + [ 0.5+0.6i 1.1 ] + */ + zrowproda(in, 6, 2, rowProductedIn_6_2); + for (i = 0 ; i < 2 ; ++i) { + printf("rowProductedIn_6_2[%d] = %e + %ei\n", i, zreals(rowProductedIn_6_2[i]), zimags(rowProductedIn_6_2[i])); + } + assert(fabs(zreals(rowProductedIn_6_2[0]) - 0.1725900000000000766853) < 3e-16); + assert(fabs(zimags(rowProductedIn_6_2[0]) - 0.5204650000000000664713) < 3e-16); + assert(fabs(zreals(rowProductedIn_6_2[1]) + 0.1725899999999999934186) < 3e-16); + assert(fabs(zimags(rowProductedIn_6_2[1]) - 0.5204649999999999554490 ) < 3e-16); + + /* + [ 1.1i 0.2+0.9i 0.4+0.7i 0.6+0.5i 0.8+0.3i 1+0.1i ] + [ 0.1+i 0.3+0.8i 0.5+0.6i 0.7+0.4i 0.9+0.2i 1.1 ] => [ - 1.1000000000000000888178 + 0.11i, + - 0.6600000000000001421086 + 0.4300000000000000488498i, + - 0.2199999999999999733547 + 0.5899999999999999689138i, + 0.2199999999999999733547 + 0.5899999999999999689138i, + 0.6600000000000001421086 + 0.4300000000000000488498i, + 1.1000000000000000888178 + 0.11i ] + */ + zrowproda(in, 2, 6, rowProductedIn_2_6); + for (i = 0 ; i < 6 ; ++i) { + printf("rowProductedIn_2_6[%d] = %e + %ei\n", i, zreals(rowProductedIn_2_6[i]), zimags(rowProductedIn_2_6[i])); + } + assert(fabs(zreals(rowProductedIn_2_6[0]) + 1.1000000000000000888178) < 3e-16); + assert(fabs(zimags(rowProductedIn_2_6[0]) - 0.11) < 3e-16); + assert(fabs(zreals(rowProductedIn_2_6[1]) + 0.6600000000000001421086) < 3e-16); + assert(fabs(zimags(rowProductedIn_2_6[1]) - 0.4300000000000000488498 ) < 3e-16); + assert(fabs(zreals(rowProductedIn_2_6[2]) + 0.2199999999999999733547) < 3e-16); + assert(fabs(zimags(rowProductedIn_2_6[2]) - 0.5899999999999999689138) < 3e-16); + assert(fabs(zreals(rowProductedIn_2_6[3]) - 0.2199999999999999733547) < 3e-16); + assert(fabs(zimags(rowProductedIn_2_6[3]) - 0.5899999999999999689138 ) < 3e-16); + assert(fabs(zreals(rowProductedIn_2_6[4]) - 0.6600000000000001421086) < 3e-16); + assert(fabs(zimags(rowProductedIn_2_6[4]) - 0.4300000000000000488498) < 3e-16); + assert(fabs(zreals(rowProductedIn_2_6[5]) - 1.1000000000000000888178) < 3e-16); + assert(fabs(zimags(rowProductedIn_2_6[5]) - 0.11 ) < 3e-16); + + /* + [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + => + [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + */ + zrowproda(in, 1, 12, rowProductedIn_1_12); + for (i = 0 ; i < 12 ; ++i) { + printf("rowProductedIn_1_12[%d] = %e + %ei\n", i, zreals(rowProductedIn_1_12[i]), zimags(rowProductedIn_1_12[i])); + assert(zreals(rowProductedIn_1_12[i]) == zreals(in[i]) && zimags(rowProductedIn_1_12[i]) == zimags(in[i])); + } + + /* + [ 1.1i ] + [ 0.1+i ] + [ 0.2+0.9i ] + [ 0.3+0.8i ] + [ 0.4+0.7i ] + [ 0.5+0.6i ] + [ 0.6+0.5i ] => [- 0.3006711243250001497351 + 0.0000000000000000038164i ] + [ 0.7+0.4i ] + [ 0.8+0.3i ] + [ 0.9+0.2i ] + [ 1+0.1i ] + [ 1.1 ] + + */ + zrowproda(in, 12, 1, rowProductedIn_12_1); + printf("rowProductedIn_12_1[%d] = %e + %ei\n", 0, zreals(rowProductedIn_12_1[0]), zimags(rowProductedIn_12_1[0])); + assert(fabs(zreals(rowProductedIn_12_1[0]) + 0.3006711243250001497351) < 3e-16); + assert(fabs(zimags(rowProductedIn_12_1[0]) - 0.0000000000000000038164) < 3e-16); + + return 0; +} + +static int zcolumnprodaTest(void) { + int i = 0; + doubleComplex in[12]; + doubleComplex columnProductedIn_4_3[4]; + doubleComplex columnProductedIn_3_4[3]; + doubleComplex columnProductedIn_6_2[6]; + doubleComplex columnProductedIn_2_6[2]; + doubleComplex columnProductedIn_1_12[1]; + doubleComplex columnProductedIn_12_1[12]; + + printf("\n>>>> Columnprod Double Complex Array Test\n"); + /* Init input var */ + for (i = 0 ; i < 12 ; ++i) + { + in[i] = DoubleComplex((double) i / 10.0, (11.0 - (double) i) / 10.0); + } + + /* + [ 1.1i 0.4+0.7i 0.8+0.3i ] [ - 0.7480000000000001092460 + 0.1210000000000001074696i ] + [ 0.1+i 0.5+0.6i 0.9+0.2i ] => [ - 0.6069999999999999840128 + 0.3940000000000001278977i ] + [ 0.2+0.9i 0.6+0.5i 1+0.1i ] [ - 0.3940000000000000168754 + 0.6069999999999999840128i ] + [ 0.3+0.8i 0.7+0.4i 1.1 ] [ - 0.1210000000000000935918 + 0.7479999999999999982236i ] + */ + zcolumnproda(in, 4, 3, columnProductedIn_4_3); + for (i = 0 ; i < 4 ; ++i) { + printf("columnProductedIn_4_3[%d] = %e + %ei\n", i, zreals(columnProductedIn_4_3[i]), zimags(columnProductedIn_4_3[i])); + } + assert(fabs(zreals(columnProductedIn_4_3[0]) + 0.7480000000000001092460) < 3e-16); + assert(fabs(zimags(columnProductedIn_4_3[0]) - 0.1210000000000001074696) < 3e-16); + assert(fabs(zreals(columnProductedIn_4_3[1]) + 0.6069999999999999840128) < 3e-16); + assert(fabs(zimags(columnProductedIn_4_3[1]) - 0.394000000000000127897) < 3e-16); + assert(fabs(zreals(columnProductedIn_4_3[2]) + 0.3940000000000000168754) < 3e-16); + assert(fabs(zimags(columnProductedIn_4_3[2]) - 0.606999999999999984012) < 3e-16); + assert(fabs(zreals(columnProductedIn_4_3[3]) + 0.1210000000000000935918) < 3e-16); + assert(fabs(zimags(columnProductedIn_4_3[3]) - 0.7479999999999999982236) < 3e-16); + + /* + [ 1.1i 0.3+0.8i 0.6+0.5i 0.9+0.2i ] [ - 0.5753000000000000335731 - 0.3564000000000000500933i ] + [ 0.1+i 0.4+0.7i 0.7+0.4i 1+0.1i ] => [ - 0.6564999999999998614442 + 0.0000000000000000693889i ] + [ 0.2+0.9i 0.5+0.6i 0.8+0.3i 1.1 ] [ - 0.5753000000000001445955 + 0.3564000000000001056044i ] + */ + zcolumnproda(in, 3, 4, columnProductedIn_3_4); + for (i = 0 ; i < 3 ; ++i) { + printf("columnProductedIn_3_4[%d] = %e + %ei\n", i, zreals(columnProductedIn_3_4[i]), zimags(columnProductedIn_3_4[i])); + } + assert(fabs(zreals(columnProductedIn_3_4[0]) + 0.5753000000000000335731) < 3e-16); + assert(fabs(zimags(columnProductedIn_3_4[0]) + 0.3564000000000000500933) < 3e-16); + assert(fabs(zreals(columnProductedIn_3_4[1]) + 0.6564999999999998614442) < 3e-16); + assert(fabs(zimags(columnProductedIn_3_4[1]) - 0.0000000000000000693889) < 3e-16); + assert(fabs(zreals(columnProductedIn_3_4[2]) + 0.5753000000000001445955) < 3e-16); + assert(fabs(zimags(columnProductedIn_3_4[2]) - 0.3564000000000001056044) < 3e-16); + + /* + [ 1.1i 0.6+0.5i ] [ - 0.5500000000000000444089 + 0.6600000000000000310862i ] + [ 0.1+i 0.7+0.4i ] [ - 0.3300000000000000155431 + 0.7399999999999999911182i ] + [ 0.2+0.9i 0.8+0.3i ] => [ - 0.1099999999999999866773 + 0.7800000000000000266454i ] + [ 0.3+0.8i 0.9+0.2i ] [ 0.1099999999999999866773 + 0.7800000000000000266454i ] + [ 0.4+0.7i 1+0.1i ] [ 0.3300000000000000155431 + 0.7399999999999999911182i ] + [ 0.5+0.6i 1.1 ] [ 0.5500000000000000444089 + 0.6600000000000000310862i ] + */ + zcolumnproda(in, 6, 2, columnProductedIn_6_2); + for (i = 0 ; i < 6 ; ++i) { + printf("columnProductedIn_6_2[%d] = %e + %ei\n", i, zreals(columnProductedIn_6_2[i]), zimags(columnProductedIn_6_2[i])); + } + assert(fabs(zreals(columnProductedIn_6_2[0]) + 0.5500000000000000444089) < 3e-16); + assert(fabs(zimags(columnProductedIn_6_2[0]) - 0.6600000000000000310862) < 3e-16); + assert(fabs(zreals(columnProductedIn_6_2[1]) + 0.3300000000000000155431) < 3e-16); + assert(fabs(zimags(columnProductedIn_6_2[1]) - 0.7399999999999999911182) < 3e-16); + assert(fabs(zreals(columnProductedIn_6_2[2]) + 0.1099999999999999866773) < 3e-16); + assert(fabs(zimags(columnProductedIn_6_2[2]) - 0.7800000000000000266454) < 3e-16); + assert(fabs(zreals(columnProductedIn_6_2[3]) - 0.1099999999999999866773) < 3e-16); + assert(fabs(zimags(columnProductedIn_6_2[3]) - 0.7800000000000000266454) < 3e-16); + assert(fabs(zreals(columnProductedIn_6_2[4]) - 0.3300000000000000155431) < 3e-16); + assert(fabs(zimags(columnProductedIn_6_2[4]) - 0.7399999999999999911182) < 3e-16); + assert(fabs(zreals(columnProductedIn_6_2[5]) - 0.5500000000000000444089) < 3e-16); + assert(fabs(zimags(columnProductedIn_6_2[5]) - 0.6600000000000000310862) < 3e-16); + + /* + [ 1.1i 0.2+0.9i 0.4+0.7i 0.6+0.5i 0.8+0.3i 1+0.1i ] [ 0.2212649999999999894662 - 0.5017100000000001003286i ] + [ 0.1+i 0.3+0.8i 0.5+0.6i 0.7+0.4i 0.9+0.2i 1.1 ] => [ - 0.2212649999999999894662 - 0.5017100000000001003286i ] + */ + zcolumnproda(in, 2, 6, columnProductedIn_2_6); + for (i = 0 ; i < 2 ; ++i) { + printf("columnProductedIn_2_6[%d] = %e + %ei\n", i, zreals(columnProductedIn_2_6[i]), zimags(columnProductedIn_2_6[i])); + } + assert(fabs(zreals(columnProductedIn_2_6[0]) - 0.2212649999999999894662) < 3e-16); + assert(fabs(zimags(columnProductedIn_2_6[0]) + 0.5017100000000001003286) < 3e-16); + assert(fabs(zreals(columnProductedIn_2_6[1]) + 0.2212649999999999894662) < 3e-16); + assert(fabs(zimags(columnProductedIn_2_6[1]) + 0.5017100000000001003286) < 3e-16); + + /* + [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + => + [ - 0.3006711243250001497351 + 0.0000000000000000038164i ] + */ + zcolumnproda(in, 1, 12, columnProductedIn_1_12); + printf("columnProductedIn_1_12[%d] = %e + %ei\n", 0, zreals(columnProductedIn_1_12[0]), zimags(columnProductedIn_1_12[0])); + assert(fabs(zreals(columnProductedIn_1_12[0]) + 0.3006711243250001497351) < 3e-16); + assert(fabs(zimags(columnProductedIn_1_12[0]) - 0.0000000000000000038164) < 3e-16); + + + /* + [ 1.1i ] => [ 1.1i ] + [ 0.1+i ] => [ 0.1+i ] + [ 0.2+0.9i ] => [ 0.2+0.9i ] + [ 0.3+0.8i ] => [ 0.3+0.8i ] + [ 0.4+0.7i ] => [ 0.4+0.7i ] + [ 0.5+0.6i ] => [ 0.5+0.6i ] + [ 0.6+0.5i ] => [ 0.6+0.5i ] + [ 0.7+0.4i ] => [ 0.7+0.4i ] + [ 0.8+0.3i ] => [ 0.8+0.3i ] + [ 0.9+0.2i ] => [ 0.9+0.2i ] + [ 1+0.1i ] => [ 1+0.1i ] + [ 1.1 ] => [ 1.1 ] + */ + zcolumnproda(in, 12, 1, columnProductedIn_12_1); + for (i = 0 ; i < 12 ; ++i) { + printf("columnProductedIn_12_1[%d] = %e + %ei\n", i, zreals(columnProductedIn_12_1[i]), zimags(columnProductedIn_12_1[i])); + assert(zreals(columnProductedIn_12_1[i]) == zreals(in[i]) && zimags(columnProductedIn_12_1[i]) == zimags(in[i])); + } + + return 0; +} + +static int testprod(void) { + + dprodsTest(); + dprodaTest(); + drowprodaTest(); + dcolumnprodaTest(); + zprodsTest(); + zprodaTest(); + zrowprodaTest(); + zcolumnprodaTest(); + + return 0; +} + +int main(void) { + assert(testprod() == 0); + return 0; +} diff --git a/src/c/statisticsFunctions/prod/testFloatProd.c b/src/c/statisticsFunctions/prod/testFloatProd.c new file mode 100644 index 0000000..b5fe20c --- /dev/null +++ b/src/c/statisticsFunctions/prod/testFloatProd.c @@ -0,0 +1,527 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Arnaud TORSET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <assert.h> +#include <stdio.h> +#include <math.h> +#include "prod.h" + + #define LOCAL_DEBUG + +static int sprodsTest(void) { + float value1 = 3.0f; + float value2 = 1.123456789f; + + printf("\n>>>> Prod Float Scalar Test\n"); + assert(sprods(value1) == 3.0f); + assert(sprods(value2) == 1.123456789f); + + return 0; +} + +static int sprodaTest(void) { + float table1[3] = {3.0f, 3.0f, 3.0f}; + float table2[5] = {9.186784563f, + 9.186784563f, + 9.186784563f, + 9.186784563f, + 9.186784563f}; + + printf("\n>>>> Prod Float Array Test\n"); + printf("%f\n", sproda(table1, 3)); + assert(sproda(table1, 3) == 27.0f); + assert((sproda(table2, 5) - (9.186784f * 9.186784f * 9.186784f * 9.186784f * 9.186784f)) / sproda(table2, 5) < 1e-6); + return 0; +} + +static int scolumnprodaTest(void) { + int i = 0; + float table1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float table2[10] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f}; + float columnProductedTable1_3_3[3] = {0}; + float columnProductedTable1_1_9[1] = {0}; + float columnProductedTable1_9_1[9] = {0}; + float columnProductedTable2_2_5[2] = {0}; + float columnProductedTable2_5_2[5] = {0}; + + printf("\n>>>> Column Prod Float Array Test\n"); + /* + [ 1 2 3 ] [ 1*2*3=6 ] + [ 4 5 6 ] => [ 4*5*6=120 ] + [ 7 8 9 ] [ 7*8*9=504 ] + */ + scolumnproda(table1, 3, 3,columnProductedTable1_3_3); + assert(columnProductedTable1_3_3[0] == 6.0f); + assert(columnProductedTable1_3_3[1] == 120.0f); + assert(columnProductedTable1_3_3[2] == 504.0f); + + /* + [ 1 2 3 4 5 6 7 8 9 ] => [ 362880 ] + */ + scolumnproda(table1, 1, 9,columnProductedTable1_1_9); + assert(columnProductedTable1_1_9[0] == 362880.0f); + + /* + [ 1 ] [ 1 ] + [ 2 ] [ 2 ] + [ 3 ] [ 3 ] + [ 4 ] [ 4 ] + [ 5 ] => [ 5 ] + [ 6 ] [ 6 ] + [ 7 ] [ 7 ] + [ 8 ] [ 8 ] + [ 9 ] [ 9 ] + */ + scolumnproda(table1, 9, 1,columnProductedTable1_9_1); + for ( i = 0 ; i < 9 ; ++i) { + printf("columnProductedTable1_9_1[%d] = %e\n", i, columnProductedTable1_9_1[i]); + assert(columnProductedTable1_9_1[i] == table1[i]); + } + + /* + [ 1 3 5 7 9 ] [ 945 ] + [ 2 4 6 8 10 ] => [ 3840 ] + */ + scolumnproda(table2, 2, 5,columnProductedTable2_2_5); + assert(columnProductedTable2_2_5[0] == 945.0f); + assert(columnProductedTable2_2_5[1] == 3840.0f); + for ( i = 0 ; i < 2 ; ++i) { + printf("columnProductedTable2_2_5[%d] = %e\n", i, columnProductedTable2_2_5[i]); + } + + /* + [ 1 6 ] [ 6 ] + [ 2 7 ] => [ 14 ] + [ 3 8 ] [ 24 ] + [ 4 9 ] [ 36 ] + [ 5 10 ] [ 50 ] + */ + scolumnproda(table2, 5, 2,columnProductedTable2_5_2); + assert(columnProductedTable2_5_2[0] == 6.0f); + assert(columnProductedTable2_5_2[1] == 14.0f); + assert(columnProductedTable2_5_2[2] == 24.0f); + assert(columnProductedTable2_5_2[3] == 36.0f); + assert(columnProductedTable2_5_2[4] == 50.0f); + for ( i = 0 ; i < 5 ; ++i) { + printf("columnProductedTable2_5_2[%d] = %e\n", i, columnProductedTable2_5_2[i]); + } + + return 0; +} + +static int srowprodaTest(void) { + int i = 0; + float table1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float table2[10] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f}; + float rowProductedTable1_3_3[3] = {0}; + float rowProductedTable1_1_9[9] = {0}; + float rowProductedTable1_9_1[1] = {0}; + float rowProductedTable2_2_5[5] = {0}; + float rowProductedTable2_5_2[2] = {0}; + + printf("\n>>>> Row Prod Float Array Test\n"); + /* + [ 1 2 3 ] + [ 4 5 6 ] => [ 28 80 162 ] + [ 7 8 9 ] + */ + srowproda(table1, 3, 3,rowProductedTable1_3_3); + for ( i = 0 ; i < 3 ; ++i) { + printf("rowProductedTable1_3_3[%d] = %e\n", i, rowProductedTable1_3_3[i]); + } + assert(rowProductedTable1_3_3[0] == 28.0f); + assert(rowProductedTable1_3_3[1] == 80.0f); + assert(rowProductedTable1_3_3[2] == 162.0f); + + /* + [ 1 2 3 4 5 6 7 8 9 ] => [ 1 2 3 4 5 6 7 8 9 ] + */ + srowproda(table1, 1, 9,rowProductedTable1_1_9); + for ( i = 0 ; i < 9 ; ++i) { + printf("rowProductedTable1_1_9[%d] = %e\n", i, rowProductedTable1_1_9[i]); + assert(rowProductedTable1_1_9[i] == table1[i]); + } + + /* + [ 1 ] + [ 2 ] + [ 3 ] + [ 4 ] + [ 5 ] => [ 362880 ] + [ 6 ] + [ 7 ] + [ 8 ] + [ 9 ] + */ + srowproda(table1, 9, 1,rowProductedTable1_9_1); + assert(rowProductedTable1_9_1[0] == 362880.0f); + + /* + [ 1 3 5 7 9 ] + [ 2 4 6 8 10 ] => [ 2 12 30 56 90 ] + */ + srowproda(table2, 2, 5,rowProductedTable2_2_5); + assert(rowProductedTable2_2_5[0] == 2.0f); + assert(rowProductedTable2_2_5[1] == 12.0f); + assert(rowProductedTable2_2_5[2] == 30.0f); + assert(rowProductedTable2_2_5[3] == 56.0f); + assert(rowProductedTable2_2_5[4] == 90.0f); + for ( i = 0 ; i < 5 ; ++i) { + printf("rowProductedTable2_2_5[%d] = %e\n", i, rowProductedTable2_2_5[i]); + } + + /* + [ 1 6 ] + [ 2 7 ] => [ 120 30240 ] + [ 3 8 ] + [ 4 9 ] + [ 5 10 ] + */ + srowproda(table2, 5, 2,rowProductedTable2_5_2); + assert(rowProductedTable2_5_2[0] == 120.0f); + assert(rowProductedTable2_5_2[1] == 30240.0f); + for ( i = 0 ; i < 2 ; ++i) { + printf("rowProductedTable2_5_2[%d] = %e\n", i, rowProductedTable2_5_2[i]); + } + + return 0; +} + +static int cprodsTest(void) { + floatComplex value1 = FloatComplex(3.0f, 3.0f); + floatComplex value2 = FloatComplex(1.123456789f, 1.123456789f); + + printf("\n>>>> Prod Float Complex Scalar Test\n"); + assert(creals(cprods(value1)) == 3.0f); + assert(cimags(cprods(value1)) == 3.0f); + assert(creals(cprods(value2)) == 1.123456789f); + assert(cimags(cprods(value2)) == 1.123456789f); + return 0; +} + +static int cprodaTest(void) { + floatComplex value1 = FloatComplex(3.0f, 3.0f); + floatComplex table1[3]; + floatComplex value2 = FloatComplex(9.186784563f,9.186784563f); + floatComplex table2[5]; + + printf("\n>>>> Prod Float Complex Array Test\n"); + table1[0] = value1; + table1[1] = value1; + table1[2] = value1; + + table2[0] = value2; + table2[1] = value2; + table2[2] = value2; + table2[3] = value2; + table2[4] = value2; + +#ifdef LOCAL_DEBUG + printf("--------\n"); + printf("%e\n", creals(cproda(table1, 3))); + printf("%e\n", cimags(cproda(table1, 3))); + printf("%1.20f\n", creals(cproda(table2, 5))); + printf("%1.20f\n", cimags(cproda(table2, 5))); + printf("%1.20f\n", creals(cproda(table2, 5)) + 261744.55211053110542707f); + printf("--------\n"); +#endif + + assert(creals(cproda(table1, 3)) == -54.0f); + assert(cimags(cproda(table1, 3)) == 54.0f); + assert(fabs(creals(cproda(table2, 5)) + 261744.55211053110542707f)/creals(cproda(table2, 5)) < 1e-06); + assert(fabs(cimags(cproda(table2, 5)) + 261744.55211053110542707f)/cimags(cproda(table2, 5)) < 1e-06); + + return 0; +} + +static int crowprodaTest(void) { + int i = 0; + floatComplex in[12]; + floatComplex rowProductedIn_4_3[3]; + floatComplex rowProductedIn_3_4[4]; + floatComplex rowProductedIn_6_2[2]; + floatComplex rowProductedIn_2_6[6]; + floatComplex rowProductedIn_1_12[12]; + floatComplex rowProductedIn_12_1[1]; + + printf("\n>>>> Row Prod Float Complex Array Test\n"); + /* Init input var */ + for (i = 0 ; i < 12 ; ++i) + { + in[i] = FloatComplex((float) i / 10.0f, (11.0f - (float) i) / 10.0f); + } + + /* + [ 1.1i 0.4+0.7i 0.8+0.3i ] + [ 0.1+i 0.5+0.6i 0.9+0.2i ] => [ 0.6787000000000000810019 - 0.5456i + [ 0.2+0.9i 0.6+0.5i 1+0.1i ] - 0.3964999999999999635847, + [ 0.3+0.8i 0.7+0.4i 1.1 ] 0.678700000000000192024 + 0.5456i] + */ + crowproda(in, 4, 3, rowProductedIn_4_3); + for (i = 0 ; i < 3 ; ++i) { + printf("rowProductedIn_4_3[%d] = %e + %ei\n", i, creals(rowProductedIn_4_3[i]), cimags(rowProductedIn_4_3[i])); + } + assert(fabs(creals(rowProductedIn_4_3[0]) - 0.6787000000000000810019f) < 1e-06); + assert(fabs(cimags(rowProductedIn_4_3[0]) + 0.5456f) < 1e-06); + assert(fabs(creals(rowProductedIn_4_3[1]) + 0.3964999999999999635847f) < 1e-06); + assert(fabs(cimags(rowProductedIn_4_3[1]) - 0.0f) < 1e-06); + assert(fabs(creals(rowProductedIn_4_3[2]) - 0.6787000000000000810019f) < 1e-06); + assert(fabs(cimags(rowProductedIn_4_3[2]) - 0.5456f) < 1e-06); + + + /* + [ 1.1i 0.3+0.8i 0.6+0.5i 0.9+0.2i ] + [ 0.1+i 0.4+0.7i 0.7+0.4i 1+0.1i ] => [ - 0.3190000000000000612843 - 0.9680000000000000826006i, + [ 0.2+0.9i 0.5+0.6i 0.8+0.3i 1.1 ] - 0.5380000000000000337508 + 0.0010000000000000563993i, + - 0.0010000000000000008882 + 0.5379999999999999227285i, + 0.9680000000000000826006 + 0.3190000000000000612843i ] + */ + crowproda(in, 3, 4, rowProductedIn_3_4); + for (i = 0 ; i < 4 ; ++i) { + printf("rowProductedIn_3_4[%d] = %e + %ei\n", i, creals(rowProductedIn_3_4[i]), cimags(rowProductedIn_3_4[i])); + } + assert(fabs(creals(rowProductedIn_3_4[0]) + 0.3190000000000000612843f) < 1e-06); + assert(fabs(cimags(rowProductedIn_3_4[0]) + 0.9680000000000000826006f) < 1e-06); + assert(fabs(creals(rowProductedIn_3_4[1]) + 0.5380000000000000337508f) < 1e-06); + assert(fabs(cimags(rowProductedIn_3_4[1]) - 0.0010000000000000563993 ) < 1e-06); + assert(fabs(creals(rowProductedIn_3_4[2]) + 0.0010000000000000008882f) < 1e-06); + assert(fabs(cimags(rowProductedIn_3_4[2]) - 0.5379999999999999227285f) < 1e-06); + assert(fabs(creals(rowProductedIn_3_4[3]) - 0.9680000000000000826006f) < 1e-06); + assert(fabs(cimags(rowProductedIn_3_4[3]) - 0.3190000000000000612843f) < 1e-06); + + + /* + [ 1.1i 0.6+0.5i ] + [ 0.1+i 0.7+0.4i ] + [ 0.2+0.9i 0.8+0.3i ] => [ 0.1725900000000000766853 + 0.5204650000000000664713i, + [ 0.3+0.8i 0.9+0.2i ] - 0.1725899999999999934186 + 0.5204649999999999554490i ] + [ 0.4+0.7i 1+0.1i ] + [ 0.5+0.6i 1.1 ] + */ + crowproda(in, 6, 2, rowProductedIn_6_2); + for (i = 0 ; i < 2 ; ++i) { + printf("rowProductedIn_6_2[%d] = %e + %ei\n", i, creals(rowProductedIn_6_2[i]), cimags(rowProductedIn_6_2[i])); + } + + assert(fabs(creals(rowProductedIn_6_2[0]) - 0.1725900000000000766853f) < 1e-06); + assert(fabs(cimags(rowProductedIn_6_2[0]) - 0.5204650000000000664713f) < 1e-06); + assert(fabs(creals(rowProductedIn_6_2[1]) + 0.1725899999999999934186f) < 1e-06); + assert(fabs(cimags(rowProductedIn_6_2[1]) - 0.5204649999999999554490 ) < 1e-06); + + + /* + [ 1.1i 0.2+0.9i 0.4+0.7i 0.6+0.5i 0.8+0.3i 1+0.1i ] + [ 0.1+i 0.3+0.8i 0.5+0.6i 0.7+0.4i 0.9+0.2i 1.1 ] => [ - 1.1000000000000000888178 + 0.11i, + - 0.6600000000000001421086 + 0.4300000000000000488498i, + - 0.2199999999999999733547 + 0.5899999999999999689138i, + 0.2199999999999999733547 + 0.5899999999999999689138i, + 0.6600000000000001421086 + 0.4300000000000000488498i, + 1.1000000000000000888178 + 0.11i ] + + */ + crowproda(in, 2, 6, rowProductedIn_2_6); + for (i = 0 ; i < 6 ; ++i) { + printf("rowProductedIn_2_6[%d] = %e + %ei\n", i, creals(rowProductedIn_2_6[i]), cimags(rowProductedIn_2_6[i])); + } + + assert(fabs(creals(rowProductedIn_2_6[0]) + 1.1000000000000000888178f) < 1e-06); + assert(fabs(cimags(rowProductedIn_2_6[0]) - 0.11f) < 1e-06); + assert(fabs(creals(rowProductedIn_2_6[1]) + 0.6600000000000001421086f) < 1e-06); + assert(fabs(cimags(rowProductedIn_2_6[1]) - 0.4300000000000000488498 ) < 1e-06); + assert(fabs(creals(rowProductedIn_2_6[2]) + 0.2199999999999999733547f) < 1e-06); + assert(fabs(cimags(rowProductedIn_2_6[2]) - 0.5899999999999999689138f) < 1e-06); + assert(fabs(creals(rowProductedIn_2_6[3]) - 0.2199999999999999733547f) < 1e-06); + assert(fabs(cimags(rowProductedIn_2_6[3]) - 0.5899999999999999689138 ) < 1e-06); + assert(fabs(creals(rowProductedIn_2_6[4]) - 0.6600000000000001421086f) < 1e-06); + assert(fabs(cimags(rowProductedIn_2_6[4]) - 0.4300000000000000488498f) < 1e-06); + assert(fabs(creals(rowProductedIn_2_6[5]) - 1.1000000000000000888178f) < 1e-06); + assert(fabs(cimags(rowProductedIn_2_6[5]) - 0.11 ) < 1e-06); + + + /* + [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + => [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + */ + crowproda(in, 1, 12, rowProductedIn_1_12); + for (i = 0 ; i < 12 ; ++i) { + printf("rowProductedIn_1_12[%d] = %e + %ei\n", i, creals(rowProductedIn_1_12[i]), cimags(rowProductedIn_1_12[i])); + assert(creals(rowProductedIn_1_12[i]) == creals(in[i]) && cimags(rowProductedIn_1_12[i]) == cimags(in[i])); + } + + + /* + [ 1.1i ] + [ 0.1+i ] + [ 0.2+0.9i ] + [ 0.3+0.8i ] + [ 0.4+0.7i ] + [ 0.5+0.6i ] + [ 0.6+0.5i ] => [- 0.3006711243250001497351 + 0.0000000000000000038164i ] + [ 0.7+0.4i ] + [ 0.8+0.3i ] + [ 0.9+0.2i ] + [ 1+0.1i ] + [ 1.1 ] + + + */ + crowproda(in, 12, 1, rowProductedIn_12_1); + printf("rowProductedIn_12_1[%d] = %e + %ei\n", 0, creals(rowProductedIn_12_1[0]), cimags(rowProductedIn_12_1[0])); + assert(fabs(creals(rowProductedIn_12_1[0]) + 0.3006711243250001497351f) < 1e-06); + assert(fabs(cimags(rowProductedIn_12_1[0]) - 0.0000000000000000038164f) < 1e-06); + + return 0; +} + +static int ccolumnprodaTest(void) { + int i = 0; + floatComplex in[12]; + floatComplex columnProductedIn_4_3[4]; + floatComplex columnProductedIn_3_4[3]; + floatComplex columnProductedIn_6_2[6]; + floatComplex columnProductedIn_2_6[2]; + floatComplex columnProductedIn_1_12[1]; + floatComplex columnProductedIn_12_1[12]; + + printf("\n>>>> ColumnProd Float Complex Array Test\n"); + /* Init input var */ + for (i = 0 ; i < 12 ; ++i) + { + in[i] = FloatComplex((float) i / 10.0f, (11.0f - (float) i) / 10.0f); + } + + /* + [ 1.1i 0.4+0.7i 0.8+0.3i ] [ - 0.7480000000000001092460 + 0.1210000000000001074696i ] + [ 0.1+i 0.5+0.6i 0.9+0.2i ] => [ - 0.6069999999999999840128 + 0.3940000000000001278977i ] + [ 0.2+0.9i 0.6+0.5i 1+0.1i ] [ - 0.3940000000000000168754 + 0.6069999999999999840128i ] + [ 0.3+0.8i 0.7+0.4i 1.1 ] [ - 0.1210000000000000935918 + 0.7479999999999999982236i ] + */ + ccolumnproda(in, 4, 3, columnProductedIn_4_3); + for (i = 0 ; i < 4 ; ++i) { + printf("columnProductedIn_4_3[%d] = %e + %ei\n", i, creals(columnProductedIn_4_3[i]), cimags(columnProductedIn_4_3[i])); + } + assert(fabs(creals(columnProductedIn_4_3[0]) + 0.7480000000000001092460f) < 1e-06); + assert(fabs(cimags(columnProductedIn_4_3[0]) - 0.1210000000000001074696f) < 1e-06); + assert(fabs(creals(columnProductedIn_4_3[1]) + 0.6069999999999999840128f) < 1e-06); + assert(fabs(cimags(columnProductedIn_4_3[1]) - 0.394000000000000127897f) < 1e-06); + assert(fabs(creals(columnProductedIn_4_3[2]) + 0.3940000000000000168754f) < 1e-06); + assert(fabs(cimags(columnProductedIn_4_3[2]) - 0.606999999999999984012f) < 1e-06); + assert(fabs(creals(columnProductedIn_4_3[3]) + 0.1210000000000000935918f) < 1e-06); + assert(fabs(cimags(columnProductedIn_4_3[3]) - 0.7479999999999999982236f) < 1e-06); + + /* + [ 1.1i 0.3+0.8i 0.6+0.5i 0.9+0.2i ] [ - 0.5753000000000000335731 - 0.3564000000000000500933i ] + [ 0.1+i 0.4+0.7i 0.7+0.4i 1+0.1i ] => [ - 0.6564999999999998614442 + 0.0000000000000000693889i ] + [ 0.2+0.9i 0.5+0.6i 0.8+0.3i 1.1 ] [ - 0.5753000000000001445955 + 0.3564000000000001056044i ] + */ + ccolumnproda(in, 3, 4, columnProductedIn_3_4); + for (i = 0 ; i < 3 ; ++i) { + printf("columnProductedIn_3_4[%d] = %e + %ei\n", i, creals(columnProductedIn_3_4[i]), cimags(columnProductedIn_3_4[i])); + } + assert(fabs(creals(columnProductedIn_3_4[0]) + 0.5753000000000000335731f) < 1e-06); + assert(fabs(cimags(columnProductedIn_3_4[0]) + 0.3564000000000000500933f) < 1e-06); + assert(fabs(creals(columnProductedIn_3_4[1]) + 0.6564999999999998614442f) < 1e-06); + assert(fabs(cimags(columnProductedIn_3_4[1]) - 0.0000000000000000693889f) < 1e-06); + assert(fabs(creals(columnProductedIn_3_4[2]) + 0.5753000000000001445955f) < 1e-06); + assert(fabs(cimags(columnProductedIn_3_4[2]) - 0.3564000000000001056044f) < 1e-06); + + /* + [ 1.1i 0.6+0.5i ] [ - 0.5500000000000000444089 + 0.6600000000000000310862i ] + [ 0.1+i 0.7+0.4i ] [ - 0.3300000000000000155431 + 0.7399999999999999911182i ] + [ 0.2+0.9i 0.8+0.3i ] => [ - 0.1099999999999999866773 + 0.7800000000000000266454i ] + [ 0.3+0.8i 0.9+0.2i ] [ 0.1099999999999999866773 + 0.7800000000000000266454i ] + [ 0.4+0.7i 1+0.1i ] [ 0.3300000000000000155431 + 0.7399999999999999911182i ] + [ 0.5+0.6i 1.1 ] [ 0.5500000000000000444089 + 0.6600000000000000310862i ] + */ + ccolumnproda(in, 6, 2, columnProductedIn_6_2); + for (i = 0 ; i < 6 ; ++i) { + printf("columnProductedIn_6_2[%d] = %e + %ei\n", i, creals(columnProductedIn_6_2[i]), cimags(columnProductedIn_6_2[i])); + } + assert(fabs(creals(columnProductedIn_6_2[0]) + 0.5500000000000000444089f) < 1e-06); + assert(fabs(cimags(columnProductedIn_6_2[0]) - 0.6600000000000000310862f) < 1e-06); + assert(fabs(creals(columnProductedIn_6_2[1]) + 0.3300000000000000155431f) < 1e-06); + assert(fabs(cimags(columnProductedIn_6_2[1]) - 0.7399999999999999911182f) < 1e-06); + assert(fabs(creals(columnProductedIn_6_2[2]) + 0.1099999999999999866773f) < 1e-06); + assert(fabs(cimags(columnProductedIn_6_2[2]) - 0.7800000000000000266454f) < 1e-06); + assert(fabs(creals(columnProductedIn_6_2[3]) - 0.1099999999999999866773f) < 1e-06); + assert(fabs(cimags(columnProductedIn_6_2[3]) - 0.7800000000000000266454f) < 1e-06); + assert(fabs(creals(columnProductedIn_6_2[4]) - 0.3300000000000000155431f) < 1e-06); + assert(fabs(cimags(columnProductedIn_6_2[4]) - 0.7399999999999999911182f) < 1e-06); + assert(fabs(creals(columnProductedIn_6_2[5]) - 0.5500000000000000444089f) < 1e-06); + assert(fabs(cimags(columnProductedIn_6_2[5]) - 0.6600000000000000310862f) < 1e-06); + + /* + [ 1.1i 0.2+0.9i 0.4+0.7i 0.6+0.5i 0.8+0.3i 1+0.1i ] [ 0.2212649999999999894662 - 0.5017100000000001003286i ] + [ 0.1+i 0.3+0.8i 0.5+0.6i 0.7+0.4i 0.9+0.2i 1.1 ] => [ - 0.2212649999999999894662 - 0.5017100000000001003286i ] + */ + ccolumnproda(in, 2, 6, columnProductedIn_2_6); + for (i = 0 ; i < 2 ; ++i) { + printf("columnProductedIn_2_6[%d] = %e + %ei\n", i, creals(columnProductedIn_2_6[i]), cimags(columnProductedIn_2_6[i])); + } + assert(fabs(creals(columnProductedIn_2_6[0]) - 0.2212649999999999894662f) < 1e-06); + assert(fabs(cimags(columnProductedIn_2_6[0]) + 0.5017100000000001003286f) < 1e-06); + assert(fabs(creals(columnProductedIn_2_6[1]) + 0.2212649999999999894662f) < 1e-06); + assert(fabs(cimags(columnProductedIn_2_6[1]) + 0.5017100000000001003286f) < 1e-06); + + /* + [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + => + [ - 0.3006711243250001497351 + 0.0000000000000000038164i ] + + */ + ccolumnproda(in, 1, 12, columnProductedIn_1_12); + printf("columnProductedIn_1_12[%d] = %e + %ei\n", 0, creals(columnProductedIn_1_12[0]), cimags(columnProductedIn_1_12[0])); + assert(fabs(creals(columnProductedIn_1_12[0]) + 0.3006711243250001497351f) < 1e-06); + assert(fabs(cimags(columnProductedIn_1_12[0]) - 0.0000000000000000038164f) < 1e-06); + + + /* + [ 1.1i ] => [ 1.1i ] + [ 0.1+i ] => [ 0.1+i ] + [ 0.2+0.9i ] => [ 0.2+0.9i ] + [ 0.3+0.8i ] => [ 0.3+0.8i ] + [ 0.4+0.7i ] => [ 0.4+0.7i ] + [ 0.5+0.6i ] => [ 0.5+0.6i ] + [ 0.6+0.5i ] => [ 0.6+0.5i ] + [ 0.7+0.4i ] => [ 0.7+0.4i ] + [ 0.8+0.3i ] => [ 0.8+0.3i ] + [ 0.9+0.2i ] => [ 0.9+0.2i ] + [ 1+0.1i ] => [ 1+0.1i ] + [ 1.1 ] => [ 1.1 ] + */ + ccolumnproda(in, 12, 1, columnProductedIn_12_1); + for (i = 0 ; i < 12 ; ++i) { + printf("columnProductedIn_12_1[%d] = %e + %ei\n", i, creals(columnProductedIn_12_1[i]), cimags(columnProductedIn_12_1[i])); + assert(creals(columnProductedIn_12_1[i]) == creals(in[i]) && cimags(columnProductedIn_12_1[i]) == cimags(in[i])); + } + + return 0; +} + +static int testProd(void) { + + sprodsTest(); + sprodaTest(); + srowprodaTest(); + scolumnprodaTest(); + cprodsTest(); + cprodaTest(); + crowprodaTest(); + ccolumnprodaTest(); + + return 0; +} + +int main(void) { + assert(testProd() == 0); + return 0; +} diff --git a/src/c/statisticsFunctions/prod/test_DoubleProd/testDoubleProd.vcxproj b/src/c/statisticsFunctions/prod/test_DoubleProd/testDoubleProd.vcxproj new file mode 100644 index 0000000..0c31766 --- /dev/null +++ b/src/c/statisticsFunctions/prod/test_DoubleProd/testDoubleProd.vcxproj @@ -0,0 +1,178 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{322F871E-3349-4993-BC87-CAFAA6B6F72C}</ProjectGuid>
+ <RootNamespace>testDoubleProd</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testDoubleProd.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\..\..\type\type.vcxproj">
+ <Project>{9b1bd750-1fef-4d6b-9422-782d16181cee}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ <ProjectReference Include="..\..\statisticsFunctions.vcxproj">
+ <Project>{e11ed064-3bf2-4f70-b66e-3223c737ec60}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/prod/test_DoubleProd/testDoubleProd.vcxproj.filters b/src/c/statisticsFunctions/prod/test_DoubleProd/testDoubleProd.vcxproj.filters new file mode 100644 index 0000000..82f3501 --- /dev/null +++ b/src/c/statisticsFunctions/prod/test_DoubleProd/testDoubleProd.vcxproj.filters @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testDoubleProd.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/prod/test_FloatProd/testFloatProd.vcxproj b/src/c/statisticsFunctions/prod/test_FloatProd/testFloatProd.vcxproj new file mode 100644 index 0000000..4faff60 --- /dev/null +++ b/src/c/statisticsFunctions/prod/test_FloatProd/testFloatProd.vcxproj @@ -0,0 +1,178 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{B80645FE-03D0-4BC8-8DAE-032A58CF4E57}</ProjectGuid>
+ <RootNamespace>testFloatProd</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testFloatProd.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\..\..\type\type.vcxproj">
+ <Project>{9b1bd750-1fef-4d6b-9422-782d16181cee}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ <ProjectReference Include="..\..\statisticsFunctions.vcxproj">
+ <Project>{e11ed064-3bf2-4f70-b66e-3223c737ec60}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/prod/test_FloatProd/testFloatProd.vcxproj.filters b/src/c/statisticsFunctions/prod/test_FloatProd/testFloatProd.vcxproj.filters new file mode 100644 index 0000000..f42beb9 --- /dev/null +++ b/src/c/statisticsFunctions/prod/test_FloatProd/testFloatProd.vcxproj.filters @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testFloatProd.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/prod/zcolumnproda.c b/src/c/statisticsFunctions/prod/zcolumnproda.c new file mode 100644 index 0000000..277afd5 --- /dev/null +++ b/src/c/statisticsFunctions/prod/zcolumnproda.c @@ -0,0 +1,36 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Arnaud TORSET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +/* This is a copy/paste with adaptation from sum */ + +#include "prod.h" +#include "multiplication.h" + +void zcolumnproda(doubleComplex *in, int lines, int columns, doubleComplex * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < lines; ++i) + { + out[i] = in[i]; + } + /* + ** Then accumulate in each row. + */ + for (i = lines ; i < lines * columns ; ++i) + { + out[i % lines] = zmuls(out[i % lines] , in[i]); + } +} diff --git a/src/c/statisticsFunctions/prod/zproda.c b/src/c/statisticsFunctions/prod/zproda.c new file mode 100644 index 0000000..a017d97 --- /dev/null +++ b/src/c/statisticsFunctions/prod/zproda.c @@ -0,0 +1,30 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Arnaud TORSET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "prod.h" +#include "multiplication.h" + + +doubleComplex zproda(doubleComplex *in, int size) { + doubleComplex accumulate = in[0]; + int i = 0; + + + for (i = 1; i < size; ++i) + { + accumulate = zmuls(accumulate,in[i]); + } + return accumulate; + +} + + diff --git a/src/c/statisticsFunctions/prod/zrowproda.c b/src/c/statisticsFunctions/prod/zrowproda.c new file mode 100644 index 0000000..84a1690 --- /dev/null +++ b/src/c/statisticsFunctions/prod/zrowproda.c @@ -0,0 +1,37 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Arnaud TORSET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +/* This is a copy/paste with adaptation from sum */ + +#include "prod.h" +#include "multiplication.h" + +void zrowproda(doubleComplex *in, int lines, int columns, doubleComplex * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < columns; ++i) + { + out[i] = in[i * lines]; + } + /* + ** Then accumulate in each column. + */ + for (i = 1 ; i <= (lines - 1) * columns ; ++i) + { + out[(i - 1) % columns] = zmuls( out[(i - 1) % columns] , + in[((i - 1) % columns) * lines + 1 + (i - 1) / columns]); + } +} diff --git a/src/c/statisticsFunctions/statisticsFunctions.vcxproj b/src/c/statisticsFunctions/statisticsFunctions.vcxproj new file mode 100644 index 0000000..48a8b0c --- /dev/null +++ b/src/c/statisticsFunctions/statisticsFunctions.vcxproj @@ -0,0 +1,661 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{E11ED064-3BF2-4F70-B66E-3223C737EC60}</ProjectGuid>
+ <RootNamespace>statisticsFunctions</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>DynamicLibrary</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>DynamicLibrary</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>DynamicLibrary</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>DynamicLibrary</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>includes;../type;../operations/includes;../elementaryFunctions/includes;../matrixOperations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;STATISTICSFUNCTIONS_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).dll</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Windows</SubSystem>
+ <ImportLibrary>$(SolutionDir)bin\$(ProjectName).lib</ImportLibrary>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>includes;../type;../operations/includes;../elementaryFunctions/includes;../matrixOperations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;STATISTICSFUNCTIONS_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).dll</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Windows</SubSystem>
+ <ImportLibrary>$(SolutionDir)bin\$(ProjectName).lib</ImportLibrary>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>includes;../type;../operations/includes;../elementaryFunctions/includes;../matrixOperations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;STATISTICSFUNCTIONS_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).dll</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Windows</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <ImportLibrary>$(SolutionDir)bin\$(ProjectName).lib</ImportLibrary>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>includes;../type;../operations/includes;../elementaryFunctions/includes;../matrixOperations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;STATISTICSFUNCTIONS_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).dll</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Windows</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <ImportLibrary>$(SolutionDir)bin\$(ProjectName).lib</ImportLibrary>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="max\dcolumnmaxa.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="max\dmaxa.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="max\drowmaxa.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="max\scolumnmaxa.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="max\smaxa.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="max\srowmaxa.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="mean\ccolumnmeana.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="mean\cmeana.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="mean\crowmeana.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="mean\dcolumnmeana.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="mean\dmeana.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="mean\drowmeana.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="mean\scolumnmeana.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="mean\smeana.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="mean\srowmeana.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="mean\zcolumnmeana.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="mean\zmeana.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="mean\zrowmeana.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="min\dcolumnmina.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="min\dmina.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="min\drowmina.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="min\scolumnmina.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="min\smina.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="min\srowmina.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="prod\ccolumnproda.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="prod\cproda.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="prod\crowproda.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="prod\dcolumnproda.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="prod\dproda.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="prod\drowproda.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="prod\scolumnproda.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="prod\sproda.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="prod\srowproda.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="prod\zcolumnproda.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="prod\zproda.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="prod\zrowproda.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="sum\ccolumnsuma.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="sum\crowsuma.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="sum\csuma.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="sum\dcolumnsuma.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="sum\drowsuma.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="sum\dsuma.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="sum\scolumnsuma.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="sum\srowsuma.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="sum\ssuma.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="sum\zcolumnsuma.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="sum\zrowsuma.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="sum\zsuma.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="variance\ccolumnvariancea.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="variance\crowvariancea.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="variance\cvariancea.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="variance\dcolumnvariancea.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="variance\drowvariancea.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="variance\dvariancea.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="variance\scolumnvariancea.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="variance\srowvariancea.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="variance\svariancea.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="variance\zcolumnvariancea.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="variance\zrowvariancea.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="variance\zvariancea.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="meanf\ccolumnmeanfa.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="meanf\cmeanfa.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="meanf\cmeanfcs.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="meanf\cmeanfsc.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="meanf\crowmeanfa.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="meanf\dcolumnmeanfa.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="meanf\dmeanfa.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="meanf\drowmeanfa.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="meanf\scolumnmeanfa.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="meanf\smeanfa.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="meanf\srowmeanfa.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="meanf\zcolumnmeanfa.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="meanf\zmeanfa.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="meanf\zmeanfdz.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="meanf\zmeanfzd.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ <ClCompile Include="meanf\zrowmeanfa.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="max\Makefile.am" />
+ <None Include="mean\Makefile.am" />
+ <None Include="min\Makefile.am" />
+ <None Include="prod\Makefile.am" />
+ <None Include="sum\Makefile.am" />
+ <None Include="variance\Makefile.am" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="includes\dynlib_statisticsfunctions.h" />
+ <ClInclude Include="includes\mean.h" />
+ <ClInclude Include="includes\prod.h" />
+ <ClInclude Include="includes\statMax.h" />
+ <ClInclude Include="includes\statMin.h" />
+ <ClInclude Include="includes\sum.h" />
+ <ClInclude Include="includes\variance.h" />
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\auxiliaryFunctions\auxiliaryFunctions.vcxproj">
+ <Project>{af4a8af2-cc9f-4991-be6e-8aaf9cb5bfc9}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ <ProjectReference Include="..\elementaryFunctions\elementaryFunctions.vcxproj">
+ <Project>{72b46833-b150-432d-b231-3e0ecd91e190}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ <ProjectReference Include="..\matrixOperations\matrixOperations.vcxproj">
+ <Project>{fd335544-52bf-4736-a34e-77f591d158d5}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ <ProjectReference Include="..\operations\operations.vcxproj">
+ <Project>{9b622a66-546a-4b33-b947-0a189d259d37}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ <ProjectReference Include="..\type\type.vcxproj">
+ <Project>{9b1bd750-1fef-4d6b-9422-782d16181cee}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/statisticsFunctions.vcxproj.filters b/src/c/statisticsFunctions/statisticsFunctions.vcxproj.filters new file mode 100644 index 0000000..fe6dc17 --- /dev/null +++ b/src/c/statisticsFunctions/statisticsFunctions.vcxproj.filters @@ -0,0 +1,311 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Source Files\max">
+ <UniqueIdentifier>{97915945-ecc0-4347-9836-9b85df72c2bb}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Source Files\mean">
+ <UniqueIdentifier>{ea434b72-a4a9-430e-adc3-b8596209f07a}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Source Files\min">
+ <UniqueIdentifier>{5cf34c99-e4b3-4905-8380-36c5db366c34}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Source Files\prod">
+ <UniqueIdentifier>{2cb4b69b-5118-4f1c-b1a0-30efd61cac2f}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Source Files\sum">
+ <UniqueIdentifier>{fedd49a4-6978-4994-94cd-2d6735b650f4}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Source Files\variance">
+ <UniqueIdentifier>{8748e141-260a-4ec0-9659-0cd159a4b76d}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Source Files\meanf">
+ <UniqueIdentifier>{a93cd659-6a20-4db5-ac4d-0e66fb3bfa8f}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="max\dcolumnmaxa.c">
+ <Filter>Source Files\max</Filter>
+ </ClCompile>
+ <ClCompile Include="max\dmaxa.c">
+ <Filter>Source Files\max</Filter>
+ </ClCompile>
+ <ClCompile Include="max\drowmaxa.c">
+ <Filter>Source Files\max</Filter>
+ </ClCompile>
+ <ClCompile Include="max\scolumnmaxa.c">
+ <Filter>Source Files\max</Filter>
+ </ClCompile>
+ <ClCompile Include="max\smaxa.c">
+ <Filter>Source Files\max</Filter>
+ </ClCompile>
+ <ClCompile Include="max\srowmaxa.c">
+ <Filter>Source Files\max</Filter>
+ </ClCompile>
+ <ClCompile Include="mean\ccolumnmeana.c">
+ <Filter>Source Files\mean</Filter>
+ </ClCompile>
+ <ClCompile Include="mean\cmeana.c">
+ <Filter>Source Files\mean</Filter>
+ </ClCompile>
+ <ClCompile Include="mean\crowmeana.c">
+ <Filter>Source Files\mean</Filter>
+ </ClCompile>
+ <ClCompile Include="mean\dcolumnmeana.c">
+ <Filter>Source Files\mean</Filter>
+ </ClCompile>
+ <ClCompile Include="mean\dmeana.c">
+ <Filter>Source Files\mean</Filter>
+ </ClCompile>
+ <ClCompile Include="mean\drowmeana.c">
+ <Filter>Source Files\mean</Filter>
+ </ClCompile>
+ <ClCompile Include="mean\scolumnmeana.c">
+ <Filter>Source Files\mean</Filter>
+ </ClCompile>
+ <ClCompile Include="mean\smeana.c">
+ <Filter>Source Files\mean</Filter>
+ </ClCompile>
+ <ClCompile Include="mean\srowmeana.c">
+ <Filter>Source Files\mean</Filter>
+ </ClCompile>
+ <ClCompile Include="mean\zcolumnmeana.c">
+ <Filter>Source Files\mean</Filter>
+ </ClCompile>
+ <ClCompile Include="mean\zmeana.c">
+ <Filter>Source Files\mean</Filter>
+ </ClCompile>
+ <ClCompile Include="mean\zrowmeana.c">
+ <Filter>Source Files\mean</Filter>
+ </ClCompile>
+ <ClCompile Include="min\dcolumnmina.c">
+ <Filter>Source Files\min</Filter>
+ </ClCompile>
+ <ClCompile Include="min\dmina.c">
+ <Filter>Source Files\min</Filter>
+ </ClCompile>
+ <ClCompile Include="min\drowmina.c">
+ <Filter>Source Files\min</Filter>
+ </ClCompile>
+ <ClCompile Include="min\scolumnmina.c">
+ <Filter>Source Files\min</Filter>
+ </ClCompile>
+ <ClCompile Include="min\smina.c">
+ <Filter>Source Files\min</Filter>
+ </ClCompile>
+ <ClCompile Include="min\srowmina.c">
+ <Filter>Source Files\min</Filter>
+ </ClCompile>
+ <ClCompile Include="prod\ccolumnproda.c">
+ <Filter>Source Files\prod</Filter>
+ </ClCompile>
+ <ClCompile Include="prod\cproda.c">
+ <Filter>Source Files\prod</Filter>
+ </ClCompile>
+ <ClCompile Include="prod\crowproda.c">
+ <Filter>Source Files\prod</Filter>
+ </ClCompile>
+ <ClCompile Include="prod\dcolumnproda.c">
+ <Filter>Source Files\prod</Filter>
+ </ClCompile>
+ <ClCompile Include="prod\dproda.c">
+ <Filter>Source Files\prod</Filter>
+ </ClCompile>
+ <ClCompile Include="prod\drowproda.c">
+ <Filter>Source Files\prod</Filter>
+ </ClCompile>
+ <ClCompile Include="prod\scolumnproda.c">
+ <Filter>Source Files\prod</Filter>
+ </ClCompile>
+ <ClCompile Include="prod\sproda.c">
+ <Filter>Source Files\prod</Filter>
+ </ClCompile>
+ <ClCompile Include="prod\srowproda.c">
+ <Filter>Source Files\prod</Filter>
+ </ClCompile>
+ <ClCompile Include="prod\zcolumnproda.c">
+ <Filter>Source Files\prod</Filter>
+ </ClCompile>
+ <ClCompile Include="prod\zproda.c">
+ <Filter>Source Files\prod</Filter>
+ </ClCompile>
+ <ClCompile Include="prod\zrowproda.c">
+ <Filter>Source Files\prod</Filter>
+ </ClCompile>
+ <ClCompile Include="sum\ccolumnsuma.c">
+ <Filter>Source Files\sum</Filter>
+ </ClCompile>
+ <ClCompile Include="sum\crowsuma.c">
+ <Filter>Source Files\sum</Filter>
+ </ClCompile>
+ <ClCompile Include="sum\csuma.c">
+ <Filter>Source Files\sum</Filter>
+ </ClCompile>
+ <ClCompile Include="sum\dcolumnsuma.c">
+ <Filter>Source Files\sum</Filter>
+ </ClCompile>
+ <ClCompile Include="sum\drowsuma.c">
+ <Filter>Source Files\sum</Filter>
+ </ClCompile>
+ <ClCompile Include="sum\dsuma.c">
+ <Filter>Source Files\sum</Filter>
+ </ClCompile>
+ <ClCompile Include="sum\scolumnsuma.c">
+ <Filter>Source Files\sum</Filter>
+ </ClCompile>
+ <ClCompile Include="sum\srowsuma.c">
+ <Filter>Source Files\sum</Filter>
+ </ClCompile>
+ <ClCompile Include="sum\ssuma.c">
+ <Filter>Source Files\sum</Filter>
+ </ClCompile>
+ <ClCompile Include="sum\zcolumnsuma.c">
+ <Filter>Source Files\sum</Filter>
+ </ClCompile>
+ <ClCompile Include="sum\zrowsuma.c">
+ <Filter>Source Files\sum</Filter>
+ </ClCompile>
+ <ClCompile Include="sum\zsuma.c">
+ <Filter>Source Files\sum</Filter>
+ </ClCompile>
+ <ClCompile Include="variance\ccolumnvariancea.c">
+ <Filter>Source Files\variance</Filter>
+ </ClCompile>
+ <ClCompile Include="variance\crowvariancea.c">
+ <Filter>Source Files\variance</Filter>
+ </ClCompile>
+ <ClCompile Include="variance\cvariancea.c">
+ <Filter>Source Files\variance</Filter>
+ </ClCompile>
+ <ClCompile Include="variance\dcolumnvariancea.c">
+ <Filter>Source Files\variance</Filter>
+ </ClCompile>
+ <ClCompile Include="variance\drowvariancea.c">
+ <Filter>Source Files\variance</Filter>
+ </ClCompile>
+ <ClCompile Include="variance\dvariancea.c">
+ <Filter>Source Files\variance</Filter>
+ </ClCompile>
+ <ClCompile Include="variance\scolumnvariancea.c">
+ <Filter>Source Files\variance</Filter>
+ </ClCompile>
+ <ClCompile Include="variance\srowvariancea.c">
+ <Filter>Source Files\variance</Filter>
+ </ClCompile>
+ <ClCompile Include="variance\svariancea.c">
+ <Filter>Source Files\variance</Filter>
+ </ClCompile>
+ <ClCompile Include="variance\zcolumnvariancea.c">
+ <Filter>Source Files\variance</Filter>
+ </ClCompile>
+ <ClCompile Include="variance\zrowvariancea.c">
+ <Filter>Source Files\variance</Filter>
+ </ClCompile>
+ <ClCompile Include="variance\zvariancea.c">
+ <Filter>Source Files\variance</Filter>
+ </ClCompile>
+ <ClCompile Include="meanf\ccolumnmeanfa.c">
+ <Filter>Source Files\meanf</Filter>
+ </ClCompile>
+ <ClCompile Include="meanf\cmeanfa.c">
+ <Filter>Source Files\meanf</Filter>
+ </ClCompile>
+ <ClCompile Include="meanf\cmeanfcs.c">
+ <Filter>Source Files\meanf</Filter>
+ </ClCompile>
+ <ClCompile Include="meanf\cmeanfsc.c">
+ <Filter>Source Files\meanf</Filter>
+ </ClCompile>
+ <ClCompile Include="meanf\crowmeanfa.c">
+ <Filter>Source Files\meanf</Filter>
+ </ClCompile>
+ <ClCompile Include="meanf\dcolumnmeanfa.c">
+ <Filter>Source Files\meanf</Filter>
+ </ClCompile>
+ <ClCompile Include="meanf\dmeanfa.c">
+ <Filter>Source Files\meanf</Filter>
+ </ClCompile>
+ <ClCompile Include="meanf\drowmeanfa.c">
+ <Filter>Source Files\meanf</Filter>
+ </ClCompile>
+ <ClCompile Include="meanf\scolumnmeanfa.c">
+ <Filter>Source Files\meanf</Filter>
+ </ClCompile>
+ <ClCompile Include="meanf\smeanfa.c">
+ <Filter>Source Files\meanf</Filter>
+ </ClCompile>
+ <ClCompile Include="meanf\srowmeanfa.c">
+ <Filter>Source Files\meanf</Filter>
+ </ClCompile>
+ <ClCompile Include="meanf\zcolumnmeanfa.c">
+ <Filter>Source Files\meanf</Filter>
+ </ClCompile>
+ <ClCompile Include="meanf\zmeanfa.c">
+ <Filter>Source Files\meanf</Filter>
+ </ClCompile>
+ <ClCompile Include="meanf\zmeanfdz.c">
+ <Filter>Source Files\meanf</Filter>
+ </ClCompile>
+ <ClCompile Include="meanf\zmeanfzd.c">
+ <Filter>Source Files\meanf</Filter>
+ </ClCompile>
+ <ClCompile Include="meanf\zrowmeanfa.c">
+ <Filter>Source Files\meanf</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="max\Makefile.am">
+ <Filter>Source Files\max</Filter>
+ </None>
+ <None Include="mean\Makefile.am">
+ <Filter>Source Files\mean</Filter>
+ </None>
+ <None Include="min\Makefile.am">
+ <Filter>Source Files\min</Filter>
+ </None>
+ <None Include="prod\Makefile.am">
+ <Filter>Source Files\prod</Filter>
+ </None>
+ <None Include="sum\Makefile.am">
+ <Filter>Source Files\sum</Filter>
+ </None>
+ <None Include="variance\Makefile.am">
+ <Filter>Source Files\variance</Filter>
+ </None>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="includes\dynlib_statisticsfunctions.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="includes\mean.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="includes\prod.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="includes\statMax.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="includes\statMin.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="includes\sum.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="includes\variance.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/stdevf/Makefile.am b/src/c/statisticsFunctions/stdevf/Makefile.am new file mode 100644 index 0000000..cebe3c9 --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/Makefile.am @@ -0,0 +1,88 @@ +## +## Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +## Copyright (C) 2006-2008 - INRIA - Bruno JOFRET +## +## This file must be used under the terms of the CeCILL. +## This source file is licensed as described in the file COPYING, which +## you should have received as part of this distribution. The terms +## are also available at +## http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt +## +## + +libStdevf_la_CFLAGS = -I $(top_builddir)/src/c/type \ + -I $(top_builddir)/src/c/operations/includes \ + -I $(top_builddir)/src/c/auxiliaryFunctions/includes \ + -I $(top_builddir)/src/c/elementaryFunctions/includes \ + -I ../includes + +instdir = $(top_builddir)/lib + +pkglib_LTLIBRARIES = libStdevf.la + +libStdevf_la_SOURCES = $(HEAD) $(SRC) + +SRC = sstdevfa.c \ + srowstdevfa.c \ + scolumnstdevfa.c \ + dstdevfa.c \ + drowstdevfa.c \ + dcolumnstdevfa.c \ + cstdevfa.c \ + crowstdevfa.c \ + ccolumnstdevfa.c \ + zstdevfa.c \ + zrowstdevfa.c \ + zcolumnstdevfa.c + +HEAD = ../includes/stdevf.h + +#### +# Checking Part +#### + +check_INCLUDES = -I $(top_builddir)/src/c/statisticsFunctions/includes \ + -I $(top_builddir)/src/c/operations/includes \ + -I $(top_builddir)/src/c/auxiliaryFunctions/includes \ + -I $(top_builddir)/src/c/elementaryFunctions/includes \ + -I $(top_builddir)/src/c/type + +check_LDADD = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/fortran/lapack/libscilapack.la \ + $(top_builddir)/src/c/operations/subtraction/libSubtraction.la \ + $(top_builddir)/src/c/statisticsFunctions/stdevf/libStdevf.la \ + $(top_builddir)/src/c/statisticsFunctions/sum/libSum.la \ + $(top_builddir)/src/c/statisticsFunctions/meanf/libMeanf.la \ + $(top_builddir)/src/c/operations/division/libDivision.la \ + $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ + $(top_builddir)/src/c/auxiliaryFunctions/conj/libConj.la \ + $(top_builddir)/src/c/elementaryFunctions/pow/libPow.la \ + $(top_builddir)/src/c/elementaryFunctions/exp/libExp.la \ + $(top_builddir)/src/c/elementaryFunctions/sin/libSin.la \ + $(top_builddir)/src/c/elementaryFunctions/cos/libCos.la \ + $(top_builddir)/src/c/elementaryFunctions/cosh/libCosh.la \ + $(top_builddir)/src/c/elementaryFunctions/log/libLog.la \ + $(top_builddir)/src/c/elementaryFunctions/log1p/libLog1p.la \ + $(top_builddir)/src/c/elementaryFunctions/lnp1m1/libLnp1m1.la \ + $(top_builddir)/src/c/auxiliaryFunctions/pythag/libPythag.la \ + $(top_builddir)/src/c/auxiliaryFunctions/abs/libAbs.la \ + $(top_builddir)/src/c/elementaryFunctions/sinh/libSinh.la \ + $(top_builddir)/src/c/elementaryFunctions/sqrt/libSqrt.la \ + @LIBMATH@ + +check_PROGRAMS = testFloatStdevf testDoubleStdevf + +TESTS = testFloatStdevf testDoubleStdevf + +# +# -*- Stdevf Tests -*- +# +testFloatStdevf_SOURCES = testFloatStdevf.c +testFloatStdevf_CFLAGS = $(check_INCLUDES) +testFloatStdevf_LDADD = $(check_LDADD) + +testDoubleStdevf_SOURCES =testDoubleStdevf.c +testDoubleStdevf_CFLAGS = $(check_INCLUDES) +testDoubleStdevf_LDADD = $(check_LDADD) diff --git a/src/c/statisticsFunctions/stdevf/Makefile.in b/src/c/statisticsFunctions/stdevf/Makefile.in new file mode 100644 index 0000000..c71bfa7 --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/Makefile.in @@ -0,0 +1,875 @@ +# Makefile.in generated by automake 1.11.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +check_PROGRAMS = testFloatStdevf$(EXEEXT) testDoubleStdevf$(EXEEXT) +TESTS = testFloatStdevf$(EXEEXT) testDoubleStdevf$(EXEEXT) +subdir = src/c/statisticsFunctions/stdevf +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/includes/machine.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__installdirs = "$(DESTDIR)$(pkglibdir)" +LTLIBRARIES = $(pkglib_LTLIBRARIES) +libStdevf_la_LIBADD = +am__objects_1 = +am__objects_2 = libStdevf_la-sstdevfa.lo libStdevf_la-srowstdevfa.lo \ + libStdevf_la-scolumnstdevfa.lo libStdevf_la-dstdevfa.lo \ + libStdevf_la-drowstdevfa.lo libStdevf_la-dcolumnstdevfa.lo \ + libStdevf_la-cstdevfa.lo libStdevf_la-crowstdevfa.lo \ + libStdevf_la-ccolumnstdevfa.lo libStdevf_la-zstdevfa.lo \ + libStdevf_la-zrowstdevfa.lo libStdevf_la-zcolumnstdevfa.lo +am_libStdevf_la_OBJECTS = $(am__objects_1) $(am__objects_2) +libStdevf_la_OBJECTS = $(am_libStdevf_la_OBJECTS) +libStdevf_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(libStdevf_la_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +am_testDoubleStdevf_OBJECTS = \ + testDoubleStdevf-testDoubleStdevf.$(OBJEXT) +testDoubleStdevf_OBJECTS = $(am_testDoubleStdevf_OBJECTS) +am__DEPENDENCIES_1 = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/fortran/lapack/libscilapack.la \ + $(top_builddir)/src/c/operations/subtraction/libSubtraction.la \ + $(top_builddir)/src/c/statisticsFunctions/stdevf/libStdevf.la \ + $(top_builddir)/src/c/statisticsFunctions/sum/libSum.la \ + $(top_builddir)/src/c/statisticsFunctions/meanf/libMeanf.la \ + $(top_builddir)/src/c/operations/division/libDivision.la \ + $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ + $(top_builddir)/src/c/auxiliaryFunctions/conj/libConj.la \ + $(top_builddir)/src/c/elementaryFunctions/pow/libPow.la \ + $(top_builddir)/src/c/elementaryFunctions/exp/libExp.la \ + $(top_builddir)/src/c/elementaryFunctions/sin/libSin.la \ + $(top_builddir)/src/c/elementaryFunctions/cos/libCos.la \ + $(top_builddir)/src/c/elementaryFunctions/cosh/libCosh.la \ + $(top_builddir)/src/c/elementaryFunctions/log/libLog.la \ + $(top_builddir)/src/c/elementaryFunctions/log1p/libLog1p.la \ + $(top_builddir)/src/c/elementaryFunctions/lnp1m1/libLnp1m1.la \ + $(top_builddir)/src/c/auxiliaryFunctions/pythag/libPythag.la \ + $(top_builddir)/src/c/auxiliaryFunctions/abs/libAbs.la \ + $(top_builddir)/src/c/elementaryFunctions/sinh/libSinh.la \ + $(top_builddir)/src/c/elementaryFunctions/sqrt/libSqrt.la +testDoubleStdevf_DEPENDENCIES = $(am__DEPENDENCIES_1) +testDoubleStdevf_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testDoubleStdevf_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +am_testFloatStdevf_OBJECTS = \ + testFloatStdevf-testFloatStdevf.$(OBJEXT) +testFloatStdevf_OBJECTS = $(am_testFloatStdevf_OBJECTS) +testFloatStdevf_DEPENDENCIES = $(am__DEPENDENCIES_1) +testFloatStdevf_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testFloatStdevf_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/includes +depcomp = $(SHELL) $(top_srcdir)/config/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +CCLD = $(CC) +LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ + $(LDFLAGS) -o $@ +SOURCES = $(libStdevf_la_SOURCES) $(testDoubleStdevf_SOURCES) \ + $(testFloatStdevf_SOURCES) +DIST_SOURCES = $(libStdevf_la_SOURCES) $(testDoubleStdevf_SOURCES) \ + $(testFloatStdevf_SOURCES) +ETAGS = etags +CTAGS = ctags +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +F77 = @F77@ +FFLAGS = @FFLAGS@ +FGREP = @FGREP@ +GREP = @GREP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBMATH = @LIBMATH@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +ac_ct_F77 = @ac_ct_F77@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +lt_ECHO = @lt_ECHO@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +libStdevf_la_CFLAGS = -I $(top_builddir)/src/c/type \ + -I $(top_builddir)/src/c/operations/includes \ + -I $(top_builddir)/src/c/auxiliaryFunctions/includes \ + -I $(top_builddir)/src/c/elementaryFunctions/includes \ + -I ../includes + +instdir = $(top_builddir)/lib +pkglib_LTLIBRARIES = libStdevf.la +libStdevf_la_SOURCES = $(HEAD) $(SRC) +SRC = sstdevfa.c \ + srowstdevfa.c \ + scolumnstdevfa.c \ + dstdevfa.c \ + drowstdevfa.c \ + dcolumnstdevfa.c \ + cstdevfa.c \ + crowstdevfa.c \ + ccolumnstdevfa.c \ + zstdevfa.c \ + zrowstdevfa.c \ + zcolumnstdevfa.c + +HEAD = ../includes/stdevf.h + +#### +# Checking Part +#### +check_INCLUDES = -I $(top_builddir)/src/c/statisticsFunctions/includes \ + -I $(top_builddir)/src/c/operations/includes \ + -I $(top_builddir)/src/c/auxiliaryFunctions/includes \ + -I $(top_builddir)/src/c/elementaryFunctions/includes \ + -I $(top_builddir)/src/c/type + +check_LDADD = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/fortran/lapack/libscilapack.la \ + $(top_builddir)/src/c/operations/subtraction/libSubtraction.la \ + $(top_builddir)/src/c/statisticsFunctions/stdevf/libStdevf.la \ + $(top_builddir)/src/c/statisticsFunctions/sum/libSum.la \ + $(top_builddir)/src/c/statisticsFunctions/meanf/libMeanf.la \ + $(top_builddir)/src/c/operations/division/libDivision.la \ + $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ + $(top_builddir)/src/c/auxiliaryFunctions/conj/libConj.la \ + $(top_builddir)/src/c/elementaryFunctions/pow/libPow.la \ + $(top_builddir)/src/c/elementaryFunctions/exp/libExp.la \ + $(top_builddir)/src/c/elementaryFunctions/sin/libSin.la \ + $(top_builddir)/src/c/elementaryFunctions/cos/libCos.la \ + $(top_builddir)/src/c/elementaryFunctions/cosh/libCosh.la \ + $(top_builddir)/src/c/elementaryFunctions/log/libLog.la \ + $(top_builddir)/src/c/elementaryFunctions/log1p/libLog1p.la \ + $(top_builddir)/src/c/elementaryFunctions/lnp1m1/libLnp1m1.la \ + $(top_builddir)/src/c/auxiliaryFunctions/pythag/libPythag.la \ + $(top_builddir)/src/c/auxiliaryFunctions/abs/libAbs.la \ + $(top_builddir)/src/c/elementaryFunctions/sinh/libSinh.la \ + $(top_builddir)/src/c/elementaryFunctions/sqrt/libSqrt.la \ + @LIBMATH@ + + +# +# -*- Stdevf Tests -*- +# +testFloatStdevf_SOURCES = testFloatStdevf.c +testFloatStdevf_CFLAGS = $(check_INCLUDES) +testFloatStdevf_LDADD = $(check_LDADD) +testDoubleStdevf_SOURCES = testDoubleStdevf.c +testDoubleStdevf_CFLAGS = $(check_INCLUDES) +testDoubleStdevf_LDADD = $(check_LDADD) +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/c/statisticsFunctions/stdevf/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/c/statisticsFunctions/stdevf/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): +install-pkglibLTLIBRARIES: $(pkglib_LTLIBRARIES) + @$(NORMAL_INSTALL) + test -z "$(pkglibdir)" || $(MKDIR_P) "$(DESTDIR)$(pkglibdir)" + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + list2=; for p in $$list; do \ + if test -f $$p; then \ + list2="$$list2 $$p"; \ + else :; fi; \ + done; \ + test -z "$$list2" || { \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(pkglibdir)'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(pkglibdir)"; \ + } + +uninstall-pkglibLTLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(pkglibdir)/$$f'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(pkglibdir)/$$f"; \ + done + +clean-pkglibLTLIBRARIES: + -test -z "$(pkglib_LTLIBRARIES)" || rm -f $(pkglib_LTLIBRARIES) + @list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done +libStdevf.la: $(libStdevf_la_OBJECTS) $(libStdevf_la_DEPENDENCIES) + $(libStdevf_la_LINK) -rpath $(pkglibdir) $(libStdevf_la_OBJECTS) $(libStdevf_la_LIBADD) $(LIBS) + +clean-checkPROGRAMS: + @list='$(check_PROGRAMS)'; test -n "$$list" || exit 0; \ + echo " rm -f" $$list; \ + rm -f $$list || exit $$?; \ + test -n "$(EXEEXT)" || exit 0; \ + list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f" $$list; \ + rm -f $$list +testDoubleStdevf$(EXEEXT): $(testDoubleStdevf_OBJECTS) $(testDoubleStdevf_DEPENDENCIES) + @rm -f testDoubleStdevf$(EXEEXT) + $(testDoubleStdevf_LINK) $(testDoubleStdevf_OBJECTS) $(testDoubleStdevf_LDADD) $(LIBS) +testFloatStdevf$(EXEEXT): $(testFloatStdevf_OBJECTS) $(testFloatStdevf_DEPENDENCIES) + @rm -f testFloatStdevf$(EXEEXT) + $(testFloatStdevf_LINK) $(testFloatStdevf_OBJECTS) $(testFloatStdevf_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libStdevf_la-ccolumnstdevfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libStdevf_la-crowstdevfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libStdevf_la-cstdevfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libStdevf_la-dcolumnstdevfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libStdevf_la-drowstdevfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libStdevf_la-dstdevfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libStdevf_la-scolumnstdevfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libStdevf_la-srowstdevfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libStdevf_la-sstdevfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libStdevf_la-zcolumnstdevfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libStdevf_la-zrowstdevfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libStdevf_la-zstdevfa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testDoubleStdevf-testDoubleStdevf.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testFloatStdevf-testFloatStdevf.Po@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c $< + +.c.obj: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< + +libStdevf_la-sstdevfa.lo: sstdevfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -MT libStdevf_la-sstdevfa.lo -MD -MP -MF $(DEPDIR)/libStdevf_la-sstdevfa.Tpo -c -o libStdevf_la-sstdevfa.lo `test -f 'sstdevfa.c' || echo '$(srcdir)/'`sstdevfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libStdevf_la-sstdevfa.Tpo $(DEPDIR)/libStdevf_la-sstdevfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='sstdevfa.c' object='libStdevf_la-sstdevfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -c -o libStdevf_la-sstdevfa.lo `test -f 'sstdevfa.c' || echo '$(srcdir)/'`sstdevfa.c + +libStdevf_la-srowstdevfa.lo: srowstdevfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -MT libStdevf_la-srowstdevfa.lo -MD -MP -MF $(DEPDIR)/libStdevf_la-srowstdevfa.Tpo -c -o libStdevf_la-srowstdevfa.lo `test -f 'srowstdevfa.c' || echo '$(srcdir)/'`srowstdevfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libStdevf_la-srowstdevfa.Tpo $(DEPDIR)/libStdevf_la-srowstdevfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='srowstdevfa.c' object='libStdevf_la-srowstdevfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -c -o libStdevf_la-srowstdevfa.lo `test -f 'srowstdevfa.c' || echo '$(srcdir)/'`srowstdevfa.c + +libStdevf_la-scolumnstdevfa.lo: scolumnstdevfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -MT libStdevf_la-scolumnstdevfa.lo -MD -MP -MF $(DEPDIR)/libStdevf_la-scolumnstdevfa.Tpo -c -o libStdevf_la-scolumnstdevfa.lo `test -f 'scolumnstdevfa.c' || echo '$(srcdir)/'`scolumnstdevfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libStdevf_la-scolumnstdevfa.Tpo $(DEPDIR)/libStdevf_la-scolumnstdevfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='scolumnstdevfa.c' object='libStdevf_la-scolumnstdevfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -c -o libStdevf_la-scolumnstdevfa.lo `test -f 'scolumnstdevfa.c' || echo '$(srcdir)/'`scolumnstdevfa.c + +libStdevf_la-dstdevfa.lo: dstdevfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -MT libStdevf_la-dstdevfa.lo -MD -MP -MF $(DEPDIR)/libStdevf_la-dstdevfa.Tpo -c -o libStdevf_la-dstdevfa.lo `test -f 'dstdevfa.c' || echo '$(srcdir)/'`dstdevfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libStdevf_la-dstdevfa.Tpo $(DEPDIR)/libStdevf_la-dstdevfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dstdevfa.c' object='libStdevf_la-dstdevfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -c -o libStdevf_la-dstdevfa.lo `test -f 'dstdevfa.c' || echo '$(srcdir)/'`dstdevfa.c + +libStdevf_la-drowstdevfa.lo: drowstdevfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -MT libStdevf_la-drowstdevfa.lo -MD -MP -MF $(DEPDIR)/libStdevf_la-drowstdevfa.Tpo -c -o libStdevf_la-drowstdevfa.lo `test -f 'drowstdevfa.c' || echo '$(srcdir)/'`drowstdevfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libStdevf_la-drowstdevfa.Tpo $(DEPDIR)/libStdevf_la-drowstdevfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='drowstdevfa.c' object='libStdevf_la-drowstdevfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -c -o libStdevf_la-drowstdevfa.lo `test -f 'drowstdevfa.c' || echo '$(srcdir)/'`drowstdevfa.c + +libStdevf_la-dcolumnstdevfa.lo: dcolumnstdevfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -MT libStdevf_la-dcolumnstdevfa.lo -MD -MP -MF $(DEPDIR)/libStdevf_la-dcolumnstdevfa.Tpo -c -o libStdevf_la-dcolumnstdevfa.lo `test -f 'dcolumnstdevfa.c' || echo '$(srcdir)/'`dcolumnstdevfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libStdevf_la-dcolumnstdevfa.Tpo $(DEPDIR)/libStdevf_la-dcolumnstdevfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dcolumnstdevfa.c' object='libStdevf_la-dcolumnstdevfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -c -o libStdevf_la-dcolumnstdevfa.lo `test -f 'dcolumnstdevfa.c' || echo '$(srcdir)/'`dcolumnstdevfa.c + +libStdevf_la-cstdevfa.lo: cstdevfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -MT libStdevf_la-cstdevfa.lo -MD -MP -MF $(DEPDIR)/libStdevf_la-cstdevfa.Tpo -c -o libStdevf_la-cstdevfa.lo `test -f 'cstdevfa.c' || echo '$(srcdir)/'`cstdevfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libStdevf_la-cstdevfa.Tpo $(DEPDIR)/libStdevf_la-cstdevfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='cstdevfa.c' object='libStdevf_la-cstdevfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -c -o libStdevf_la-cstdevfa.lo `test -f 'cstdevfa.c' || echo '$(srcdir)/'`cstdevfa.c + +libStdevf_la-crowstdevfa.lo: crowstdevfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -MT libStdevf_la-crowstdevfa.lo -MD -MP -MF $(DEPDIR)/libStdevf_la-crowstdevfa.Tpo -c -o libStdevf_la-crowstdevfa.lo `test -f 'crowstdevfa.c' || echo '$(srcdir)/'`crowstdevfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libStdevf_la-crowstdevfa.Tpo $(DEPDIR)/libStdevf_la-crowstdevfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='crowstdevfa.c' object='libStdevf_la-crowstdevfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -c -o libStdevf_la-crowstdevfa.lo `test -f 'crowstdevfa.c' || echo '$(srcdir)/'`crowstdevfa.c + +libStdevf_la-ccolumnstdevfa.lo: ccolumnstdevfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -MT libStdevf_la-ccolumnstdevfa.lo -MD -MP -MF $(DEPDIR)/libStdevf_la-ccolumnstdevfa.Tpo -c -o libStdevf_la-ccolumnstdevfa.lo `test -f 'ccolumnstdevfa.c' || echo '$(srcdir)/'`ccolumnstdevfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libStdevf_la-ccolumnstdevfa.Tpo $(DEPDIR)/libStdevf_la-ccolumnstdevfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='ccolumnstdevfa.c' object='libStdevf_la-ccolumnstdevfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -c -o libStdevf_la-ccolumnstdevfa.lo `test -f 'ccolumnstdevfa.c' || echo '$(srcdir)/'`ccolumnstdevfa.c + +libStdevf_la-zstdevfa.lo: zstdevfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -MT libStdevf_la-zstdevfa.lo -MD -MP -MF $(DEPDIR)/libStdevf_la-zstdevfa.Tpo -c -o libStdevf_la-zstdevfa.lo `test -f 'zstdevfa.c' || echo '$(srcdir)/'`zstdevfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libStdevf_la-zstdevfa.Tpo $(DEPDIR)/libStdevf_la-zstdevfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zstdevfa.c' object='libStdevf_la-zstdevfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -c -o libStdevf_la-zstdevfa.lo `test -f 'zstdevfa.c' || echo '$(srcdir)/'`zstdevfa.c + +libStdevf_la-zrowstdevfa.lo: zrowstdevfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -MT libStdevf_la-zrowstdevfa.lo -MD -MP -MF $(DEPDIR)/libStdevf_la-zrowstdevfa.Tpo -c -o libStdevf_la-zrowstdevfa.lo `test -f 'zrowstdevfa.c' || echo '$(srcdir)/'`zrowstdevfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libStdevf_la-zrowstdevfa.Tpo $(DEPDIR)/libStdevf_la-zrowstdevfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zrowstdevfa.c' object='libStdevf_la-zrowstdevfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -c -o libStdevf_la-zrowstdevfa.lo `test -f 'zrowstdevfa.c' || echo '$(srcdir)/'`zrowstdevfa.c + +libStdevf_la-zcolumnstdevfa.lo: zcolumnstdevfa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -MT libStdevf_la-zcolumnstdevfa.lo -MD -MP -MF $(DEPDIR)/libStdevf_la-zcolumnstdevfa.Tpo -c -o libStdevf_la-zcolumnstdevfa.lo `test -f 'zcolumnstdevfa.c' || echo '$(srcdir)/'`zcolumnstdevfa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libStdevf_la-zcolumnstdevfa.Tpo $(DEPDIR)/libStdevf_la-zcolumnstdevfa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zcolumnstdevfa.c' object='libStdevf_la-zcolumnstdevfa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libStdevf_la_CFLAGS) $(CFLAGS) -c -o libStdevf_la-zcolumnstdevfa.lo `test -f 'zcolumnstdevfa.c' || echo '$(srcdir)/'`zcolumnstdevfa.c + +testDoubleStdevf-testDoubleStdevf.o: testDoubleStdevf.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleStdevf_CFLAGS) $(CFLAGS) -MT testDoubleStdevf-testDoubleStdevf.o -MD -MP -MF $(DEPDIR)/testDoubleStdevf-testDoubleStdevf.Tpo -c -o testDoubleStdevf-testDoubleStdevf.o `test -f 'testDoubleStdevf.c' || echo '$(srcdir)/'`testDoubleStdevf.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleStdevf-testDoubleStdevf.Tpo $(DEPDIR)/testDoubleStdevf-testDoubleStdevf.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleStdevf.c' object='testDoubleStdevf-testDoubleStdevf.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleStdevf_CFLAGS) $(CFLAGS) -c -o testDoubleStdevf-testDoubleStdevf.o `test -f 'testDoubleStdevf.c' || echo '$(srcdir)/'`testDoubleStdevf.c + +testDoubleStdevf-testDoubleStdevf.obj: testDoubleStdevf.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleStdevf_CFLAGS) $(CFLAGS) -MT testDoubleStdevf-testDoubleStdevf.obj -MD -MP -MF $(DEPDIR)/testDoubleStdevf-testDoubleStdevf.Tpo -c -o testDoubleStdevf-testDoubleStdevf.obj `if test -f 'testDoubleStdevf.c'; then $(CYGPATH_W) 'testDoubleStdevf.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleStdevf.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleStdevf-testDoubleStdevf.Tpo $(DEPDIR)/testDoubleStdevf-testDoubleStdevf.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleStdevf.c' object='testDoubleStdevf-testDoubleStdevf.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleStdevf_CFLAGS) $(CFLAGS) -c -o testDoubleStdevf-testDoubleStdevf.obj `if test -f 'testDoubleStdevf.c'; then $(CYGPATH_W) 'testDoubleStdevf.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleStdevf.c'; fi` + +testFloatStdevf-testFloatStdevf.o: testFloatStdevf.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatStdevf_CFLAGS) $(CFLAGS) -MT testFloatStdevf-testFloatStdevf.o -MD -MP -MF $(DEPDIR)/testFloatStdevf-testFloatStdevf.Tpo -c -o testFloatStdevf-testFloatStdevf.o `test -f 'testFloatStdevf.c' || echo '$(srcdir)/'`testFloatStdevf.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatStdevf-testFloatStdevf.Tpo $(DEPDIR)/testFloatStdevf-testFloatStdevf.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatStdevf.c' object='testFloatStdevf-testFloatStdevf.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatStdevf_CFLAGS) $(CFLAGS) -c -o testFloatStdevf-testFloatStdevf.o `test -f 'testFloatStdevf.c' || echo '$(srcdir)/'`testFloatStdevf.c + +testFloatStdevf-testFloatStdevf.obj: testFloatStdevf.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatStdevf_CFLAGS) $(CFLAGS) -MT testFloatStdevf-testFloatStdevf.obj -MD -MP -MF $(DEPDIR)/testFloatStdevf-testFloatStdevf.Tpo -c -o testFloatStdevf-testFloatStdevf.obj `if test -f 'testFloatStdevf.c'; then $(CYGPATH_W) 'testFloatStdevf.c'; else $(CYGPATH_W) '$(srcdir)/testFloatStdevf.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatStdevf-testFloatStdevf.Tpo $(DEPDIR)/testFloatStdevf-testFloatStdevf.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatStdevf.c' object='testFloatStdevf-testFloatStdevf.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatStdevf_CFLAGS) $(CFLAGS) -c -o testFloatStdevf-testFloatStdevf.obj `if test -f 'testFloatStdevf.c'; then $(CYGPATH_W) 'testFloatStdevf.c'; else $(CYGPATH_W) '$(srcdir)/testFloatStdevf.c'; fi` + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + set x; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) + $(MAKE) $(AM_MAKEFLAGS) check-TESTS +check: check-am +all-am: Makefile $(LTLIBRARIES) +installdirs: + for dir in "$(DESTDIR)$(pkglibdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-checkPROGRAMS clean-generic clean-libtool \ + clean-pkglibLTLIBRARIES mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-pkglibLTLIBRARIES + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-pkglibLTLIBRARIES + +.MAKE: check-am install-am install-strip + +.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \ + clean-checkPROGRAMS clean-generic clean-libtool \ + clean-pkglibLTLIBRARIES ctags distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-pkglibLTLIBRARIES install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ + uninstall-am uninstall-pkglibLTLIBRARIES + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/src/c/statisticsFunctions/stdevf/ccolumnstdevfa.c b/src/c/statisticsFunctions/stdevf/ccolumnstdevfa.c new file mode 100644 index 0000000..14d3030 --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/ccolumnstdevfa.c @@ -0,0 +1,58 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + + +#include "stdevf.h" +#include "abs.h" + +void ccolumnstdevfa(floatComplex *in1, int lines, int columns, floatComplex*in2, floatComplex* out){ + int i = 0; + int j = 0; + floatComplex temp = FloatComplex(0.0f,0.0f); + floatComplex accumulate = FloatComplex(0.0f,0.0f); + floatComplex accumulateFre = FloatComplex(0.0f,0.0f); + + ccolumnmeanfa(in1, lines, columns, in2, out ); + + + /*we first multiply each cell of the input matrix by its coefficient*/ + for (j = 0; j < lines; ++j) + { + accumulate = FloatComplex(0.0f,0.0f); + accumulateFre = FloatComplex(0.0f,0.0f); + temp = FloatComplex(0.0f,0.0f); + + for ( i = 0 ; i < columns; ++i ) + { + + temp = cpows ( cdiffs (in1[lines*i + j] ,out[j] ) ,FloatComplex (2.0f, 0.0f ) ); + temp = cmuls( in2[lines*i + j] , temp); + + accumulate = cadds( temp , accumulate); + accumulateFre = cadds (in2[lines*i + j] ,accumulateFre ); + + } + + if (lines <= 1) + { + out[j] = cmuls (FloatComplex(0.0f,0.0f) , accumulate ) ; + } + else + { + if( sabss (creals(accumulate)) <= 3e-6 ) accumulate = FloatComplex(sabss(creals(accumulate)) ,cimags(accumulate)); + if( sabss (cimags(accumulate)) <= 3e-6 ) accumulate = FloatComplex(creals(accumulate) ,sabss(cimags(accumulate))); + accumulate = crdivs (accumulate , cdiffs (accumulateFre ,FloatComplex(1.0f,0.0f)) ); + out[j] =csqrts(accumulate); + } + } + +} diff --git a/src/c/statisticsFunctions/stdevf/crowstdevfa.c b/src/c/statisticsFunctions/stdevf/crowstdevfa.c new file mode 100644 index 0000000..38d8cb2 --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/crowstdevfa.c @@ -0,0 +1,59 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + + +#include "stdevf.h" +#include "meanf.h" +#include "abs.h" + + +void crowstdevfa(floatComplex *in1, int lines, int columns, floatComplex*in2, floatComplex* out){ + int i = 0; + int j = 0; + floatComplex temp = FloatComplex(0.0f,0.0f); + floatComplex accumulate = FloatComplex(0.0f,0.0f); + floatComplex accumulateFre = FloatComplex(0.0f,0.0f); + + crowmeanfa(in1, lines, columns, in2, out ); + + /*we first multiply each cell of the input matrix by its coefficient*/ + for (j = 0; j < columns; ++j) + { + accumulate = FloatComplex(0.0f,0.0f); + accumulateFre =FloatComplex(0.0f,0.0f); + temp = FloatComplex(0.0f,0.0f); + + for ( i = 0 ; i < lines; ++i ) + { + + temp = cpows ( cdiffs (in1[lines*j + i] ,out[j] ) ,FloatComplex (2.0f, 0.0f ) ); + temp = cmuls( in2[lines*j + i] , temp); + + accumulate = cadds( temp , accumulate); + accumulateFre = cadds (in2[lines*j + i] ,accumulateFre ); + + } + + if (lines <= 1) + { + out[j] = cmuls (FloatComplex(0.0f,0.0f) , accumulate ) ; + } + else + { + if( sabss (creals(accumulate)) <= 3e-6 ) accumulate = FloatComplex(sabss(creals(accumulate)) ,cimags(accumulate)); + if( sabss (cimags(accumulate)) <= 3e-6 ) accumulate = FloatComplex(creals(accumulate) ,sabss(cimags(accumulate))); + accumulate = crdivs (accumulate , cdiffs (accumulateFre ,FloatComplex(1.0f,0.0f)) ); + out[j] =csqrts(accumulate); + } + } + +} diff --git a/src/c/statisticsFunctions/stdevf/cstdevfa.c b/src/c/statisticsFunctions/stdevf/cstdevfa.c new file mode 100644 index 0000000..5b1631f --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/cstdevfa.c @@ -0,0 +1,43 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "stdevf.h" + +floatComplex cstdevfa(floatComplex *in1, int lines, int columns, floatComplex* in2) +{ + int i = 0 ; + + floatComplex temp = FloatComplex(0.0f,0.0f); + floatComplex accumulate = FloatComplex(0.0f,0.0f); + floatComplex accumulateFre = FloatComplex(0.0f,0.0f); + floatComplex meanf = cmeanfa (in1 , lines*columns , in2); +/*equivalent to (in1 - meanf(x , in2 )).^2 .*in2 */ + for(i = 0 ; i < lines*columns ; ++i) + { + temp = cpows ( cdiffs (in1[i] , meanf ) ,FloatComplex (2.0f, 0.0f ) ); + temp = cmuls( in2[i] , temp); + + accumulate = cadds( temp , accumulate); + accumulateFre = cadds (in2[i] ,accumulateFre ); + + } + + if (lines <= 1) + { + return cmuls (FloatComplex(0.0f,0.0f) , accumulate ) ; + } + else + { + accumulate = crdivs (accumulate , cdiffs (accumulateFre ,FloatComplex(1.0f,0.0f)) ); + return csqrts(accumulate); + } +} diff --git a/src/c/statisticsFunctions/stdevf/cstdevfcs.c b/src/c/statisticsFunctions/stdevf/cstdevfcs.c new file mode 100644 index 0000000..a3b7239 --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/cstdevfcs.c @@ -0,0 +1,41 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "stdevf.h" + +floatComplex cstdevfcs(floatComplex *in1, int lines, int columns, float* in2) +{ + int i = 0 ; + floatComplex temp = FloatComplex(0.0f,0.0f); + floatComplex accumulate = FloatComplex(0.0f,0.0f); + float accumulateFre = 0.0f ; + floatComplex meanf = cmeanfcs (in1 , lines ,columns , in2); +/*equivalent to (in1 - meanf(x , in2 )).^2 .*in2 */ + for(i = 0 ; i < lines*columns ; ++i) + { + temp = cpows ( cdiffs (in1[i] , meanf ) ,FloatComplex (2.0f, 0.0f ) ); + temp = cmuls( FloatComplex (in2[i],0.0f) , temp); + + accumulate = cadds( temp , accumulate); + accumulateFre += in2[i]; + } + + if (lines <= 1) + { + return cmuls (FloatComplex(0.0f,0.0f) , accumulate ) ; + } + else + { + accumulate = FloatComplex( creals(accumulate ) / (accumulateFre - 1) , cimags(accumulate) / (accumulateFre - 1)); + return csqrts(accumulate); + } +} diff --git a/src/c/statisticsFunctions/stdevf/cstdevfsc.c b/src/c/statisticsFunctions/stdevf/cstdevfsc.c new file mode 100644 index 0000000..01a6e07 --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/cstdevfsc.c @@ -0,0 +1,23 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <stdlib.h> +#include "stdevf.h" +#include "zeros.h" + +floatComplex cstdevfsc(float *in1, int lines, int columns, floatComplex* in2) +{ + float* ZEROS = (float *) malloc((unsigned int)(lines*columns*sizeof(float))); + szerosa(ZEROS,lines,columns); + + return cstdevfa(FloatComplexMatrix(in1,ZEROS,lines*columns), lines , columns , in2); +} diff --git a/src/c/statisticsFunctions/stdevf/dcolumnstdevfa.c b/src/c/statisticsFunctions/stdevf/dcolumnstdevfa.c new file mode 100644 index 0000000..a6220d5 --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/dcolumnstdevfa.c @@ -0,0 +1,69 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + + +#include "stdevf.h" +#include "meanf.h" + + +void dcolumnstdevfa(double *in1, int lines, int columns, double *in2, double* out){ + int i = 0; + int j = 0; + double temp = 0.0; + double accumulate = 0.0; + double accumulateFre = 0.0 ; + + dcolumnmeanfa(in1, lines, columns, in2, out ); + + + /*we first multiply each cell of the input matrix by its coefficient*/ + for (j = 0; j < lines; ++j) + { + accumulate = 0.0; + accumulateFre= 0.0; + temp = 0.0; + + for ( i = 0 ; i < columns; ++i ) + { + temp = dpows ( (in1[lines*i + j] - out[j] ) ,2 ); + temp *= in2[lines*i + j]; + + accumulate += temp ; + accumulateFre += in2[lines*i + j]; + } + + if (lines <= 1) + { + out[j] = 0.0 * accumulate ; + } + else + { + out[j] = dsqrts(accumulate / (accumulateFre - 1)); + } + } + +} +/* + + ! +! elseif o == 'c' | o == 2 then ! +! // here ones is used becaue we work on matrix , but in C we work on element so we only need iteratation ! +! y = x - meanf(x, fre, o) * ones(1, size(x, o)) ! +! ! + +! if size(x, 1) == 1 then ! ! +! s = 0 * sum(y.^2 .* fre, o) ! +! else ! ! +! s = sqrt(sum(y.^2 .* fre, o) ./ (sum(fre, o) - 1)); ! + ! +*/ + diff --git a/src/c/statisticsFunctions/stdevf/drowstdevfa.c b/src/c/statisticsFunctions/stdevf/drowstdevfa.c new file mode 100644 index 0000000..c861f06 --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/drowstdevfa.c @@ -0,0 +1,53 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + + +#include "stdevf.h" + + +void drowstdevfa(double *in1, int lines, int columns, double *in2, double* out){ + int i = 0; + int j = 0; + double temp = 0.0f; + double accumulate = 0.0f; + double accumulateFre = 0.0f ; + + drowmeanfa(in1, lines, columns, in2, out ); + + + /*we first multiply each cell of the input matrix by its coefficient*/ + for (j = 0; j < columns; ++j) + { + accumulate = 0.0f; + accumulateFre= 0.0f; + temp = 0.0f; + + for ( i = 0 ; i < lines; ++i ) + { + temp = dpows ( (in1[lines*j + i] - out[j] ) ,2 ); + temp *= in2[lines*j + i]; + + accumulate += temp ; + accumulateFre += in2[lines*j + i]; + } + + if (lines <= 1) + { + out[j] = 0.0 * accumulate ; + } + else + { + out[j] = dsqrts(accumulate / (accumulateFre - 1)); + } + } + +} diff --git a/src/c/statisticsFunctions/stdevf/dstdevfa.c b/src/c/statisticsFunctions/stdevf/dstdevfa.c new file mode 100644 index 0000000..4194435 --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/dstdevfa.c @@ -0,0 +1,43 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "stdevf.h" + +double dstdevfa(double *in1, int lines, int columns, double* in2) +{ + int i = 0 ; + double meanf = dmeanfa (in1 , lines*columns , in2); + double temp = 0.0; + double accumulate = 0.0 ; + double accumulateFre = 0.0 ; + /*printf ("\nmeanf %lf \n" ,meanf);*/ + + /*equivalent to (in1 - meanf(x , in2 )).^2 .*in2 */ + for(i = 0 ; i < lines*columns; ++i) + { + + temp = dpows ( (in1[i] - meanf ) ,2 ); + temp *= in2[i]; + + accumulate += temp ; + accumulateFre += in2[i]; + } + + if (lines <= 1) + { + return 0.0 * accumulate ; + } + else + { + return dsqrts(accumulate) / (accumulateFre - 1); + } +} diff --git a/src/c/statisticsFunctions/stdevf/scolumnstdevfa.c b/src/c/statisticsFunctions/stdevf/scolumnstdevfa.c new file mode 100644 index 0000000..f3552ea --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/scolumnstdevfa.c @@ -0,0 +1,69 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + + +#include "stdevf.h" +#include "meanf.h" + + +void scolumnstdevfa(float *in1, int lines, int columns, float *in2, float* out){ + int i = 0; + int j = 0; + float temp = 0.0f; + float accumulate = 0.0f; + float accumulateFre = 0.0f ; + + scolumnmeanfa(in1, lines, columns, in2, out ); + + + /*we first multiply each cell of the input matrix by its coefficient*/ + for (j = 0; j < lines; ++j) + { + accumulate = 0.0f; + accumulateFre= 0.0f; + temp = 0.0f; + + for ( i = 0 ; i < columns; ++i ) + { + temp = spows ( (in1[lines*i + j] - out[j] ) ,2 ); + temp *= in2[lines*i + j]; + + accumulate += temp ; + accumulateFre += in2[lines*i + j]; + } + + if (lines <= 1) + { + out[j] = 0.0f * accumulate ; + } + else + { + out[j] = ssqrts(accumulate / (accumulateFre - 1)); + } + } + +} +/* + + ! +! elseif o == 'c' | o == 2 then ! +! // here ones is used becaue we work on matrix , but in C we work on element so we only need iteratation ! +! y = x - meanf(x, fre, o) * ones(1, size(x, o)) ! +! ! + +! if size(x, 1) == 1 then ! ! +! s = 0 * sum(y.^2 .* fre, o) ! +! else ! ! +! s = sqrt(sum(y.^2 .* fre, o) ./ (sum(fre, o) - 1)); ! + ! +*/ + diff --git a/src/c/statisticsFunctions/stdevf/srowstdevfa.c b/src/c/statisticsFunctions/stdevf/srowstdevfa.c new file mode 100644 index 0000000..337b80e --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/srowstdevfa.c @@ -0,0 +1,53 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + + +#include "stdevf.h" +#include "meanf.h" + + +void srowstdevfa(float *in1, int lines, int columns, float *in2, float* out){ + int i = 0; + int j = 0; + float temp = 0.0f; + float accumulate = 0.0f; + float accumulateFre = 0.0f ; + + srowmeanfa(in1, lines, columns, in2, out ); + + /*we first multiply each cell of the input matrix by its coefficient*/ + for (j = 0; j < columns; ++j) + { + accumulate = 0.0f; + accumulateFre= 0.0f; + temp = 0.0f; + + for ( i = 0 ; i < lines; ++i ) + { + temp = spows ( (in1[lines*j + i] - out[j] ) ,2 ); + temp *= in2[lines*j + i]; + + accumulate += temp ; + accumulateFre += in2[lines*j + i]; + } + + if (lines <= 1) + { + out[j] = 0.0f * accumulate ; + } + else + { + out[j] = ssqrts(accumulate/ (accumulateFre - 1)); + } + } + +} diff --git a/src/c/statisticsFunctions/stdevf/sstdevfa.c b/src/c/statisticsFunctions/stdevf/sstdevfa.c new file mode 100644 index 0000000..5ccdab8 --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/sstdevfa.c @@ -0,0 +1,68 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "stdevf.h" + +float sstdevfa(float *in1, int lines, int columns, float* in2) +{ + int i = 0 ; + float meanf = smeanfa (in1 , lines*columns , in2); + float temp = 0.0f; + float accumulate = 0.0f ; + float accumulateFre = 0.0f ; + + + /*equivalent to (in1 - meanf(x , in2 )).^2 .*in2 */ + for(i = 0 ; i < lines*columns; ++i) + { + + temp = spows ( (in1[i] - meanf ) ,2 ); + temp *= in2[i]; + + accumulate += temp ; + accumulateFre += in2[i]; + } + + if (lines <= 1) + { + return 0.0f * accumulate ; + } + else + { + return ssqrts( accumulate/(accumulateFre - 1) ); + } +} +/* + +! o = '*' ! + +! //remove the median ! +! ! +! if o == '*' then ! +! ! +! y = x - meanf(x, fre) ! +! ! +! elseif o == 'r' | o == 1 then ! +! ! +! y = x - ones(size(x, o), 1) * meanf(x, fre, o) ! +! ! +! elseif o == 'c' | o == 2 then ! +! ! +! y = x - meanf(x, fre, o) * ones(1, size(x, o)) ! +! ! + +! if size(x, 1) == 1 then ! ! +! s = 0 * sum(y.^2 .* fre, o) ! +! else ! ! +! s = sqrt( sum(y.^2 .* fre, o) ./ (sum(fre, o) - 1) ); ! + ! +*/ diff --git a/src/c/statisticsFunctions/stdevf/testDoubleStdevf.c b/src/c/statisticsFunctions/stdevf/testDoubleStdevf.c new file mode 100644 index 0000000..3b0b61a --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/testDoubleStdevf.c @@ -0,0 +1,509 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <assert.h> +#include <stdio.h> +#include <math.h> +#include "stdevf.h" + + +/* #define LOCAL_DEBUG */ + +#define ERROR(x) printf("diff = %e\n", x) + +static int dstdevfsTest(void) { + double value1 = 3.0; + double value2 = 1.123456789f; + double coef1 = 56.0 ; + double coef2 = 2.0 ; + + printf("\n>>>> stdevf Double Scalar Test\n"); + printf("result : %e " ,dstdevfs(value1,coef1)) ; + printf("result : %e " ,dstdevfs(value2,coef)) ; + assert( ( dstdevfs(value1,coef1) ) == 0.0 ); + assert( ( dstdevfs(value2,coef2) ) == 0.0 ); + + value1 = 3.0; + value2 = 1.123456789f; + coef1 = 56.0 ; + coef2 = 2.0 ; + + + return 0; +} + +static int dstdevfaTest(void) { + double table1[3] = {3.0, 6.0, 9.0}; + double coef1[3] = {10.0, 2.0, 6.0}; + + double table2[5] = {3.186784563, + 4.186784563, + 5.186784563, + 6.186784563, + 7.186784563}; + + double coef2[5] = {3.0, + 4.0, + 5.0, + 6.0, + 7.0}; + + double table3[10] = {3.0, 6.0, 9.0,10.0, 5.0, + 6.0,18.0, 7.0,14.0, 2.0}; + double coef3 [10] = {3.0, 8.0,14.0,13.0, 2.0, + 5.0, 8.0, 2.0, 6.0, 8.0}; + + double result_2_5 = dstdevfa(table3,2, 5, coef3); + + printf("\n>>>> stdevf Double Array Test\n"); + printf("\nresult : %e " ,dstdevfa(table1,1, 3, coef1)) ; + printf("\nresult : %e " ,dstdevfa(table2,1, 5, coef2)) ; + printf("\nresult : %e " ,result_2_5) ; + + assert(dstdevfa(table1,1, 3, coef1) == 0.0); + assert(dstdevfa(table1,1, 3, coef1) == 0.0); + assert( ( fabs(result_2_5 ) - ( 4.6440201 ) ) / fabs ( result_2_5 ) < 1e-6 ); + return 0; +} + + +static int dcolumnstdevfaTest(void) { + + double table1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double coef1[9] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0}; + + double columnStdevfedTable1_3_3[3] = {0}; + double columnStdevfedTable1_1_9[1] = {0}; + + + printf("\n>>>> Column stdevf Double Array Test\n"); + +/**/ + + dcolumnstdevfa(table1, 3, 3, coef1 ,columnStdevfedTable1_3_3); + + printf("\nresult1 : %e " ,columnStdevfedTable1_3_3[0]) ; + printf("\nresult2 : %e " ,columnStdevfedTable1_3_3[1]) ; + printf("\nresult3 : %e " ,columnStdevfedTable1_3_3[2]) ; + + assert( fabs(columnStdevfedTable1_3_3[0] - 0.8268689) / fabs ( columnStdevfedTable1_3_3[0] ) < 1e-6 ); + assert( fabs(columnStdevfedTable1_3_3[1] - 0.8164966) / fabs ( columnStdevfedTable1_3_3[1] ) < 1e-6 ); + assert( fabs(columnStdevfedTable1_3_3[2] - 0.8323524 ) / fabs ( columnStdevfedTable1_3_3[2] ) < 1e-6 ); + + + + dcolumnstdevfa(table1, 1, 9, coef1 ,columnStdevfedTable1_1_9); + printf("\nresult_1_9: %e\n " ,columnStdevfedTable1_1_9[0]) ; + assert( columnStdevfedTable1_1_9[0] == 0.0); + + + return 0; +} + + +static int drowstdevfaTest(void) { + int i = 0; + double table1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double coef1[9] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0}; + + double table2[10] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0, 10.0}; + double coef2[10] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0, 19.0}; + + + + double rowStdevfedTable1_3_3[3] = {0}; + double rowStdevfedTable1_1_9[9] = {0}; + double rowStdevfedTable2_2_5[5] = {0}; + printf("\n>>>> Row Mean Double Array Test\n"); + + + drowstdevfa(table1, 3, 3, coef1 , rowStdevfedTable1_3_3); + for ( i = 0 ; i < 3 ; ++i) { + printf("rowStdevfedTable1_3_3[%d] = %e\n", i, rowStdevfedTable1_3_3[i]); + } + assert( fabs(rowStdevfedTable1_3_3[0] - 2.8394542 ) / fabs ( rowStdevfedTable1_3_3[0] ) < 1e-6 ); + assert( fabs(rowStdevfedTable1_3_3[1] - 2.8003759) / fabs ( rowStdevfedTable1_3_3[1] ) < 1e-6 ); + assert( fabs(rowStdevfedTable1_3_3[2] - 2.7669196) / fabs ( rowStdevfedTable1_3_3[2] ) < 1e-6 ); + +/**/ + drowstdevfa(table1, 1, 9, coef1, rowStdevfedTable1_1_9); + for ( i = 0 ; i < 9 ; ++i) { + printf("rowStdevfedTable1_1_9[%d] = %e\n", i, rowStdevfedTable1_1_9[i]); + assert(rowStdevfedTable1_1_9[i] == 0.0); + } + + +/**/ + /**/ + drowstdevfa(table2 , 2 , 5 , coef2 , rowStdevfedTable2_2_5); + for (i = 0 ; i < 5 ; ++i ) + { + printf("rowStdevfedTable_2_5[%d] = %e \n", i, rowStdevfedTable2_2_5[i]); + } + assert( fabs(rowStdevfedTable2_2_5[0] - 0.9045340 ) / fabs ( rowStdevfedTable2_2_5[0] ) < 1e-6 ); + assert( fabs(rowStdevfedTable2_2_5[1] - 2.3935678 ) / fabs ( rowStdevfedTable2_2_5[1] ) < 1e-6 ); + assert( fabs(rowStdevfedTable2_2_5[2] - 1.3887301 ) / fabs ( rowStdevfedTable2_2_5[2] ) < 1e-6 ); + assert( fabs(rowStdevfedTable2_2_5[3] - 1.2421180 ) / fabs ( rowStdevfedTable2_2_5[3] ) < 1e-6 ); + assert( fabs(rowStdevfedTable2_2_5[4] - 0.4523443 ) / fabs ( rowStdevfedTable2_2_5[4] ) < 1e-6 ); + return 0; +} + + +static int zstdevfsTest(void) { + doubleComplex value1; + doubleComplex coef1 ; + doubleComplex value2; + doubleComplex coef2 ; + + value1 = DoubleComplex(3.0, 3.0); + coef1 = DoubleComplex(3.0, 0.0); + value2 = DoubleComplex(1.123456789f, 1.123456789f); + coef2 = DoubleComplex(9.0, 0.0); + + printf("\n>>>> Mean Double Complex Scalar Test\n"); + assert( zreals(zstdevfs(value1,coef1)) == 0.0 ); + assert( zimags(zstdevfs(value1,coef1)) == 0.0 ); + assert( zreals(zstdevfs(value2,coef2)) == 0.0 ); + assert( zimags(zstdevfs(value2,coef2)) == 0.0 ); + + return 0; +} + + + +static int zstdevfaTest(void) { + + double tableR1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double tableI1[9] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0}; + double coefR1[9] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0}; + double coefI1[9] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0}; + + + double tableR2[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double tableI2[9] = {0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0}; + double coefR2[9] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0}; + double coefI2[9] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0}; + + + double tableR3[10] = {3.0, 6.0, 9.0,10.0, 5.0, + 6.0,18.0, 7.0,14.0, 2.0}; + double tableI3[10] = {3.0,12.0,25.0, 1.0, 2.0, + 5.0,18.0, 7.0, 4.0, 1.0}; + + + double coefR3 [10] = {3.0, 8.0,14.0,13.0, 2.0, + 5.0, 8.0, 2.0, 6.0, 8.0}; + double coefI3 [10] = {0.0, 0.0, 0.0, 0.0, 0.0, + 0.0, 0.0, 0.0, 0.0, 0.0}; + + + doubleComplex* table1 = DoubleComplexMatrix (tableR1, tableI1, 9); + doubleComplex* coef1 = DoubleComplexMatrix (coefR1, coefI1, 9); + + doubleComplex* table2 = DoubleComplexMatrix (tableR2, tableI2, 9); + doubleComplex* coef2 = DoubleComplexMatrix (coefR2, coefI2, 9); + + doubleComplex* table3 = DoubleComplexMatrix (tableR3, tableI3, 10); + doubleComplex* coef3 = DoubleComplexMatrix (coefR3, coefI3, 10); + + doubleComplex result =DoubleComplex(0.0 , 0.0); + + printf("\n>>>> Mean Double Complex Array Test\n"); + result = zstdevfa(table1,1, 9, coef1); + printf("\nresult_1_9 : %e \t+ %e i " ,zreals(result) ,zimags(result)) ; + assert( zreals(result) == 0.0 ); + assert( zimags(result) == 0.0 ); + + result = zstdevfa(table2,1, 9, coef2); + printf("\nresult2_1_9 : %e \t+ %e i " ,zreals(result) ,zimags(result)) ; + assert( zreals(result) == 0.0 ); + assert( zimags(result) == 0.0 ); + + + result = zstdevfa(table3,2, 5, coef3); + printf("\nresult_2_5 : %e \t+ %e i " ,zreals(result) ,zimags(result)) ; + assert( fabs(zreals(result) - 1.7749350 ) / fabs ( zimags(result) ) < 1e-6 ); + assert( fabs(zimags(result) - 8.3811287) / fabs ( zreals(result) ) < 1e-6 ); + + return 0; +} + + +static int zrowstdevfaTest(void) { + + int i = 0 ; + + double tableR1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double tableI1[9] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0}; + double coefR1[9] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0}; + double coefI1[9] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0}; + + double tableR2[10] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0, 10.0}; + double tableI2[10] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0, 15.0}; + double coefR2[10] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0, 19.0}; + double coefI2[10] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}; + + doubleComplex* table1 = DoubleComplexMatrix (tableR1, tableI1, 9); + doubleComplex* coef1 = DoubleComplexMatrix (coefR1, coefI1, 9); + + doubleComplex* table2 = DoubleComplexMatrix (tableR2, tableI2, 10); + doubleComplex* coef2 = DoubleComplexMatrix (coefR2, coefI2, 10); + + doubleComplex rowStdevfedTable1_3_3[3]; + doubleComplex rowStdevfedTable2_2_5[5]; + /*test when the matrix is only imaginary*/ + double tableR3[10] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}; + double tableI3[10] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0, 15.0}; + double coefR3[10] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0, 19.0}; + double coefI3[10] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}; + + + doubleComplex* table3 = DoubleComplexMatrix (tableR3, tableI3, 10); + doubleComplex* coef3 = DoubleComplexMatrix (coefR3, coefI3, 10); + + doubleComplex rowStdevfedTable3_2_5[5]; + /**/ + /*test when the matrix is only real and the coef matrix is only imaginary*/ + double tableR4[10] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0, 10.0}; + double tableI4[10] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0 , 0.0}; + double coefR4[10] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0 , 0.0}; + double coefI4[10] ={10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0, 19.0}; + + + + + doubleComplex* table4 = DoubleComplexMatrix (tableR4, tableI4, 10); + doubleComplex* coef4 = DoubleComplexMatrix (coefR4, coefI4, 10); + + doubleComplex rowStdevfedTable4_2_5[5]; + /**/ + + + printf("\n>>>> Row stdevf Double Complex Array Test\n"); + + rowStdevfedTable1_3_3[0] = DoubleComplex(0.0, 0.0); + rowStdevfedTable1_3_3[1] = DoubleComplex(0.0, 0.0); + rowStdevfedTable1_3_3[2] = DoubleComplex(0.0, 0.0); + + rowStdevfedTable2_2_5[0] = DoubleComplex(0.0, 0.0); + rowStdevfedTable2_2_5[1] = DoubleComplex(0.0, 0.0); + rowStdevfedTable2_2_5[2] = DoubleComplex(0.0, 0.0); + rowStdevfedTable2_2_5[3] = DoubleComplex(0.0, 0.0); + rowStdevfedTable2_2_5[4] = DoubleComplex(0.0, 0.0); + + rowStdevfedTable3_2_5[0] = DoubleComplex(0.0, 0.0); + rowStdevfedTable3_2_5[1] = DoubleComplex(0.0, 0.0); + rowStdevfedTable3_2_5[2] = DoubleComplex(0.0, 0.0); + rowStdevfedTable3_2_5[3] = DoubleComplex(0.0, 0.0); + rowStdevfedTable3_2_5[4] = DoubleComplex(0.0, 0.0); + + + rowStdevfedTable4_2_5[0] = DoubleComplex(0.0, 0.0); + rowStdevfedTable4_2_5[1] = DoubleComplex(0.0, 0.0); + rowStdevfedTable4_2_5[2] = DoubleComplex(0.0, 0.0); + rowStdevfedTable4_2_5[3] = DoubleComplex(0.0, 0.0); + rowStdevfedTable4_2_5[4] = DoubleComplex(0.0, 0.0); + + + zrowstdevfa(table1 , 3 , 3 , coef1 , rowStdevfedTable1_3_3); + + for (i = 0 ; i < 3 ; ++i ) + { + printf("rowStdevfedTable_3_3[%d] = %e + %ei\n", i, zreals(rowStdevfedTable1_3_3[i]), zimags(rowStdevfedTable1_3_3[i])); + } + assert( fabs(zreals(rowStdevfedTable1_3_3[0]) - 2.8394542 ) / fabs ( zreals(rowStdevfedTable1_3_3[0]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable1_3_3[0]) - 0.9464847) / fabs ( zimags(rowStdevfedTable1_3_3[0]) ) < 1e-6 ); + + assert( fabs(zreals(rowStdevfedTable1_3_3[1]) - 2.8003759) / fabs ( zreals(rowStdevfedTable1_3_3[1]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable1_3_3[1]) - 0.9334586) / fabs ( zimags(rowStdevfedTable1_3_3[1]) ) < 1e-6 ); + + assert( fabs(zreals(rowStdevfedTable1_3_3[2]) - 2.7669196) / fabs ( zreals(rowStdevfedTable1_3_3[2]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable1_3_3[2]) - 0.9223065) / fabs ( zimags(rowStdevfedTable1_3_3[2]) ) < 1e-6 ); +/**/ + zrowstdevfa(table2 , 2 , 5 , coef2 , rowStdevfedTable2_2_5); + for (i = 0 ; i < 5 ; ++i ) + { + printf("rowStdevfedTable_2_5[%d] = %e + %ei\n", i, zreals(rowStdevfedTable2_2_5[i]), zimags(rowStdevfedTable2_2_5[i])); + } + assert( fabs(zreals(rowStdevfedTable2_2_5[0]) - 0.9045340 ) / fabs ( zreals(rowStdevfedTable2_2_5[0]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable2_2_5[0]) - 0.3015113 ) / fabs ( zimags(rowStdevfedTable2_2_5[0]) ) < 1e-6 ); + + assert( fabs(zreals(rowStdevfedTable2_2_5[1]) - 2.3935678 ) / fabs ( zreals(rowStdevfedTable2_2_5[1]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable2_2_5[1]) + 0.4787136) / fabs ( zimags(rowStdevfedTable2_2_5[1]) ) < 1e-6 ); + + assert( fabs(zreals(rowStdevfedTable2_2_5[2]) - 1.3887301 ) / fabs ( zreals(rowStdevfedTable2_2_5[2]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable2_2_5[2]) - 0.4629100 ) / fabs ( zimags(rowStdevfedTable2_2_5[2]) ) < 1e-6 ); + + assert( fabs(zreals(rowStdevfedTable2_2_5[3]) - 1.2421180 ) / fabs ( zreals(rowStdevfedTable2_2_5[3]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable2_2_5[3]) - 0.4140393 ) / fabs ( zimags(rowStdevfedTable2_2_5[3]) ) < 1e-6 ); + + assert( fabs(zreals(rowStdevfedTable2_2_5[4]) - 0.4523443 ) / fabs ( zreals(rowStdevfedTable2_2_5[4]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable2_2_5[4]) - 2.7140659) / fabs ( zimags(rowStdevfedTable2_2_5[4]) ) < 1e-6 ); +/**/ + zrowstdevfa(table3, 2 , 5 , coef3 , rowStdevfedTable3_2_5); + for (i = 0 ; i < 5 ; ++i ) + { + printf("rowStdevfedTable3_2_5[%d] = %e + %ei\n", i, zreals(rowStdevfedTable3_2_5[i]), zimags(rowStdevfedTable3_2_5[i])); + } + + assert( fabs(zimags(rowStdevfedTable3_2_5[0]) - 0.3015113 ) / fabs (zimags(rowStdevfedTable3_2_5[0]) ) < 1e-6 ); + + + assert( fabs(zimags(rowStdevfedTable3_2_5[1]) - 0.4787136) / fabs ( zimags(rowStdevfedTable3_2_5[1]) ) < 1e-6 ); + + + assert( fabs(zimags(rowStdevfedTable3_2_5[2]) - 0.4629100 ) / fabs (zimags(rowStdevfedTable3_2_5[2]) ) < 1e-6 ); + + + assert( fabs(zimags(rowStdevfedTable3_2_5[3]) - 0.4140393 ) / fabs ( zimags(rowStdevfedTable3_2_5[3]) ) < 1e-6 ); + + + assert( fabs(zimags(rowStdevfedTable3_2_5[4]) - 2.7140659) / fabs ( zimags(rowStdevfedTable3_2_5[4]) ) < 1e-6 ); + +/**/ + zrowstdevfa(table4 , 2 , 5 , coef4 , rowStdevfedTable4_2_5); + for (i = 0 ; i < 5 ; ++i ) + { + printf("rowStdevfedTable4_2_5[%d] = %e + %ei\n", i, zreals(rowStdevfedTable4_2_5[i]), zimags(rowStdevfedTable4_2_5[i])); + } + assert( fabs(zreals(rowStdevfedTable4_2_5[0]) - 0.8597825 ) / fabs ( zreals(rowStdevfedTable4_2_5[0]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable4_2_5[0]) + 0.0390006 ) / fabs ( zimags(rowStdevfedTable4_2_5[0]) ) < 1e-6 ); + + assert( fabs(zreals(rowStdevfedTable4_2_5[1]) - 2.3141768 ) / fabs ( zreals(rowStdevfedTable4_2_5[1]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable4_2_5[1]) + 0.0722475) / fabs ( zimags(rowStdevfedTable4_2_5[1]) ) < 1e-6 ); + + assert( fabs(zreals(rowStdevfedTable4_2_5[2]) - 1.2915122 ) / fabs ( zreals(rowStdevfedTable4_2_5[2]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable4_2_5[2]) + 0.0804066 ) / fabs ( zimags(rowStdevfedTable4_2_5[2]) ) < 1e-6 ); + + assert( fabs(zreals(rowStdevfedTable4_2_5[3]) - 1.1980065 ) / fabs ( zreals(rowStdevfedTable4_2_5[3]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable4_2_5[3]) + 0.0398893 ) / fabs ( zimags(rowStdevfedTable4_2_5[3]) ) < 1e-6 ); + + assert( fabs(zreals(rowStdevfedTable4_2_5[4]) - 0.4433143 ) / fabs ( zreals(rowStdevfedTable4_2_5[4]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable4_2_5[4]) + 0.00852212) / fabs ( zimags(rowStdevfedTable4_2_5[4]) ) < 1e-6 ); + + return 0; +} + + + + +static int zcolumnstdevfaTest(void) { + + int i = 0 ; + + double tableR1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double tableI1[9] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0}; + double coefR1[9] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0}; + double coefI1[9] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0}; + + double tableR2[10] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0, 10.0}; + double tableI2[10] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0, 15.0}; + double coefR2[10] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0, 19.0}; + double coefI2[10] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}; + + double tableR3[6] = {4.0, 5.0, 6.0, 7.0, 8.0, 9.0 }; + double tableI3[6] = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0 }; + + double coefR3[6] = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0}; + double coefI3[6] = {1.0, 2.0, 3.0, 4.0, 5.0, 6.0}; + + doubleComplex* table1 = DoubleComplexMatrix (tableR1, tableI1, 9); + doubleComplex* coef1 = DoubleComplexMatrix (coefR1, coefI1, 9); + + doubleComplex* table2 = DoubleComplexMatrix (tableR2, tableI2, 10); + doubleComplex* coef2 = DoubleComplexMatrix (coefR2, coefI2, 10); + + doubleComplex* table3 = DoubleComplexMatrix (tableR3, tableI3, 10); + doubleComplex* coef3 = DoubleComplexMatrix (coefR3, coefI3, 10); + + doubleComplex rowStdevfedTable1_3_3[3]; + doubleComplex rowStdevfedTable2_2_5[2]; + doubleComplex rowStdevfedTable3_3_2[3]; + + rowStdevfedTable1_3_3[0] = DoubleComplex(0.0, 0.0); + rowStdevfedTable1_3_3[1] = DoubleComplex(0.0, 0.0); + rowStdevfedTable1_3_3[2] = DoubleComplex(0.0, 0.0); + + rowStdevfedTable2_2_5[0] = DoubleComplex(0.0, 0.0); + rowStdevfedTable2_2_5[1] = DoubleComplex(0.0, 0.0); + + rowStdevfedTable3_3_2[0] = DoubleComplex(0.0, 0.0); + rowStdevfedTable3_3_2[1] = DoubleComplex(0.0, 0.0); + rowStdevfedTable3_3_2[2] = DoubleComplex(0.0, 0.0); + + + printf("\n>>>> Column stdevf Double Complex Array Test\n"); + + + + zcolumnstdevfa(table1 , 3 , 3 , coef1 , rowStdevfedTable1_3_3); + + for (i = 0 ; i < 3 ; ++i ) + { + printf("columnStdevfedTable_3_3[%d] = %e + %ei\n", i, zreals(rowStdevfedTable1_3_3[i]), zimags(rowStdevfedTable1_3_3[i])); + } + assert( fabs(zreals(rowStdevfedTable1_3_3[0]) - 0.8268689) / fabs ( zimags(rowStdevfedTable1_3_3[0]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable1_3_3[0]) - 2.4806066) / fabs ( zreals(rowStdevfedTable1_3_3[0]) ) < 1e-6 ); + + assert( fabs(zreals(rowStdevfedTable1_3_3[1]) - 0.8164966) / fabs ( zimags(rowStdevfedTable1_3_3[1]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable1_3_3[1]) - 2.4494897) / fabs ( zreals(rowStdevfedTable1_3_3[1]) ) < 1e-6 ); + + assert( fabs(zreals(rowStdevfedTable1_3_3[2]) - 0.8323524 ) / fabs ( zimags(rowStdevfedTable1_3_3[2]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable1_3_3[2]) - 2.4970571 ) / fabs ( zreals(rowStdevfedTable1_3_3[2]) ) < 1e-6 ); +/**/ + zcolumnstdevfa(table2 , 2 , 5 , coef2 , rowStdevfedTable2_2_5); + for (i = 0 ; i < 2 ; ++i ) + { + printf("columnStdevfedTable_2_5[%d] = %e + %ei\n", i, zreals(rowStdevfedTable2_2_5[i]), zimags(rowStdevfedTable2_2_5[i])); + } + assert( fabs(zreals(rowStdevfedTable2_2_5[0]) - 2.3683811 ) / fabs ( zimags(rowStdevfedTable2_2_5[0]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable2_2_5[0]) - 2.4784193 ) / fabs ( zreals(rowStdevfedTable2_2_5[0]) ) < 1e-6 ); + + assert( fabs(zreals(rowStdevfedTable2_2_5[1]) - 3.1890422 ) / fabs ( zimags(rowStdevfedTable2_2_5[1]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable2_2_5[1]) - 4.9966774 ) / fabs ( zreals(rowStdevfedTable2_2_5[1]) ) < 1e-6 ); + + zcolumnstdevfa(table3 , 3 , 2 , coef3 , rowStdevfedTable3_3_2); + for (i = 0 ; i < 3 ; ++i ) + { + printf("columnStdevfedTable3_3_2[%d] = %e + %ei\n", i, zreals(rowStdevfedTable3_3_2[i]), zimags(rowStdevfedTable3_3_2[i])); + } + assert( fabs(zreals(rowStdevfedTable3_3_2[0]) - 1.1825083) / fabs ( zimags(rowStdevfedTable3_3_2[0]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable3_3_2[0]) + 0.1170914) / fabs ( zreals(rowStdevfedTable3_3_2[0]) ) < 1e-6 ); + + assert( fabs(zreals(rowStdevfedTable3_3_2[1]) - 1.3450417) / fabs ( zimags(rowStdevfedTable3_3_2[1]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable3_3_2[1]) + 0.0955892) / fabs ( zreals(rowStdevfedTable3_3_2[1]) ) < 1e-6 ); + + assert( fabs(zreals(rowStdevfedTable3_3_2[2]) - 1.4077246 ) / fabs ( zimags(rowStdevfedTable3_3_2[2]) ) < 1e-6 ); + assert( fabs(zimags(rowStdevfedTable3_3_2[2]) + 0.0779670 ) / fabs ( zreals(rowStdevfedTable3_3_2[2]) ) < 1e-6 ); + return 0; +} + + +static int teststdevf(void) { + + dstdevfsTest(); + dstdevfaTest(); + dcolumnstdevfaTest(); + drowstdevfaTest(); + zstdevfsTest(); + zstdevfaTest(); + zrowstdevfaTest(); + zcolumnstdevfaTest(); + + return 0; +} + +int main(void) { + assert(teststdevf() == 0); + return 0; +} + diff --git a/src/c/statisticsFunctions/stdevf/testFloatStdevf.c b/src/c/statisticsFunctions/stdevf/testFloatStdevf.c new file mode 100644 index 0000000..bdf61a6 --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/testFloatStdevf.c @@ -0,0 +1,389 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <assert.h> +#include <stdio.h> +#include <math.h> +#include "stdevf.h" + + +/* #define LOCAL_DEBUG */ + +#define ERROR(x) printf("diff = %e\n", x) + +static int sstdevfsTest(void) { + float value1 = 3.0f; + float value2 = 1.123456789f; + float coef1 = 56.0f ; + float coef2 = 2.0f ; + + printf("\n>>>> stdevf Float Scalar Test\n"); + printf("result : %f " ,sstdevfs(value1,coef1)) ; + printf("result : %f " ,sstdevfs(value2,coef)) ; + assert( ( sstdevfs(value1,coef1) ) == 0.0f ); + assert( ( sstdevfs(value2,coef2) ) == 0.0f ); + + value1 = 3.0f; + value2 = 1.123456789f; + coef1 = 56.0f ; + coef2 = 2.0f ; + + + return 0; +} + +static int sstdevfaTest(void) { + float table1[3] = {3.0f, 6.0f, 9.0f}; + float coef1[3] = {10.0f, 2.0f, 6.0f}; + + float table2[5] = {3.186784563f, + 4.186784563f, + 5.186784563f, + 6.186784563f, + 7.186784563f}; + + float coef2[5] = {3.0f, + 4.0f, + 5.0f, + 6.0f, + 7.0f}; + + float table3[10] = {3.0f, 6.0f, 9.0f,10.0f, 5.0f, + 6.0f,18.0f, 7.0f,14.0f, 2.0f}; + float coef3 [10] = {3.0f, 8.0f,14.0f,13.0f, 2.0f, + 5.0f, 8.0f, 2.0f, 6.0f, 8.0f}; + + float result_2_5 = sstdevfa(table3,2, 5, coef3); + + printf("\n>>>> stdevf Float Array Test\n"); + printf("\nresult : %f " ,sstdevfa(table1,1, 3, coef1)) ; + printf("\nresult : %f " ,sstdevfa(table2,1, 5, coef2)) ; + printf("\nresult : %f " ,result_2_5) ; + + assert(sstdevfa(table1,1, 3, coef1) == 0.0f); + assert(sstdevfa(table1,1, 3, coef1) == 0.0f); + assert( ( fabs(result_2_5 ) - ( 4.6440201f ) ) / fabs ( result_2_5 ) < 1e-6 ); + return 0; +} + + +static int scolumnstdevfaTest(void) { + + float table1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float coef1[9] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f}; + + float columnStdevfedTable1_3_3[3] = {0}; + float columnStdevfedTable1_1_9[1] = {0}; + + + printf("\n>>>> Column stdevf Float Array Test\n"); + +/**/ + + scolumnstdevfa(table1, 3, 3, coef1 ,columnStdevfedTable1_3_3); + + printf("\nresult1 : %f " ,columnStdevfedTable1_3_3[0]) ; + printf("\nresult2 : %f " ,columnStdevfedTable1_3_3[1]) ; + printf("\nresult3 : %f " ,columnStdevfedTable1_3_3[2]) ; + + assert( fabs(columnStdevfedTable1_3_3[0] - 0.8268689f ) / fabs ( columnStdevfedTable1_3_3[0] ) < 1e-6 ); + assert( fabs(columnStdevfedTable1_3_3[1] - 0.8164966f ) / fabs ( columnStdevfedTable1_3_3[1] ) < 1e-6 ); + assert( fabs(columnStdevfedTable1_3_3[2] - 0.8323524f ) / fabs ( columnStdevfedTable1_3_3[2] ) < 1e-6 ); + + + + scolumnstdevfa(table1, 1, 9, coef1 ,columnStdevfedTable1_1_9); + printf("\nresult_1_9: %f\n " ,columnStdevfedTable1_1_9[0]) ; + assert( columnStdevfedTable1_1_9[0] == 0.0f); + + + return 0; +} + + +static int srowstdevfaTest(void) { + int i = 0; + float table1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float coef1[9] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f}; + + float table2[10] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f, 10.0f}; + float coef2[10] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f, 19.0f}; + + + + float rowStdevfedTable1_3_3[3] = {0}; + float rowStdevfedTable1_1_9[9] = {0}; + float rowStdevfedTable2_2_5[5] = {0}; + printf("\n>>>> Row Mean Float Array Test\n"); + + + srowstdevfa(table1, 3, 3, coef1 , rowStdevfedTable1_3_3); + for ( i = 0 ; i < 3 ; ++i) { + printf("rowStdevfedTable1_3_3[%d] = %e\n", i, rowStdevfedTable1_3_3[i]); + } + assert( fabs(rowStdevfedTable1_3_3[0] - 2.8394542f ) / fabs ( rowStdevfedTable1_3_3[0] ) < 1e-6 ); + assert( fabs(rowStdevfedTable1_3_3[1] - 2.8003759f ) / fabs ( rowStdevfedTable1_3_3[1] ) < 1e-6 ); + assert( fabs(rowStdevfedTable1_3_3[2] - 2.7669196f ) / fabs ( rowStdevfedTable1_3_3[2] ) < 1e-6 ); + +/**/ + srowstdevfa(table1, 1, 9, coef1, rowStdevfedTable1_1_9); + for ( i = 0 ; i < 9 ; ++i) { + printf("rowStdevfedTable1_1_9[%d] = %e\n", i, rowStdevfedTable1_1_9[i]); + assert(rowStdevfedTable1_1_9[i] == 0.0f); + } + + +/**/ + /**/ + srowstdevfa(table2 , 2 , 5 , coef2 , rowStdevfedTable2_2_5); + for (i = 0 ; i < 5 ; ++i ) + { + printf("rowStdevfedTable_2_5[%d] = %e \n", i, rowStdevfedTable2_2_5[i]); + } + assert( fabs(rowStdevfedTable2_2_5[0] - 0.9045340f ) / fabs ( rowStdevfedTable2_2_5[0] ) < 1e-6 ); + assert( fabs(rowStdevfedTable2_2_5[1] - 2.3935678f ) / fabs ( rowStdevfedTable2_2_5[1] ) < 1e-6 ); + assert( fabs(rowStdevfedTable2_2_5[2] - 1.3887301f ) / fabs ( rowStdevfedTable2_2_5[2] ) < 1e-6 ); + assert( fabs(rowStdevfedTable2_2_5[3] - 1.2421180f ) / fabs ( rowStdevfedTable2_2_5[3] ) < 1e-6 ); + assert( fabs(rowStdevfedTable2_2_5[4] - 0.4523443f ) / fabs ( rowStdevfedTable2_2_5[4] ) < 1e-6 ); + return 0; +} + + +static int cstdevfsTest(void) { + floatComplex value1; + floatComplex coef1 ; + floatComplex value2; + floatComplex coef2 ; + + value1 = FloatComplex(3.0f, 3.0f); + coef1 = FloatComplex(3.0f, 0.0f); + value2 = FloatComplex(1.123456789f, 1.123456789f); + coef2 = FloatComplex(9.0f, 0.0f); + + printf("\n>>>> Mean Float Complex Scalar Test\n"); + assert( creals(cstdevfs(value1,coef1)) == 0.0f ); + assert( cimags(cstdevfs(value1,coef1)) == 0.0f ); + assert( creals(cstdevfs(value2,coef2)) == 0.0f ); + assert( cimags(cstdevfs(value2,coef2)) == 0.0f ); + + return 0; +} + + + +static int cstdevfaTest(void) { + + float tableR1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float tableI1[9] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f}; + float coefR1[9] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f}; + float coefI1[9] = { 0.0f, 0.0f, 0.0f, 0.0f , 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; + + + float tableR3[10] = {3.0f, 6.0f, 9.0f,10.0f, 5.0f, + 6.0f,18.0f, 7.0f,14.0f, 2.0f}; + float tableI3[10] = {3.0f,12.0f,25.0f, 1.0f, 2.0f, + 5.0f,18.0f, 7.0f, 4.0f, 1.0f}; + + + float coefR3 [10] = {3.0f, 8.0f,14.0f,13.0f, 2.0f, + 5.0f, 8.0f, 2.0f, 6.0f, 8.0f}; + float coefI3 [10] = {0.0f, 0.0f, 0.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; + + + floatComplex* table1 = FloatComplexMatrix (tableR1, tableI1, 9); + floatComplex* coef1 = FloatComplexMatrix (coefR1, coefI1, 9); + + floatComplex* table3 = FloatComplexMatrix (tableR3, tableI3, 10); + floatComplex* coef3 = FloatComplexMatrix (coefR3, coefI3, 10); + + floatComplex result =FloatComplex(0.0f , 0.0f); + + printf("\n>>>> Mean Float Complex Array Test\n"); + result = cstdevfa(table1,1, 9, coef1); + printf("\nresult_1_9 : %f \t+ %f i " ,creals(result) ,cimags(result)) ; + assert( creals(result) == 0.0f ); + assert( cimags(result) == 0.0f ); + + + result = cstdevfa(table3,2, 5, coef3); + printf("\nresult_2_5 : %f \t+ %f i " ,creals(result) ,cimags(result)) ; + assert( fabs(creals(result) - 1.7749350f ) / fabs ( cimags(result) ) < 1e-6 ); + assert( fabs(cimags(result) - 8.3811287f ) / fabs ( creals(result) ) < 1e-6 ); + + return 0; +} + + +static int crowstdevfaTest(void) { + + int i = 0 ; + + float tableR1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float tableI1[9] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f}; + float coefR1[9] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f}; + float coefI1[9] = { 0.0f, 0.0f, 0.0f, 0.0f , 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; + + float tableR2[10] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f, 10.0f}; + float tableI2[10] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 15.0f}; + float coefR2[10] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f, 19.0f}; + float coefI2[10] = { 0.0f, 0.0f, 0.0f, 0.0f , 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; + + floatComplex* table1 = FloatComplexMatrix (tableR1, tableI1, 9); + floatComplex* coef1 = FloatComplexMatrix (coefR1, coefI1, 9); + + floatComplex* table2 = FloatComplexMatrix (tableR2, tableI2, 10); + floatComplex* coef2 = FloatComplexMatrix (coefR2, coefI2, 10); + + floatComplex rowStdevfedTable1_3_3[3]; + floatComplex rowStdevfedTable2_2_5[5]; + + printf("\n>>>> Row stdevf Float Complex Array Test\n"); + + rowStdevfedTable1_3_3[0] = FloatComplex(0.0f, 0.0f); + rowStdevfedTable1_3_3[1] = FloatComplex(0.0f, 0.0f); + rowStdevfedTable1_3_3[2] = FloatComplex(0.0f, 0.0f); + + rowStdevfedTable2_2_5[0] = FloatComplex(0.0f, 0.0f); + rowStdevfedTable2_2_5[1] = FloatComplex(0.0f, 0.0f); + rowStdevfedTable2_2_5[2] = FloatComplex(0.0f, 0.0f); + rowStdevfedTable2_2_5[3] = FloatComplex(0.0f, 0.0f); + rowStdevfedTable2_2_5[4] = FloatComplex(0.0f, 0.0f); + + + crowstdevfa(table1 , 3 , 3 , coef1 , rowStdevfedTable1_3_3); + + for (i = 0 ; i < 3 ; ++i ) + { + printf("rowStdevfedTable_3_3[%d] = %e + %ei\n", i, creals(rowStdevfedTable1_3_3[i]), cimags(rowStdevfedTable1_3_3[i])); + } + assert( fabs(creals(rowStdevfedTable1_3_3[0]) - 2.8394542f ) / fabs ( cimags(rowStdevfedTable1_3_3[0]) ) < 1e-6 ); + assert( fabs(cimags(rowStdevfedTable1_3_3[0]) - 0.9464847f ) / fabs ( creals(rowStdevfedTable1_3_3[0]) ) < 1e-6 ); + + assert( fabs(creals(rowStdevfedTable1_3_3[1]) - 2.8003759f ) / fabs ( cimags(rowStdevfedTable1_3_3[1]) ) < 1e-6 ); + assert( fabs(cimags(rowStdevfedTable1_3_3[1]) - 0.9334586f ) / fabs ( creals(rowStdevfedTable1_3_3[1]) ) < 1e-6 ); + + assert( fabs(creals(rowStdevfedTable1_3_3[2]) - 2.7669196f ) / fabs ( cimags(rowStdevfedTable1_3_3[2]) ) < 1e-6 ); + assert( fabs(cimags(rowStdevfedTable1_3_3[2]) - 0.9223065f ) / fabs ( creals(rowStdevfedTable1_3_3[2]) ) < 1e-6 ); +/**/ + crowstdevfa(table2 , 2 , 5 , coef2 , rowStdevfedTable2_2_5); + for (i = 0 ; i < 5 ; ++i ) + { + printf("rowStdevfedTable_2_5[%d] = %e + %ei\n", i, creals(rowStdevfedTable2_2_5[i]), cimags(rowStdevfedTable2_2_5[i])); + } + assert( fabs(creals(rowStdevfedTable2_2_5[0]) - 0.9045340f ) / fabs ( cimags(rowStdevfedTable2_2_5[0]) ) < 1e-6 ); + assert( fabs(cimags(rowStdevfedTable2_2_5[0]) - 0.3015113f ) / fabs ( creals(rowStdevfedTable2_2_5[0]) ) < 1e-6 ); + + assert( fabs(creals(rowStdevfedTable2_2_5[1]) - 2.3935678f ) / fabs ( cimags(rowStdevfedTable2_2_5[1]) ) < 1e-6 ); + assert( fabs(cimags(rowStdevfedTable2_2_5[1]) + 0.4787136f ) / fabs ( creals(rowStdevfedTable2_2_5[1]) ) < 1e-6 ); + + assert( fabs(creals(rowStdevfedTable2_2_5[2]) - 1.3887301f ) / fabs ( cimags(rowStdevfedTable2_2_5[2]) ) < 1e-6 ); + assert( fabs(cimags(rowStdevfedTable2_2_5[2]) - 0.4629100f ) / fabs ( creals(rowStdevfedTable2_2_5[2]) ) < 1e-6 ); + + assert( fabs(creals(rowStdevfedTable2_2_5[3]) - 1.2421180f ) / fabs ( cimags(rowStdevfedTable2_2_5[3]) ) < 1e-6 ); + assert( fabs(cimags(rowStdevfedTable2_2_5[3]) - 0.4140393f ) / fabs ( creals(rowStdevfedTable2_2_5[3]) ) < 1e-6 ); + + assert( fabs(creals(rowStdevfedTable2_2_5[4]) - 0.4523443f ) / fabs ( cimags(rowStdevfedTable2_2_5[4]) ) < 1e-6 ); + assert( fabs(cimags(rowStdevfedTable2_2_5[4]) - 2.7140659f ) / fabs ( creals(rowStdevfedTable2_2_5[4]) ) < 1e-6 ); + + return 0; +} + + + + +static int ccolumnstdevfaTest(void) { + + int i = 0 ; + + float tableR1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float tableI1[9] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f}; + float coefR1[9] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f}; + float coefI1[9] = { 0.0f, 0.0f, 0.0f, 0.0f , 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; + + float tableR2[10] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f, 10.0f}; + float tableI2[10] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 15.0f}; + float coefR2[10] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f, 19.0f}; + float coefI2[10] = { 0.0f, 0.0f, 0.0f, 0.0f , 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; + + floatComplex* table1 = FloatComplexMatrix (tableR1, tableI1, 9); + floatComplex* coef1 = FloatComplexMatrix (coefR1, coefI1, 9); + + floatComplex* table2 = FloatComplexMatrix (tableR2, tableI2, 10); + floatComplex* coef2 = FloatComplexMatrix (coefR2, coefI2, 10); + + floatComplex rowStdevfedTable1_3_3[3]; + floatComplex rowStdevfedTable2_2_5[2]; + + rowStdevfedTable1_3_3[0] = FloatComplex(0.0f, 0.0f); + rowStdevfedTable1_3_3[1] = FloatComplex(0.0f, 0.0f); + rowStdevfedTable1_3_3[2] = FloatComplex(0.0f, 0.0f); + + rowStdevfedTable2_2_5[0] = FloatComplex(0.0f, 0.0f); + rowStdevfedTable2_2_5[1] = FloatComplex(0.0f, 0.0f); + + + + printf("\n>>>> Column stdevf Float Complex Array Test\n"); + + + + ccolumnstdevfa(table1 , 3 , 3 , coef1 , rowStdevfedTable1_3_3); + + for (i = 0 ; i < 3 ; ++i ) + { + printf("columnStdevfedTable_3_3[%d] = %e + %ei\n", i, creals(rowStdevfedTable1_3_3[i]), cimags(rowStdevfedTable1_3_3[i])); + } + assert( fabs(creals(rowStdevfedTable1_3_3[0]) - 0.8268689f ) / fabs ( cimags(rowStdevfedTable1_3_3[0]) ) < 1e-6 ); + assert( fabs(cimags(rowStdevfedTable1_3_3[0]) - 2.4806066f ) / fabs ( creals(rowStdevfedTable1_3_3[0]) ) < 1e-6 ); + + assert( fabs(creals(rowStdevfedTable1_3_3[1]) - 0.8164966f ) / fabs ( cimags(rowStdevfedTable1_3_3[1]) ) < 1e-6 ); + assert( fabs(cimags(rowStdevfedTable1_3_3[1]) - 2.4494897f ) / fabs ( creals(rowStdevfedTable1_3_3[1]) ) < 1e-6 ); + + assert( fabs(creals(rowStdevfedTable1_3_3[2]) - 0.8323524f ) / fabs ( cimags(rowStdevfedTable1_3_3[2]) ) < 1e-6 ); + assert( fabs(cimags(rowStdevfedTable1_3_3[2]) - 2.4970571f ) / fabs ( creals(rowStdevfedTable1_3_3[2]) ) < 1e-6 ); +/**/ + ccolumnstdevfa(table2 , 2 , 5 , coef2 , rowStdevfedTable2_2_5); + for (i = 0 ; i < 2 ; ++i ) + { + printf("columnStdevfedTable_2_5[%d] = %e + %ei\n", i, creals(rowStdevfedTable2_2_5[i]), cimags(rowStdevfedTable2_2_5[i])); + } + assert( fabs(creals(rowStdevfedTable2_2_5[0]) - 2.3683811f ) / fabs ( cimags(rowStdevfedTable2_2_5[0]) ) < 1e-6 ); + assert( fabs(cimags(rowStdevfedTable2_2_5[0]) - 2.4784193f ) / fabs ( creals(rowStdevfedTable2_2_5[0]) ) < 1e-6 ); + + assert( fabs(creals(rowStdevfedTable2_2_5[1]) - 3.1890422f ) / fabs ( cimags(rowStdevfedTable2_2_5[1]) ) < 1e-6 ); + assert( fabs(cimags(rowStdevfedTable2_2_5[1]) - 4.9966774f ) / fabs ( creals(rowStdevfedTable2_2_5[1]) ) < 1e-6 ); + + + return 0; +} + + +static int teststdevf(void) { + + sstdevfsTest(); + sstdevfaTest(); + scolumnstdevfaTest(); + srowstdevfaTest(); + cstdevfsTest(); + cstdevfaTest(); + crowstdevfaTest(); + ccolumnstdevfaTest(); + + return 0; +} + +int main(void) { + assert(teststdevf() == 0); + return 0; +} + diff --git a/src/c/statisticsFunctions/stdevf/zcolumnstdevfa.c b/src/c/statisticsFunctions/stdevf/zcolumnstdevfa.c new file mode 100644 index 0000000..7dadda7 --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/zcolumnstdevfa.c @@ -0,0 +1,59 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + + +#include "stdevf.h" +#include "meanf.h" +#include "abs.h" + +void zcolumnstdevfa(doubleComplex *in1, int lines, int columns, doubleComplex*in2, doubleComplex* out){ + int i = 0; + int j = 0; + doubleComplex temp = DoubleComplex(0.0,0.0); + doubleComplex accumulate = DoubleComplex(0.0,0.0); + doubleComplex accumulateFre = DoubleComplex(0.0,0.0); + + zcolumnmeanfa(in1, lines, columns, in2, out ); + + + /*we first multiply each zell of the input matrix by its zoefficient*/ + for (j = 0; j < lines; ++j) + { + accumulate = DoubleComplex(0.0,0.0); + accumulateFre = DoubleComplex(0.0,0.0); + temp = DoubleComplex(0.0,0.0); + + for ( i = 0 ; i < columns; ++i ) + { + + temp = zpows ( zdiffs (in1[lines*i + j] ,out[j] ) ,DoubleComplex (2.0, 0.0 ) ); + temp = zmuls( in2[lines*i + j] , temp); + + accumulate = zadds( temp , accumulate); + accumulateFre = zadds(in2[lines*i + j] ,accumulateFre ); + + } + + if (lines <= 1) + { + out[j] = zmuls (DoubleComplex(0.0,0.0) , accumulate ) ; + } + else + { + if( dabss (zreals(accumulate)) <= 3e-14 ) accumulate = DoubleComplex(dabss(zreals(accumulate)) ,zimags(accumulate)); + if( dabss (zimags(accumulate)) <= 3e-14 ) accumulate = DoubleComplex(zreals(accumulate) ,dabss(zimags(accumulate))); + accumulate = zrdivs(accumulate, zdiffs(accumulateFre ,DoubleComplex(1.0,0.0))); + out[j] = zsqrts(accumulate); + } + } + +} diff --git a/src/c/statisticsFunctions/stdevf/zrowstdevfa.c b/src/c/statisticsFunctions/stdevf/zrowstdevfa.c new file mode 100644 index 0000000..bfa77aa --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/zrowstdevfa.c @@ -0,0 +1,63 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "stdevf.h" +#include "meanf.h" +#include "abs.h" + + + +void zrowstdevfa(doubleComplex *in1, int lines, int columns, doubleComplex*in2, doubleComplex* out){ + int i = 0; + int j = 0; + doubleComplex temp = DoubleComplex(0.0,0.0); + doubleComplex accumulate = DoubleComplex(0.0,0.0); + doubleComplex accumulateFre = DoubleComplex(0.0,0.0); + + zrowmeanfa(in1, lines, columns, in2, out ); + + /*we first multiply each zell of the input matrix by its coefficient*/ + for (j = 0; j < columns; ++j) + { + + accumulate = DoubleComplex(0.0,0.0); + accumulateFre =DoubleComplex(0.0,0.0); + temp = DoubleComplex(0.0,0.0); + + for ( i = 0 ; i < lines; ++i ) + { + + temp = zpows ( zdiffs (in1[lines*j + i] ,out[j] ) ,DoubleComplex (2.0, 0.0 ) ); + temp = zmuls( in2[lines*j + i] , temp); + + accumulate = zadds( temp , accumulate); + accumulateFre = zadds(in2[lines*j + i] ,accumulateFre ); + + } + + if (lines <= 1) + { + out[j] = zmuls (DoubleComplex(0.0,0.0) , accumulate ) ; + } + else + { + if( dabss (zreals(accumulate)) <= 3e-14 ) accumulate = DoubleComplex(dabss(zreals(accumulate)) ,zimags(accumulate)); + if( dabss (zimags(accumulate)) <= 3e-14 ) accumulate = DoubleComplex(zreals(accumulate) ,dabss(zimags(accumulate))); + + + accumulate = zrdivs(accumulate, zdiffs(accumulateFre ,DoubleComplex(1.0,0.0))); + out[j] = zsqrts(accumulate); + + } + } + +} diff --git a/src/c/statisticsFunctions/stdevf/zstdevfa.c b/src/c/statisticsFunctions/stdevf/zstdevfa.c new file mode 100644 index 0000000..2a4f52b --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/zstdevfa.c @@ -0,0 +1,46 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "stdevf.h" + + +doubleComplex zstdevfa(doubleComplex *in1, int lines, int columns, doubleComplex* in2) +{ + int i = 0 ; + + doubleComplex temp = DoubleComplex(0.0,0.0); + doubleComplex accumulate = DoubleComplex(0.0,0.0); + doubleComplex accumulateFre = DoubleComplex(0.0,0.0); + doubleComplex meanf = zmeanfa (in1 , lines*columns , in2); + + for(i = 0 ; i < lines*columns ; ++i) + { + temp = zpows ( zdiffs (in1[i] , meanf ) ,DoubleComplex (2.0, 0.0 ) ); + temp = zmuls( in2[i] , temp); + + accumulate = zadds( temp , accumulate); + accumulateFre = zadds(in2[i ] ,accumulateFre ); + + } + + if (lines <= 1) + { + + return zmuls (DoubleComplex(0.0,0.0) , accumulate ) ; + } + else + { + + accumulate = zrdivs(accumulate, zdiffs(accumulateFre ,DoubleComplex(1.0,0.0) )); + return zsqrts(accumulate); + } +} diff --git a/src/c/statisticsFunctions/stdevf/zstdevfdz.c b/src/c/statisticsFunctions/stdevf/zstdevfdz.c new file mode 100644 index 0000000..90feb21 --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/zstdevfdz.c @@ -0,0 +1,23 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <stdlib.h> +#include "stdevf.h" +#include "zeros.h" + +doubleComplex zstdevfdz(double *in1, int lines, int columns, doubleComplex* in2) +{ + double* ZEROS = (double *) malloc((unsigned int)(lines*columns*sizeof(double))); + dzerosa(ZEROS,lines,columns); + + return zstdevfa(DoubleComplexMatrix(in1,ZEROS,lines*columns), lines,columns , in2); +} diff --git a/src/c/statisticsFunctions/stdevf/zstdevfzd.c b/src/c/statisticsFunctions/stdevf/zstdevfzd.c new file mode 100644 index 0000000..f7a28e3 --- /dev/null +++ b/src/c/statisticsFunctions/stdevf/zstdevfzd.c @@ -0,0 +1,41 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "stdevf.h" + +doubleComplex zstdevfzd(doubleComplex *in1, int lines, int columns, double* in2) +{ + int i = 0 ; + doubleComplex temp = DoubleComplex(0.0,0.0); + doubleComplex accumulate = DoubleComplex(0.0,0.0); + double accumulateFre = 0.0 ; + doubleComplex meanf = zmeanfzd (in1 , lines , columns , in2); +/*equivalent to (in1 - meanf(x , in2 )).^2 .*in2 */ + for(i = 0 ; i < lines*columns ; ++i) + { + temp = zpows ( zdiffs (in1[i] , meanf ) ,DoubleComplex (2.0, 0.0 ) ); + temp = zmuls( DoubleComplex(in2[i],0.0f) , temp); + + accumulate = zadds( temp , accumulate); + accumulateFre += in2[i]; + } + + if (lines <= 1) + { + return zmuls (DoubleComplex(0.0,0.0) , accumulate ) ; + } + else + { + accumulate = DoubleComplex( zreals(accumulate ) / (accumulateFre - 1) , zimags(accumulate) / (accumulateFre - 1)); + return zsqrts(accumulate); + } +} diff --git a/src/c/statisticsFunctions/sum/Makefile.am b/src/c/statisticsFunctions/sum/Makefile.am new file mode 100644 index 0000000..0fd7965 --- /dev/null +++ b/src/c/statisticsFunctions/sum/Makefile.am @@ -0,0 +1,65 @@ +## +## Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +## Copyright (C) 2006-2008 - INRIA - Bruno JOFRET +## +## This file must be used under the terms of the CeCILL. +## This source file is licensed as described in the file COPYING, which +## you should have received as part of this distribution. The terms +## are also available at +## http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt +## +## + +libSum_la_CFLAGS = -I $(top_builddir)/src/c/type \ + -I $(top_builddir)/src/c/operations/includes \ + -I ../includes + +instdir = $(top_builddir)/lib + +pkglib_LTLIBRARIES = libSum.la + +libSum_la_SOURCES = $(HEAD) $(SRC) + +SRC = ssuma.c \ + srowsuma.c \ + scolumnsuma.c \ + dsuma.c \ + drowsuma.c \ + dcolumnsuma.c \ + csuma.c \ + crowsuma.c \ + ccolumnsuma.c \ + zsuma.c \ + zrowsuma.c \ + zcolumnsuma.c + +HEAD = ../includes/sum.h + +#### +# Checking Part +#### + +check_INCLUDES = -I $(top_builddir)/src/c/statisticsFunctions/includes \ + -I $(top_builddir)/src/c/operations/includes \ + -I $(top_builddir)/src/c/type + +check_LDADD = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/c/statisticsFunctions/sum/libSum.la \ + @LIBMATH@ + +check_PROGRAMS = testFloatSum testDoubleSum + +TESTS = testFloatSum testDoubleSum + +# +# -*- Sum Tests -*- +# +testFloatSum_SOURCES = testFloatSum.c +testFloatSum_CFLAGS = $(check_INCLUDES) +testFloatSum_LDADD = $(check_LDADD) + +testDoubleSum_SOURCES =testDoubleSum.c +testDoubleSum_CFLAGS = $(check_INCLUDES) +testDoubleSum_LDADD = $(check_LDADD)
\ No newline at end of file diff --git a/src/c/statisticsFunctions/sum/Makefile.in b/src/c/statisticsFunctions/sum/Makefile.in new file mode 100644 index 0000000..f3d5a85 --- /dev/null +++ b/src/c/statisticsFunctions/sum/Makefile.in @@ -0,0 +1,831 @@ +# Makefile.in generated by automake 1.11.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +check_PROGRAMS = testFloatSum$(EXEEXT) testDoubleSum$(EXEEXT) +TESTS = testFloatSum$(EXEEXT) testDoubleSum$(EXEEXT) +subdir = src/c/statisticsFunctions/sum +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/includes/machine.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__installdirs = "$(DESTDIR)$(pkglibdir)" +LTLIBRARIES = $(pkglib_LTLIBRARIES) +libSum_la_LIBADD = +am__objects_1 = +am__objects_2 = libSum_la-ssuma.lo libSum_la-srowsuma.lo \ + libSum_la-scolumnsuma.lo libSum_la-dsuma.lo \ + libSum_la-drowsuma.lo libSum_la-dcolumnsuma.lo \ + libSum_la-csuma.lo libSum_la-crowsuma.lo \ + libSum_la-ccolumnsuma.lo libSum_la-zsuma.lo \ + libSum_la-zrowsuma.lo libSum_la-zcolumnsuma.lo +am_libSum_la_OBJECTS = $(am__objects_1) $(am__objects_2) +libSum_la_OBJECTS = $(am_libSum_la_OBJECTS) +libSum_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(libSum_la_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +am_testDoubleSum_OBJECTS = testDoubleSum-testDoubleSum.$(OBJEXT) +testDoubleSum_OBJECTS = $(am_testDoubleSum_OBJECTS) +am__DEPENDENCIES_1 = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/c/statisticsFunctions/sum/libSum.la +testDoubleSum_DEPENDENCIES = $(am__DEPENDENCIES_1) +testDoubleSum_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testDoubleSum_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +am_testFloatSum_OBJECTS = testFloatSum-testFloatSum.$(OBJEXT) +testFloatSum_OBJECTS = $(am_testFloatSum_OBJECTS) +testFloatSum_DEPENDENCIES = $(am__DEPENDENCIES_1) +testFloatSum_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testFloatSum_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/includes +depcomp = $(SHELL) $(top_srcdir)/config/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +CCLD = $(CC) +LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ + $(LDFLAGS) -o $@ +SOURCES = $(libSum_la_SOURCES) $(testDoubleSum_SOURCES) \ + $(testFloatSum_SOURCES) +DIST_SOURCES = $(libSum_la_SOURCES) $(testDoubleSum_SOURCES) \ + $(testFloatSum_SOURCES) +ETAGS = etags +CTAGS = ctags +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +F77 = @F77@ +FFLAGS = @FFLAGS@ +FGREP = @FGREP@ +GREP = @GREP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBMATH = @LIBMATH@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +ac_ct_F77 = @ac_ct_F77@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +lt_ECHO = @lt_ECHO@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +libSum_la_CFLAGS = -I $(top_builddir)/src/c/type \ + -I $(top_builddir)/src/c/operations/includes \ + -I ../includes + +instdir = $(top_builddir)/lib +pkglib_LTLIBRARIES = libSum.la +libSum_la_SOURCES = $(HEAD) $(SRC) +SRC = ssuma.c \ + srowsuma.c \ + scolumnsuma.c \ + dsuma.c \ + drowsuma.c \ + dcolumnsuma.c \ + csuma.c \ + crowsuma.c \ + ccolumnsuma.c \ + zsuma.c \ + zrowsuma.c \ + zcolumnsuma.c + +HEAD = ../includes/sum.h + +#### +# Checking Part +#### +check_INCLUDES = -I $(top_builddir)/src/c/statisticsFunctions/includes \ + -I $(top_builddir)/src/c/operations/includes \ + -I $(top_builddir)/src/c/type + +check_LDADD = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/c/statisticsFunctions/sum/libSum.la \ + @LIBMATH@ + + +# +# -*- Sum Tests -*- +# +testFloatSum_SOURCES = testFloatSum.c +testFloatSum_CFLAGS = $(check_INCLUDES) +testFloatSum_LDADD = $(check_LDADD) +testDoubleSum_SOURCES = testDoubleSum.c +testDoubleSum_CFLAGS = $(check_INCLUDES) +testDoubleSum_LDADD = $(check_LDADD) +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/c/statisticsFunctions/sum/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/c/statisticsFunctions/sum/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): +install-pkglibLTLIBRARIES: $(pkglib_LTLIBRARIES) + @$(NORMAL_INSTALL) + test -z "$(pkglibdir)" || $(MKDIR_P) "$(DESTDIR)$(pkglibdir)" + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + list2=; for p in $$list; do \ + if test -f $$p; then \ + list2="$$list2 $$p"; \ + else :; fi; \ + done; \ + test -z "$$list2" || { \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(pkglibdir)'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(pkglibdir)"; \ + } + +uninstall-pkglibLTLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(pkglibdir)/$$f'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(pkglibdir)/$$f"; \ + done + +clean-pkglibLTLIBRARIES: + -test -z "$(pkglib_LTLIBRARIES)" || rm -f $(pkglib_LTLIBRARIES) + @list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done +libSum.la: $(libSum_la_OBJECTS) $(libSum_la_DEPENDENCIES) + $(libSum_la_LINK) -rpath $(pkglibdir) $(libSum_la_OBJECTS) $(libSum_la_LIBADD) $(LIBS) + +clean-checkPROGRAMS: + @list='$(check_PROGRAMS)'; test -n "$$list" || exit 0; \ + echo " rm -f" $$list; \ + rm -f $$list || exit $$?; \ + test -n "$(EXEEXT)" || exit 0; \ + list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f" $$list; \ + rm -f $$list +testDoubleSum$(EXEEXT): $(testDoubleSum_OBJECTS) $(testDoubleSum_DEPENDENCIES) + @rm -f testDoubleSum$(EXEEXT) + $(testDoubleSum_LINK) $(testDoubleSum_OBJECTS) $(testDoubleSum_LDADD) $(LIBS) +testFloatSum$(EXEEXT): $(testFloatSum_OBJECTS) $(testFloatSum_DEPENDENCIES) + @rm -f testFloatSum$(EXEEXT) + $(testFloatSum_LINK) $(testFloatSum_OBJECTS) $(testFloatSum_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSum_la-ccolumnsuma.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSum_la-crowsuma.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSum_la-csuma.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSum_la-dcolumnsuma.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSum_la-drowsuma.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSum_la-dsuma.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSum_la-scolumnsuma.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSum_la-srowsuma.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSum_la-ssuma.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSum_la-zcolumnsuma.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSum_la-zrowsuma.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libSum_la-zsuma.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testDoubleSum-testDoubleSum.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testFloatSum-testFloatSum.Po@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c $< + +.c.obj: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< + +libSum_la-ssuma.lo: ssuma.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -MT libSum_la-ssuma.lo -MD -MP -MF $(DEPDIR)/libSum_la-ssuma.Tpo -c -o libSum_la-ssuma.lo `test -f 'ssuma.c' || echo '$(srcdir)/'`ssuma.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSum_la-ssuma.Tpo $(DEPDIR)/libSum_la-ssuma.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='ssuma.c' object='libSum_la-ssuma.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -c -o libSum_la-ssuma.lo `test -f 'ssuma.c' || echo '$(srcdir)/'`ssuma.c + +libSum_la-srowsuma.lo: srowsuma.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -MT libSum_la-srowsuma.lo -MD -MP -MF $(DEPDIR)/libSum_la-srowsuma.Tpo -c -o libSum_la-srowsuma.lo `test -f 'srowsuma.c' || echo '$(srcdir)/'`srowsuma.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSum_la-srowsuma.Tpo $(DEPDIR)/libSum_la-srowsuma.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='srowsuma.c' object='libSum_la-srowsuma.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -c -o libSum_la-srowsuma.lo `test -f 'srowsuma.c' || echo '$(srcdir)/'`srowsuma.c + +libSum_la-scolumnsuma.lo: scolumnsuma.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -MT libSum_la-scolumnsuma.lo -MD -MP -MF $(DEPDIR)/libSum_la-scolumnsuma.Tpo -c -o libSum_la-scolumnsuma.lo `test -f 'scolumnsuma.c' || echo '$(srcdir)/'`scolumnsuma.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSum_la-scolumnsuma.Tpo $(DEPDIR)/libSum_la-scolumnsuma.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='scolumnsuma.c' object='libSum_la-scolumnsuma.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -c -o libSum_la-scolumnsuma.lo `test -f 'scolumnsuma.c' || echo '$(srcdir)/'`scolumnsuma.c + +libSum_la-dsuma.lo: dsuma.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -MT libSum_la-dsuma.lo -MD -MP -MF $(DEPDIR)/libSum_la-dsuma.Tpo -c -o libSum_la-dsuma.lo `test -f 'dsuma.c' || echo '$(srcdir)/'`dsuma.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSum_la-dsuma.Tpo $(DEPDIR)/libSum_la-dsuma.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dsuma.c' object='libSum_la-dsuma.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -c -o libSum_la-dsuma.lo `test -f 'dsuma.c' || echo '$(srcdir)/'`dsuma.c + +libSum_la-drowsuma.lo: drowsuma.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -MT libSum_la-drowsuma.lo -MD -MP -MF $(DEPDIR)/libSum_la-drowsuma.Tpo -c -o libSum_la-drowsuma.lo `test -f 'drowsuma.c' || echo '$(srcdir)/'`drowsuma.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSum_la-drowsuma.Tpo $(DEPDIR)/libSum_la-drowsuma.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='drowsuma.c' object='libSum_la-drowsuma.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -c -o libSum_la-drowsuma.lo `test -f 'drowsuma.c' || echo '$(srcdir)/'`drowsuma.c + +libSum_la-dcolumnsuma.lo: dcolumnsuma.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -MT libSum_la-dcolumnsuma.lo -MD -MP -MF $(DEPDIR)/libSum_la-dcolumnsuma.Tpo -c -o libSum_la-dcolumnsuma.lo `test -f 'dcolumnsuma.c' || echo '$(srcdir)/'`dcolumnsuma.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSum_la-dcolumnsuma.Tpo $(DEPDIR)/libSum_la-dcolumnsuma.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dcolumnsuma.c' object='libSum_la-dcolumnsuma.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -c -o libSum_la-dcolumnsuma.lo `test -f 'dcolumnsuma.c' || echo '$(srcdir)/'`dcolumnsuma.c + +libSum_la-csuma.lo: csuma.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -MT libSum_la-csuma.lo -MD -MP -MF $(DEPDIR)/libSum_la-csuma.Tpo -c -o libSum_la-csuma.lo `test -f 'csuma.c' || echo '$(srcdir)/'`csuma.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSum_la-csuma.Tpo $(DEPDIR)/libSum_la-csuma.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='csuma.c' object='libSum_la-csuma.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -c -o libSum_la-csuma.lo `test -f 'csuma.c' || echo '$(srcdir)/'`csuma.c + +libSum_la-crowsuma.lo: crowsuma.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -MT libSum_la-crowsuma.lo -MD -MP -MF $(DEPDIR)/libSum_la-crowsuma.Tpo -c -o libSum_la-crowsuma.lo `test -f 'crowsuma.c' || echo '$(srcdir)/'`crowsuma.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSum_la-crowsuma.Tpo $(DEPDIR)/libSum_la-crowsuma.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='crowsuma.c' object='libSum_la-crowsuma.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -c -o libSum_la-crowsuma.lo `test -f 'crowsuma.c' || echo '$(srcdir)/'`crowsuma.c + +libSum_la-ccolumnsuma.lo: ccolumnsuma.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -MT libSum_la-ccolumnsuma.lo -MD -MP -MF $(DEPDIR)/libSum_la-ccolumnsuma.Tpo -c -o libSum_la-ccolumnsuma.lo `test -f 'ccolumnsuma.c' || echo '$(srcdir)/'`ccolumnsuma.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSum_la-ccolumnsuma.Tpo $(DEPDIR)/libSum_la-ccolumnsuma.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='ccolumnsuma.c' object='libSum_la-ccolumnsuma.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -c -o libSum_la-ccolumnsuma.lo `test -f 'ccolumnsuma.c' || echo '$(srcdir)/'`ccolumnsuma.c + +libSum_la-zsuma.lo: zsuma.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -MT libSum_la-zsuma.lo -MD -MP -MF $(DEPDIR)/libSum_la-zsuma.Tpo -c -o libSum_la-zsuma.lo `test -f 'zsuma.c' || echo '$(srcdir)/'`zsuma.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSum_la-zsuma.Tpo $(DEPDIR)/libSum_la-zsuma.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zsuma.c' object='libSum_la-zsuma.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -c -o libSum_la-zsuma.lo `test -f 'zsuma.c' || echo '$(srcdir)/'`zsuma.c + +libSum_la-zrowsuma.lo: zrowsuma.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -MT libSum_la-zrowsuma.lo -MD -MP -MF $(DEPDIR)/libSum_la-zrowsuma.Tpo -c -o libSum_la-zrowsuma.lo `test -f 'zrowsuma.c' || echo '$(srcdir)/'`zrowsuma.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSum_la-zrowsuma.Tpo $(DEPDIR)/libSum_la-zrowsuma.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zrowsuma.c' object='libSum_la-zrowsuma.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -c -o libSum_la-zrowsuma.lo `test -f 'zrowsuma.c' || echo '$(srcdir)/'`zrowsuma.c + +libSum_la-zcolumnsuma.lo: zcolumnsuma.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -MT libSum_la-zcolumnsuma.lo -MD -MP -MF $(DEPDIR)/libSum_la-zcolumnsuma.Tpo -c -o libSum_la-zcolumnsuma.lo `test -f 'zcolumnsuma.c' || echo '$(srcdir)/'`zcolumnsuma.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libSum_la-zcolumnsuma.Tpo $(DEPDIR)/libSum_la-zcolumnsuma.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zcolumnsuma.c' object='libSum_la-zcolumnsuma.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libSum_la_CFLAGS) $(CFLAGS) -c -o libSum_la-zcolumnsuma.lo `test -f 'zcolumnsuma.c' || echo '$(srcdir)/'`zcolumnsuma.c + +testDoubleSum-testDoubleSum.o: testDoubleSum.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleSum_CFLAGS) $(CFLAGS) -MT testDoubleSum-testDoubleSum.o -MD -MP -MF $(DEPDIR)/testDoubleSum-testDoubleSum.Tpo -c -o testDoubleSum-testDoubleSum.o `test -f 'testDoubleSum.c' || echo '$(srcdir)/'`testDoubleSum.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleSum-testDoubleSum.Tpo $(DEPDIR)/testDoubleSum-testDoubleSum.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleSum.c' object='testDoubleSum-testDoubleSum.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleSum_CFLAGS) $(CFLAGS) -c -o testDoubleSum-testDoubleSum.o `test -f 'testDoubleSum.c' || echo '$(srcdir)/'`testDoubleSum.c + +testDoubleSum-testDoubleSum.obj: testDoubleSum.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleSum_CFLAGS) $(CFLAGS) -MT testDoubleSum-testDoubleSum.obj -MD -MP -MF $(DEPDIR)/testDoubleSum-testDoubleSum.Tpo -c -o testDoubleSum-testDoubleSum.obj `if test -f 'testDoubleSum.c'; then $(CYGPATH_W) 'testDoubleSum.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleSum.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleSum-testDoubleSum.Tpo $(DEPDIR)/testDoubleSum-testDoubleSum.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleSum.c' object='testDoubleSum-testDoubleSum.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleSum_CFLAGS) $(CFLAGS) -c -o testDoubleSum-testDoubleSum.obj `if test -f 'testDoubleSum.c'; then $(CYGPATH_W) 'testDoubleSum.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleSum.c'; fi` + +testFloatSum-testFloatSum.o: testFloatSum.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatSum_CFLAGS) $(CFLAGS) -MT testFloatSum-testFloatSum.o -MD -MP -MF $(DEPDIR)/testFloatSum-testFloatSum.Tpo -c -o testFloatSum-testFloatSum.o `test -f 'testFloatSum.c' || echo '$(srcdir)/'`testFloatSum.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatSum-testFloatSum.Tpo $(DEPDIR)/testFloatSum-testFloatSum.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatSum.c' object='testFloatSum-testFloatSum.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatSum_CFLAGS) $(CFLAGS) -c -o testFloatSum-testFloatSum.o `test -f 'testFloatSum.c' || echo '$(srcdir)/'`testFloatSum.c + +testFloatSum-testFloatSum.obj: testFloatSum.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatSum_CFLAGS) $(CFLAGS) -MT testFloatSum-testFloatSum.obj -MD -MP -MF $(DEPDIR)/testFloatSum-testFloatSum.Tpo -c -o testFloatSum-testFloatSum.obj `if test -f 'testFloatSum.c'; then $(CYGPATH_W) 'testFloatSum.c'; else $(CYGPATH_W) '$(srcdir)/testFloatSum.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatSum-testFloatSum.Tpo $(DEPDIR)/testFloatSum-testFloatSum.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatSum.c' object='testFloatSum-testFloatSum.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatSum_CFLAGS) $(CFLAGS) -c -o testFloatSum-testFloatSum.obj `if test -f 'testFloatSum.c'; then $(CYGPATH_W) 'testFloatSum.c'; else $(CYGPATH_W) '$(srcdir)/testFloatSum.c'; fi` + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + set x; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) + $(MAKE) $(AM_MAKEFLAGS) check-TESTS +check: check-am +all-am: Makefile $(LTLIBRARIES) +installdirs: + for dir in "$(DESTDIR)$(pkglibdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-checkPROGRAMS clean-generic clean-libtool \ + clean-pkglibLTLIBRARIES mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-pkglibLTLIBRARIES + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-pkglibLTLIBRARIES + +.MAKE: check-am install-am install-strip + +.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \ + clean-checkPROGRAMS clean-generic clean-libtool \ + clean-pkglibLTLIBRARIES ctags distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-pkglibLTLIBRARIES install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ + uninstall-am uninstall-pkglibLTLIBRARIES + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/src/c/statisticsFunctions/sum/ccolumnsuma.c b/src/c/statisticsFunctions/sum/ccolumnsuma.c new file mode 100644 index 0000000..64018cd --- /dev/null +++ b/src/c/statisticsFunctions/sum/ccolumnsuma.c @@ -0,0 +1,33 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "sum.h" + +void ccolumnsuma(floatComplex *in, int lines, int columns, floatComplex * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < lines; ++i) + { + out[i] = in[i]; + } + /* + ** Then accumulate in each row. + */ + for (i = lines ; i < lines * columns ; ++i) + { + out[i % lines] = cadds(out[i % lines] , in[i]); + } +} diff --git a/src/c/statisticsFunctions/sum/crowsuma.c b/src/c/statisticsFunctions/sum/crowsuma.c new file mode 100644 index 0000000..aaf3c59 --- /dev/null +++ b/src/c/statisticsFunctions/sum/crowsuma.c @@ -0,0 +1,34 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "sum.h" + +void crowsuma(floatComplex *in, int lines, int columns, floatComplex * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < columns; ++i) + { + out[i] = in[i * lines]; + } + /* + ** Then accumulate in each column. + */ + for (i = 1 ; i <= (lines - 1) * columns ; ++i) + { + out[(i - 1) % columns] = cadds( out[(i - 1) % columns] , + in[((i - 1) % columns) * lines + 1 + (i - 1) / columns]); + } +} diff --git a/src/c/statisticsFunctions/sum/csuma.c b/src/c/statisticsFunctions/sum/csuma.c new file mode 100644 index 0000000..68ebb29 --- /dev/null +++ b/src/c/statisticsFunctions/sum/csuma.c @@ -0,0 +1,24 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "sum.h" + +floatComplex csuma(floatComplex *in, int size) { + floatComplex accumulate = FloatComplex(0.0f, 0.0f); + int i = 0; + + for (i = 0; i < size; ++i) + { + accumulate = cadds(accumulate, in[i]); + } + return accumulate; +} diff --git a/src/c/statisticsFunctions/sum/dcolumnsuma.c b/src/c/statisticsFunctions/sum/dcolumnsuma.c new file mode 100644 index 0000000..1f9b479 --- /dev/null +++ b/src/c/statisticsFunctions/sum/dcolumnsuma.c @@ -0,0 +1,33 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "sum.h" + +void dcolumnsuma(double *in, int lines, int columns, double * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < lines; ++i) + { + out[i] = in[i]; + } + /* + ** Then accumulate in each row. + */ + for (i = lines ; i < lines * columns ; ++i) + { + out[i % lines] += in[i]; + } +} diff --git a/src/c/statisticsFunctions/sum/drowsuma.c b/src/c/statisticsFunctions/sum/drowsuma.c new file mode 100644 index 0000000..f5e2ed3 --- /dev/null +++ b/src/c/statisticsFunctions/sum/drowsuma.c @@ -0,0 +1,33 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "sum.h" + +void drowsuma(double *in, int lines, int columns, double *out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < columns; ++i) + { + out[i] = in[i * lines]; + } + /* + ** Then accumulate in each column. + */ + for (i = 1 ; i <= (lines - 1) * columns ; ++i) + { + out[(i - 1) % columns] += in[((i - 1) % columns) * lines + 1 + (i - 1) / columns]; + } +} diff --git a/src/c/statisticsFunctions/sum/dsuma.c b/src/c/statisticsFunctions/sum/dsuma.c new file mode 100644 index 0000000..eddceb6 --- /dev/null +++ b/src/c/statisticsFunctions/sum/dsuma.c @@ -0,0 +1,25 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "sum.h" + +double dsuma(double *in, int size) { + double accumulate = 0.0; + int i = 0; + + for (i = 0; i < size; ++i) + { + accumulate += in[i]; + } + return accumulate; + +} diff --git a/src/c/statisticsFunctions/sum/i16columnsuma.c b/src/c/statisticsFunctions/sum/i16columnsuma.c new file mode 100644 index 0000000..a34cea1 --- /dev/null +++ b/src/c/statisticsFunctions/sum/i16columnsuma.c @@ -0,0 +1,34 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "sum.h" + +void i16columnsuma(int16 *in, int lines, int columns, int16 * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < lines; ++i) + { + out[i] = (int16)in[i]; + } + /* + ** Then accumulate in each row. + */ + for (i = lines ; i < lines * columns ; ++i) + { + out[i % lines] = (int16)i16adds(out[i % lines] , in[i]); + } +} diff --git a/src/c/statisticsFunctions/sum/i16rowsuma.c b/src/c/statisticsFunctions/sum/i16rowsuma.c new file mode 100644 index 0000000..03d8ff2 --- /dev/null +++ b/src/c/statisticsFunctions/sum/i16rowsuma.c @@ -0,0 +1,35 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "sum.h" + +void i16rowsuma(int16 *in, int lines, int columns, int16 * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < columns; ++i) + { + out[i] = (int16)in[i * lines]; + } + /* + ** Then accumulate in each column. + */ + for (i = 1 ; i <= (lines - 1) * columns ; ++i) + { + out[(i - 1) % columns] = (int16)i16adds( out[(i - 1) % columns] , + in[((i - 1) % columns) * lines + 1 + (i - 1) / columns]); + } +} diff --git a/src/c/statisticsFunctions/sum/i16suma.c b/src/c/statisticsFunctions/sum/i16suma.c new file mode 100644 index 0000000..f5d0809 --- /dev/null +++ b/src/c/statisticsFunctions/sum/i16suma.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "sum.h" + +int16 i16suma(int16 *in, int size) { + //floatComplex accumulate = FloatComplex(0.0f, 0.0f); + int i = 0; + int16 accumulate = 0; + + for (i = 0; i < size; ++i) + { + accumulate = i16adds(accumulate, in[i]); + } + return accumulate; +} diff --git a/src/c/statisticsFunctions/sum/i8columnsuma.c b/src/c/statisticsFunctions/sum/i8columnsuma.c new file mode 100644 index 0000000..bb79897 --- /dev/null +++ b/src/c/statisticsFunctions/sum/i8columnsuma.c @@ -0,0 +1,34 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "sum.h" + +void i8columnsuma(int8 *in, int lines, int columns, int8 * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < lines; ++i) + { + out[i] = (int8)in[i]; + } + /* + ** Then accumulate in each row. + */ + for (i = lines ; i < lines * columns ; ++i) + { + out[i % lines] = (int8)i8adds(out[i % lines] , in[i]); + } +} diff --git a/src/c/statisticsFunctions/sum/i8rowsuma.c b/src/c/statisticsFunctions/sum/i8rowsuma.c new file mode 100644 index 0000000..2008f32 --- /dev/null +++ b/src/c/statisticsFunctions/sum/i8rowsuma.c @@ -0,0 +1,35 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "sum.h" + +void i8rowsuma(int8 *in, int lines, int columns, int8 * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < columns; ++i) + { + out[i] = (int8)in[i * lines]; + } + /* + ** Then accumulate in each column. + */ + for (i = 1 ; i <= (lines - 1) * columns ; ++i) + { + out[(i - 1) % columns] = (int8)i8adds( out[(i - 1) % columns] , + in[((i - 1) % columns) * lines + 1 + (i - 1) / columns]); + } +} diff --git a/src/c/statisticsFunctions/sum/i8suma.c b/src/c/statisticsFunctions/sum/i8suma.c new file mode 100644 index 0000000..468a98b --- /dev/null +++ b/src/c/statisticsFunctions/sum/i8suma.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "sum.h" + +int8 i8suma(int8 *in, int size) { + //floatComplex accumulate = FloatComplex(0.0f, 0.0f); + int8 accumulate = 0; + + int i = 0; + + for (i = 0; i < size; ++i) + { + accumulate = i8adds(accumulate, in[i]); + } + return accumulate; +} diff --git a/src/c/statisticsFunctions/sum/scolumnsuma.c b/src/c/statisticsFunctions/sum/scolumnsuma.c new file mode 100644 index 0000000..4d2415f --- /dev/null +++ b/src/c/statisticsFunctions/sum/scolumnsuma.c @@ -0,0 +1,33 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "sum.h" + +void scolumnsuma(float *in, int lines, int columns, float * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < lines; ++i) + { + out[i] = in[i]; + } + /* + ** Then accumulate in each row. + */ + for (i = lines ; i < lines * columns ; ++i) + { + out[i % lines] += in[i]; + } +} diff --git a/src/c/statisticsFunctions/sum/srowsuma.c b/src/c/statisticsFunctions/sum/srowsuma.c new file mode 100644 index 0000000..3f20661 --- /dev/null +++ b/src/c/statisticsFunctions/sum/srowsuma.c @@ -0,0 +1,34 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "sum.h" + +void srowsuma(float *in, int lines, int columns, float * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < columns; ++i) + { + out[i] = in[i * lines]; + } + /* + ** Then accumulate in each column. + */ + for (i = 1 ; i <= (lines - 1) * columns ; ++i) + { + out[(i - 1) % columns] += in[((i - 1) % columns) * lines + 1 + (i - 1) / columns]; + } +} + diff --git a/src/c/statisticsFunctions/sum/ssuma.c b/src/c/statisticsFunctions/sum/ssuma.c new file mode 100644 index 0000000..aabc7fe --- /dev/null +++ b/src/c/statisticsFunctions/sum/ssuma.c @@ -0,0 +1,25 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "sum.h" + +float ssuma(float *in, int size) { + float accumulate = 0.0f; + int i = 0; + + for (i = 0; i < size; ++i) + { + accumulate += in[i]; + } + return accumulate; + +} diff --git a/src/c/statisticsFunctions/sum/testDoubleSum.c b/src/c/statisticsFunctions/sum/testDoubleSum.c new file mode 100644 index 0000000..b411a7d --- /dev/null +++ b/src/c/statisticsFunctions/sum/testDoubleSum.c @@ -0,0 +1,493 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <assert.h> +#include <stdio.h> +#include <math.h> +#include "sum.h" + +/* #define LOCAL_DEBUG */ + +#define ERROR(x) printf("diff = %e\n", x) + +static int dsumsTest(void) { + double value1 = 3.0; + double value2 = 1.123456789; + + printf("\n>>>> Sum Double Scalar Test\n"); + assert(dsums(value1) == 3.0); + assert(dsums(value2) == 1.123456789); + + return 0; +} + +static int dsumaTest(void) { + double table1[3] = {3.0, 3.0, 3.0}; + double table2[5] = {9.186784563, + 9.186784563, + 9.186784563, + 9.186784563, + 9.186784563}; + + printf("\n>>>> Sum Double Array Test\n"); + assert(dsuma(table1, 3) == 9.0); + assert((dsuma(table2, 5) - (9.186784653 + 9.186785634 + 9.186784563 + 9.186784563 + 9.186784563)) < 3e-16); + return 0; +} + +static int dcolumnsumaTest(void) { + int i = 0; + double table1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double table2[10] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0, 10.0}; + double columnSummedTable1_3_3[3] = {0}; + double columnSummedTable1_1_9[1] = {0}; + double columnSummedTable1_9_1[9] = {0}; + double columnSummedTable2_2_5[2] = {0}; + double columnSummedTable2_5_2[5] = {0}; + + printf("\n>>>> Column Sum Double Array Test\n"); + /* + [ 1 2 3 ] + [ 4 5 6 ] => [ 6 15 24 ] + [ 7 8 9 ] + */ + dcolumnsuma(table1, 3, 3,columnSummedTable1_3_3); + assert(columnSummedTable1_3_3[0] == 6.0); + assert(columnSummedTable1_3_3[1] == 15.0); + assert(columnSummedTable1_3_3[2] == 24.0); + + /* + [ 1 2 3 4 5 6 7 8 9 ] => [ 45 ] + */ + dcolumnsuma(table1, 1, 9,columnSummedTable1_1_9); + assert(columnSummedTable1_1_9[0] == 45.0); + + /* + [ 1 ] + [ 2 ] + [ 3 ] + [ 4 ] + [ 5 ] => [ 1 2 3 4 5 6 7 8 9 ] + [ 6 ] + [ 7 ] + [ 8 ] + [ 9 ] + */ + dcolumnsuma(table1, 9, 1,columnSummedTable1_9_1); + for ( i = 0 ; i < 9 ; ++i) { + printf("columnSummedTable1_9_1[%d] = %e\n", i, columnSummedTable1_9_1[i]); + assert(columnSummedTable1_9_1[i] == table1[i]); + } + + /* + [ 1 3 5 7 9 ] + [ 2 4 6 8 10 ] => [ 25 30 ] + */ + dcolumnsuma(table2, 2, 5,columnSummedTable2_2_5); + assert(columnSummedTable2_2_5[0] == 25.0); + assert(columnSummedTable2_2_5[1] == 30.0); + for ( i = 0 ; i < 2 ; ++i) { + printf("columnSummedTable2_2_5[%d] = %e\n", i, columnSummedTable2_2_5[i]); + } + + /* + [ 1 6 ] + [ 2 7 ] => [ 7 9 11 13 15 ] + [ 3 8 ] + [ 4 9 ] + [ 5 10 ] + */ + dcolumnsuma(table2, 5, 2,columnSummedTable2_5_2); + assert(columnSummedTable2_5_2[0] == 7.0); + assert(columnSummedTable2_5_2[1] == 9.0); + assert(columnSummedTable2_5_2[2] == 11.0); + assert(columnSummedTable2_5_2[3] == 13.0); + assert(columnSummedTable2_5_2[4] == 15.0); + for ( i = 0 ; i < 5 ; ++i) { + printf("columnSummedTable2_5_2[%d] = %e\n", i, columnSummedTable2_5_2[i]); + } + + return 0; +} + +static int drowsumaTest(void) { + int i = 0; + double table1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double table2[10] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0, 10.0}; + double rowSummedTable1_3_3[3] = {0}; + double rowSummedTable1_1_9[9] = {0}; + double rowSummedTable1_9_1[1] = {0}; + double rowSummedTable2_2_5[5] = {0}; + double rowSummedTable2_5_2[2] = {0}; + + printf("\n>>>> Row Sum Double Array Test\n"); + /* + [ 1 2 3 ] + [ 4 5 6 ] => [ 12 15 18 ] + [ 7 8 9 ] + */ + drowsuma(table1, 3, 3,rowSummedTable1_3_3); + for ( i = 0 ; i < 3 ; ++i) { + printf("rowSummedTable1_3_3[%d] = %e\n", i, rowSummedTable1_3_3[i]); + } + assert(rowSummedTable1_3_3[0] == 12.0); + assert(rowSummedTable1_3_3[1] == 15.0); + assert(rowSummedTable1_3_3[2] == 18.0); + + /* + [ 1 ] + [ 2 ] + [ 3 ] + [ 4 ] + [ 5 ] => [ 1 2 3 4 5 6 7 8 9 ] + [ 6 ] + [ 7 ] + [ 8 ] + [ 9 ] + */ + drowsuma(table1, 1, 9,rowSummedTable1_1_9); + for ( i = 0 ; i < 9 ; ++i) { + printf("rowSummedTable1_1_9[%d] = %e\n", i, rowSummedTable1_1_9[i]); + assert(rowSummedTable1_1_9[i] == table1[i]); + } + + /* + [ 1 2 3 4 5 6 7 8 9 ] => [ 45 ] + */ + drowsuma(table1, 9, 1,rowSummedTable1_9_1); + assert(rowSummedTable1_9_1[0] == 45.0); + + /* + [ 1 3 5 7 9 ] + [ 2 4 6 8 10 ] => [ 3 7 11 15 19 ] + */ + drowsuma(table2, 2, 5,rowSummedTable2_2_5); + assert(rowSummedTable2_2_5[0] == 3.0); + assert(rowSummedTable2_2_5[1] == 7.0); + assert(rowSummedTable2_2_5[2] == 11.0); + assert(rowSummedTable2_2_5[3] == 15.0); + assert(rowSummedTable2_2_5[4] == 19.0); + for ( i = 0 ; i < 5 ; ++i) { + printf("rowSummedTable2_2_5[%d] = %e\n", i, rowSummedTable2_2_5[i]); + } + + /* + [ 1 6 ] + [ 2 7 ] => [ 15 40 ] + [ 3 8 ] + [ 4 9 ] + [ 5 10 ] + */ + drowsuma(table2, 5, 2,rowSummedTable2_5_2); + assert(rowSummedTable2_5_2[0] == 15.0); + assert(rowSummedTable2_5_2[1] == 40.0); + for ( i = 0 ; i < 2 ; ++i) { + printf("rowSummedTable2_5_2[%d] = %e\n", i, rowSummedTable2_5_2[i]); + } + + return 0; +} + +static int zsumsTest(void) { + doubleComplex value1 = DoubleComplex(3.0, 3.0); + doubleComplex value2 = DoubleComplex(1.123456789, 1.123456789); + + printf("\n>>>> Sum Double Complex Scalar Test\n"); + assert(zreals(zsums(value1)) == 3.0); + assert(zimags(zsums(value1)) == 3.0); + assert(zreals(zsums(value2)) == 1.123456789); + assert(zimags(zsums(value2)) == 1.123456789); + return 0; +} + +static int zsumaTest(void) { + doubleComplex value1 = DoubleComplex(3.0, 3.0); + doubleComplex table1[3]; + doubleComplex value2 = DoubleComplex(9.186784563,9.186784563); + doubleComplex table2[5]; + + printf("\n>>>> Sum Double Complex Array Test\n"); + table1[0] = value1; + table1[1] = value1; + table1[2] = value1; + + table2[0] = value2; + table2[1] = value2; + table2[2] = value2; + table2[3] = value2; + table2[4] = value2; + +#ifdef LOCAL_DEBUG + printf("--------\n"); + printf("%e\n", zimags(zsuma(table1, 3))); + printf("%e\n", zreals(zsuma(table2, 5))); + printf("%e\n", zimags(zsuma(table2, 5))); + printf("%e\n", zreals(zsuma(table2, 5))); + printf("%e\n", zimags(zsuma(table2, 5))); + printf("--------\n"); +#endif + assert(zreals(zsuma(table1, 3)) == 9.0); + assert(zimags(zsuma(table1, 3)) == 9.0); + assert(zreals(zsuma(table2, 5)) == 9.186784563 + 9.186784563 + 9.186784563 + 9.186784563 + 9.186784563); + assert(zimags(zsuma(table2, 5)) == 9.186784563 + 9.186784563 + 9.186784563 + 9.186784563 + 9.186784563); + + return 0; +} + +static int zrowsumaTest(void) { + int i = 0; + doubleComplex in[12]; + doubleComplex rowSummedIn_4_3[3]; + doubleComplex rowSummedIn_3_4[4]; + doubleComplex rowSummedIn_6_2[2]; + doubleComplex rowSummedIn_2_6[6]; + doubleComplex rowSummedIn_1_12[12]; + doubleComplex rowSummedIn_12_1[1]; + + printf("\n>>>> Row Sum Double Complex Array Test\n"); + /* Init input var */ + for (i = 0 ; i < 12 ; ++i) + { + in[i] = DoubleComplex((double) i / 10.0, (11.0 - (double) i) / 10.0); + } + + /* + [ 1.1i 0.4+0.7i 0.8+0.3i ] + [ 0.1+i 0.5+0.6i 0.9+0.2i ] => [ 0.6+3.8i 2.2+2.2i 3.8+0.6i ] + [ 0.2+0.9i 0.6+0.5i 1+0.1i ] + [ 0.3+0.8i 0.7+0.4i 1.1 ] + */ + zrowsuma(in, 4, 3, rowSummedIn_4_3); + for (i = 0 ; i < 3 ; ++i) { + printf("rowSummedIn_4_3[%d] = %e + %ei\n", i, zreals(rowSummedIn_4_3[i]), zimags(rowSummedIn_4_3[i])); + } + assert(fabs(zreals(rowSummedIn_4_3[0]) -0.6) < 2e-16); + assert(zimags(rowSummedIn_4_3[0]) == 3.8); + assert(zreals(rowSummedIn_4_3[1]) == 2.2); + assert(fabs(zimags(rowSummedIn_4_3[1]) - 2.2) < 1e-15); + assert(fabs(zreals(rowSummedIn_4_3[2]) - 3.8) < 1e-15); + assert(zimags(rowSummedIn_4_3[2]) == 0.6); + + /* + [ 1.1i 0.3+0.8i 0.6+0.5i 0.9+0.2i ] + [ 0.1+i 0.4+0.7i 0.7+0.4i 1+0.1i ] => [ 0.3+3.i 1.2+2.1i 2.1+1.2i 3.+0.3i] + [ 0.2+0.9i 0.5+0.6i 0.8+0.3i 1.1 ] + */ + zrowsuma(in, 3, 4, rowSummedIn_3_4); + for (i = 0 ; i < 4 ; ++i) { + printf("rowSummedIn_3_4[%d] = %e + %ei\n", i, zreals(rowSummedIn_3_4[i]), zimags(rowSummedIn_3_4[i])); + } + assert(fabs(zreals(rowSummedIn_3_4[0]) - 0.3) < 1e-16); + assert(zimags(rowSummedIn_3_4[0]) == 3.0); + assert(zreals(rowSummedIn_3_4[1]) == 1.2 && zimags(rowSummedIn_3_4[1]) == 2.1); + assert(fabs(zreals(rowSummedIn_3_4[2]) - 2.1) < 1e-15); + assert(zimags(rowSummedIn_3_4[2]) == 1.2); + assert(zreals(rowSummedIn_3_4[3]) == 3.0); + assert(fabs(zimags(rowSummedIn_3_4[3]) - 0.3) < 1e-16); + + /* + [ 1.1i 0.6+0.5i ] + [ 0.1+i 0.7+0.4i ] + [ 0.2+0.9i 0.8+0.3i ] => [ 1.5+5.1i 5.1+1.5i ] + [ 0.3+0.8i 0.9+0.2i ] + [ 0.4+0.7i 1+0.1i ] + [ 0.5+0.6i 1.1 ] + */ + zrowsuma(in, 6, 2, rowSummedIn_6_2); + for (i = 0 ; i < 2 ; ++i) { + printf("rowSummedIn_6_2[%d] = %e + %ei\n", i, zreals(rowSummedIn_6_2[i]), zimags(rowSummedIn_6_2[i])); + } + assert(zreals(rowSummedIn_6_2[0]) == 1.5 && zimags(rowSummedIn_6_2[0]) == 5.1); + assert(zreals(rowSummedIn_6_2[1]) == 5.1 && zimags(rowSummedIn_6_2[1]) == 1.5); + + /* + [ 1.1i 0.2+0.9i 0.4+0.7i 0.6+0.5i 0.8+0.3i 1+0.1i ] + [ 0.1+i 0.3+0.8i 0.5+0.6i 0.7+0.4i 0.9+0.2i 1.1 ] => [ 0.1+2.1i 0.5+1.7i 0.9+1.3i 1.3+0.9i 1.7+0.5i 2.1+0.1i ] + */ + zrowsuma(in, 2, 6, rowSummedIn_2_6); + for (i = 0 ; i < 6 ; ++i) { + printf("rowSummedIn_2_6[%d] = %e + %ei\n", i, zreals(rowSummedIn_2_6[i]), zimags(rowSummedIn_2_6[i])); + } + assert(zreals(rowSummedIn_2_6[0]) == 0.1 && zimags(rowSummedIn_2_6[0]) == 2.1); + assert(zreals(rowSummedIn_2_6[1]) == 0.5); + assert(fabs(zimags(rowSummedIn_2_6[1]) - 1.7) < 3e-16); + assert(zreals(rowSummedIn_2_6[2]) == 0.9); + assert(fabs(zimags(rowSummedIn_2_6[2]) - 1.3) < 3e-16); + assert(fabs(zreals(rowSummedIn_2_6[3]) - 1.3) < 3e-16); + assert(zimags(rowSummedIn_2_6[3]) == 0.9); + assert(fabs(zreals(rowSummedIn_2_6[4]) - 1.7) < 3e-16); + assert(zimags(rowSummedIn_2_6[4]) == 0.5); + assert(zreals(rowSummedIn_2_6[5]) == 2.1 && zimags(rowSummedIn_2_6[5]) == 0.1); + + /* + [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + => + [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + */ + zrowsuma(in, 1, 12, rowSummedIn_1_12); + for (i = 0 ; i < 12 ; ++i) { + printf("rowSummedIn_1_12[%d] = %e + %ei\n", i, zreals(rowSummedIn_1_12[i]), zimags(rowSummedIn_1_12[i])); + assert(zreals(rowSummedIn_1_12[i]) == zreals(in[i]) && zimags(rowSummedIn_1_12[i]) == zimags(in[i])); + } + + /* + [ 1.1i ] + [ 0.1+i ] + [ 0.2+0.9i ] + [ 0.3+0.8i ] + [ 0.4+0.7i ] + [ 0.5+0.6i ] + [ 0.6+0.5i ] => [ 6.6+6.6i ] + [ 0.7+0.4i ] + [ 0.8+0.3i ] + [ 0.9+0.2i ] + [ 1+0.1i ] + [ 1.1 ] + */ + zrowsuma(in, 12, 1, rowSummedIn_12_1); + printf("rowSummedIn_12_1[%d] = %e + %ei\n", 0, zreals(rowSummedIn_12_1[0]), zimags(rowSummedIn_12_1[0])); + assert(zreals(rowSummedIn_12_1[0]) == 6.6 && zimags(rowSummedIn_12_1[0]) == 6.6); + + return 0; +} + +static int zcolumnsumaTest(void) { + int i = 0; + doubleComplex in[12]; + doubleComplex columnSummedIn_4_3[4]; + doubleComplex columnSummedIn_3_4[3]; + doubleComplex columnSummedIn_6_2[6]; + doubleComplex columnSummedIn_2_6[2]; + doubleComplex columnSummedIn_1_12[1]; + doubleComplex columnSummedIn_12_1[12]; + + printf("\n>>>> ColumnSum Double Complex Array Test\n"); + /* Init input var */ + for (i = 0 ; i < 12 ; ++i) + { + in[i] = DoubleComplex((double) i / 10.0, (11.0 - (double) i) / 10.0); + } + + /* + [ 1.1i 0.4+0.7i 0.8+0.3i ] + [ 0.1+i 0.5+0.6i 0.9+0.2i ] => [ 1.2+2.1i 1.5+1.8i 1.8+1.5i 2.1+1.2i ] + [ 0.2+0.9i 0.6+0.5i 1+0.1i ] + [ 0.3+0.8i 0.7+0.4i 1.1 ] + */ + zcolumnsuma(in, 4, 3, columnSummedIn_4_3); + for (i = 0 ; i < 4 ; ++i) { + printf("columnSummedIn_4_3[%d] = %e + %ei\n", i, zreals(columnSummedIn_4_3[i]), zimags(columnSummedIn_4_3[i])); + } + assert(fabs(zreals(columnSummedIn_4_3[0]) - 1.2) < 1e-15); + assert(zimags(columnSummedIn_4_3[0]) == 2.1); + assert(zreals(columnSummedIn_4_3[1]) == 1.5 && zimags(columnSummedIn_4_3[1]) == 1.8); + assert(zreals(columnSummedIn_4_3[2]) == 1.8 && zimags(columnSummedIn_4_3[2]) == 1.5); + assert(zreals(columnSummedIn_4_3[3]) == 2.1); + assert(fabs(zimags(columnSummedIn_4_3[3]) - 1.2) < 1e-15); + + /* + [ 1.1i 0.3+0.8i 0.6+0.5i 0.9+0.2i ] + [ 0.1+i 0.4+0.7i 0.7+0.4i 1+0.1i ] => [ 1.8+2.6i 2.2+2.2i 2.6+1.8i ] + [ 0.2+0.9i 0.5+0.6i 0.8+0.3i 1.1 ] + */ + zcolumnsuma(in, 3, 4, columnSummedIn_3_4); + for (i = 0 ; i < 3 ; ++i) { + printf("columnSummedIn_3_4[%d] = %e + %ei\n", i, zreals(columnSummedIn_3_4[i]), zimags(columnSummedIn_3_4[i])); + } + assert(fabs(zreals(columnSummedIn_3_4[0]) - 1.8) < 1e-15); + assert(fabs(zimags(columnSummedIn_3_4[0]) - 2.6) < 1e-15); + assert(zreals(columnSummedIn_3_4[1]) == 2.2 && zimags(columnSummedIn_3_4[1]) == 2.2); + assert(zreals(columnSummedIn_3_4[2]) == 2.6 && zimags(columnSummedIn_3_4[2]) == 1.8); + + /* + [ 1.1i 0.6+0.5i ] + [ 0.1+i 0.7+0.4i ] + [ 0.2+0.9i 0.8+0.3i ] => [ 0.6+1.6i 0.8+1.4i 1+1.2i 1.2+i 1.4+0.8i 1.6+0.6i ] + [ 0.3+0.8i 0.9+0.2i ] + [ 0.4+0.7i 1+0.1i ] + [ 0.5+0.6i 1.1 ] + */ + zcolumnsuma(in, 6, 2, columnSummedIn_6_2); + for (i = 0 ; i < 6 ; ++i) { + printf("columnSummedIn_6_2[%d] = %e + %ei\n", i, zreals(columnSummedIn_6_2[i]), zimags(columnSummedIn_6_2[i])); + } + assert(zreals(columnSummedIn_6_2[0]) == 0.6 && zimags(columnSummedIn_6_2[0]) == 1.6); + assert(fabs(zreals(columnSummedIn_6_2[1]) - 0.8) < 1e-15); + assert(zimags(columnSummedIn_6_2[1]) == 1.4); + assert(zreals(columnSummedIn_6_2[2]) == 1.0 && zimags(columnSummedIn_6_2[2]) == 1.2); + assert(zreals(columnSummedIn_6_2[3]) == 1.2 && zimags(columnSummedIn_6_2[3]) == 1.0); + assert(zreals(columnSummedIn_6_2[4]) == 1.4); + assert(fabs(zimags(columnSummedIn_6_2[4]) - 0.8) < 1e-15); + assert(zreals(columnSummedIn_6_2[5]) == 1.6 && zimags(columnSummedIn_6_2[5]) == 0.6); + + /* + [ 1.1i 0.2+0.9i 0.4+0.7i 0.6+0.5i 0.8+0.3i 1+0.1i ] + [ 0.1+i 0.3+0.8i 0.5+0.6i 0.7+0.4i 0.9+0.2i 1.1 ] => [ 3+3.6i 3.6+3i ] + */ + zcolumnsuma(in, 2, 6, columnSummedIn_2_6); + for (i = 0 ; i < 2 ; ++i) { + printf("columnSummedIn_2_6[%d] = %e + %ei\n", i, zreals(columnSummedIn_2_6[i]), zimags(columnSummedIn_2_6[i])); + } + assert(zreals(columnSummedIn_2_6[0]) == 3.0 && zimags(columnSummedIn_2_6[0]) == 3.6); + assert(zreals(columnSummedIn_2_6[1]) == 3.6 && zimags(columnSummedIn_2_6[1]) == 3.0); + + /* + [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + => + [ 6.6+6.6i ] + */ + zcolumnsuma(in, 1, 12, columnSummedIn_1_12); + printf("columnSummedIn_1_12[%d] = %e + %ei\n", 0, zreals(columnSummedIn_1_12[0]), zimags(columnSummedIn_1_12[0])); + assert(zreals(columnSummedIn_1_12[0]) == 6.6 && zimags(columnSummedIn_1_12[0]) == 6.6); + + + /* + [ 1.1i ] + [ 0.1+i ] + [ 0.2+0.9i ] + [ 0.3+0.8i ] + [ 0.4+0.7i ] + [ 0.5+0.6i ] + [ 0.6+0.5i ] => [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + [ 0.7+0.4i ] + [ 0.8+0.3i ] + [ 0.9+0.2i ] + [ 1+0.1i ] + [ 1.1 ] + */ + zcolumnsuma(in, 12, 1, columnSummedIn_12_1); + for (i = 0 ; i < 12 ; ++i) { + printf("columnSummedIn_12_1[%d] = %e + %ei\n", i, zreals(columnSummedIn_12_1[i]), zimags(columnSummedIn_12_1[i])); + assert(zreals(columnSummedIn_12_1[i]) == zreals(in[i]) && zimags(columnSummedIn_12_1[i]) == zimags(in[i])); + } + + return 0; +} + +static int testSum(void) { + + dsumsTest(); + dsumaTest(); + drowsumaTest(); + dcolumnsumaTest(); + zsumsTest(); + zsumaTest(); + zrowsumaTest(); + zcolumnsumaTest(); + + return 0; +} + +int main(void) { + assert(testSum() == 0); + return 0; +} diff --git a/src/c/statisticsFunctions/sum/testFloatSum.c b/src/c/statisticsFunctions/sum/testFloatSum.c new file mode 100644 index 0000000..090075c --- /dev/null +++ b/src/c/statisticsFunctions/sum/testFloatSum.c @@ -0,0 +1,481 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <assert.h> +#include <stdio.h> +#include <math.h> +#include "sum.h" + +/* #define LOCAL_DEBUG */ + +static int ssumsTest(void) { + float value1 = 3.0f; + float value2 = 1.123456789f; + + printf("\n>>>> Sum Float Scalar Test\n"); + assert(ssums(value1) == 3.0f); + assert(ssums(value2) == 1.123456789f); + + return 0; +} + +static int ssumaTest(void) { + float table1[3] = {3.0f, 3.0f, 3.0f}; + float table2[5] = {9.186784563f, + 9.186784563f, + 9.186784563f, + 9.186784563f, + 9.186784563f}; + + printf("\n>>>> Sum Float Array Test\n"); + assert(ssuma(table1, 3) == 9.0f); + assert((ssuma(table2, 5) - (9.186784f + 9.186784f + 9.186784f + 9.186784f + 9.186784f)) / ssuma(table2, 5) < 1e-6); + return 0; +} + +static int scolumnsumaTest(void) { + int i = 0; + float table1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float table2[10] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f}; + float columnSummedTable1_3_3[3] = {0}; + float columnSummedTable1_1_9[1] = {0}; + float columnSummedTable1_9_1[9] = {0}; + float columnSummedTable2_2_5[2] = {0}; + float columnSummedTable2_5_2[5] = {0}; + + printf("\n>>>> Column Sum Float Array Test\n"); + /* + [ 1 2 3 ] + [ 4 5 6 ] => [ 6 15 24 ] + [ 7 8 9 ] + */ + scolumnsuma(table1, 3, 3,columnSummedTable1_3_3); + assert(columnSummedTable1_3_3[0] == 6.0f); + assert(columnSummedTable1_3_3[1] == 15.0f); + assert(columnSummedTable1_3_3[2] == 24.0f); + + /* + [ 1 2 3 4 5 6 7 8 9 ] => [ 45 ] + */ + scolumnsuma(table1, 1, 9,columnSummedTable1_1_9); + assert(columnSummedTable1_1_9[0] == 45.0f); + + /* + [ 1 ] + [ 2 ] + [ 3 ] + [ 4 ] + [ 5 ] => [ 1 2 3 4 5 6 7 8 9 ] + [ 6 ] + [ 7 ] + [ 8 ] + [ 9 ] + */ + scolumnsuma(table1, 9, 1,columnSummedTable1_9_1); + for ( i = 0 ; i < 9 ; ++i) { + printf("columnSummedTable1_9_1[%d] = %e\n", i, columnSummedTable1_9_1[i]); + assert(columnSummedTable1_9_1[i] == table1[i]); + } + + /* + [ 1 3 5 7 9 ] + [ 2 4 6 8 10 ] => [ 25 30 ] + */ + scolumnsuma(table2, 2, 5,columnSummedTable2_2_5); + assert(columnSummedTable2_2_5[0] == 25.0f); + assert(columnSummedTable2_2_5[1] == 30.0f); + for ( i = 0 ; i < 2 ; ++i) { + printf("columnSummedTable2_2_5[%d] = %e\n", i, columnSummedTable2_2_5[i]); + } + + /* + [ 1 6 ] + [ 2 7 ] => [ 7 9 11 13 15 ] + [ 3 8 ] + [ 4 9 ] + [ 5 10 ] + */ + scolumnsuma(table2, 5, 2,columnSummedTable2_5_2); + assert(columnSummedTable2_5_2[0] == 7.0f); + assert(columnSummedTable2_5_2[1] == 9.0f); + assert(columnSummedTable2_5_2[2] == 11.0f); + assert(columnSummedTable2_5_2[3] == 13.0f); + assert(columnSummedTable2_5_2[4] == 15.0f); + for ( i = 0 ; i < 5 ; ++i) { + printf("columnSummedTable2_5_2[%d] = %e\n", i, columnSummedTable2_5_2[i]); + } + + return 0; +} + +static int srowsumaTest(void) { + int i = 0; + float table1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float table2[10] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f}; + float rowSummedTable1_3_3[3] = {0}; + float rowSummedTable1_1_9[9] = {0}; + float rowSummedTable1_9_1[1] = {0}; + float rowSummedTable2_2_5[5] = {0}; + float rowSummedTable2_5_2[2] = {0}; + + printf("\n>>>> Row Sum Float Array Test\n"); + /* + [ 1 2 3 ] + [ 4 5 6 ] => [ 12 15 18 ] + [ 7 8 9 ] + */ + srowsuma(table1, 3, 3,rowSummedTable1_3_3); + for ( i = 0 ; i < 3 ; ++i) { + printf("rowSummedTable1_3_3[%d] = %e\n", i, rowSummedTable1_3_3[i]); + } + assert(rowSummedTable1_3_3[0] == 12.0f); + assert(rowSummedTable1_3_3[1] == 15.0f); + assert(rowSummedTable1_3_3[2] == 18.0f); + + /* + [ 1 ] + [ 2 ] + [ 3 ] + [ 4 ] + [ 5 ] => [ 1 2 3 4 5 6 7 8 9 ] + [ 6 ] + [ 7 ] + [ 8 ] + [ 9 ] + */ + srowsuma(table1, 1, 9,rowSummedTable1_1_9); + for ( i = 0 ; i < 9 ; ++i) { + printf("rowSummedTable1_1_9[%d] = %e\n", i, rowSummedTable1_1_9[i]); + assert(rowSummedTable1_1_9[i] == table1[i]); + } + + /* + [ 1 2 3 4 5 6 7 8 9 ] => [ 45 ] + */ + srowsuma(table1, 9, 1,rowSummedTable1_9_1); + assert(rowSummedTable1_9_1[0] == 45.0f); + + /* + [ 1 3 5 7 9 ] + [ 2 4 6 8 10 ] => [ 3 7 11 15 19 ] + */ + srowsuma(table2, 2, 5,rowSummedTable2_2_5); + assert(rowSummedTable2_2_5[0] == 3.0f); + assert(rowSummedTable2_2_5[1] == 7.0f); + assert(rowSummedTable2_2_5[2] == 11.0f); + assert(rowSummedTable2_2_5[3] == 15.0f); + assert(rowSummedTable2_2_5[4] == 19.0f); + for ( i = 0 ; i < 5 ; ++i) { + printf("rowSummedTable2_2_5[%d] = %e\n", i, rowSummedTable2_2_5[i]); + } + + /* + [ 1 6 ] + [ 2 7 ] => [ 15 40 ] + [ 3 8 ] + [ 4 9 ] + [ 5 10 ] + */ + srowsuma(table2, 5, 2,rowSummedTable2_5_2); + assert(rowSummedTable2_5_2[0] == 15.0f); + assert(rowSummedTable2_5_2[1] == 40.0f); + for ( i = 0 ; i < 2 ; ++i) { + printf("rowSummedTable2_5_2[%d] = %e\n", i, rowSummedTable2_5_2[i]); + } + + return 0; +} + +static int csumsTest(void) { + floatComplex value1 = FloatComplex(3.0f, 3.0f); + floatComplex value2 = FloatComplex(1.123456789f, 1.123456789f); + + printf("\n>>>> Sum Float Complex Scalar Test\n"); + assert(creals(csums(value1)) == 3.0f); + assert(cimags(csums(value1)) == 3.0f); + assert(creals(csums(value2)) == 1.123456789f); + assert(cimags(csums(value2)) == 1.123456789f); + return 0; +} + +static int csumaTest(void) { + floatComplex value1 = FloatComplex(3.0f, 3.0f); + floatComplex table1[3]; + floatComplex value2 = FloatComplex(9.186784563f,9.186784563f); + floatComplex table2[5]; + + printf("\n>>>> Sum Float Complex Array Test\n"); + table1[0] = value1; + table1[1] = value1; + table1[2] = value1; + + table2[0] = value2; + table2[1] = value2; + table2[2] = value2; + table2[3] = value2; + table2[4] = value2; + +#ifdef LOCAL_DEBUG + printf("--------\n"); + printf("%e\n", cimags(csuma(table1, 3))); + printf("%e\n", creals(csuma(table2, 5))); + printf("%e\n", cimags(csuma(table2, 5))); + printf("%e\n", creals(csuma(table2, 5))); + printf("%e\n", cimags(csuma(table2, 5))); + printf("--------\n"); +#endif + assert(creals(csuma(table1, 3)) == 9.0f); + assert(cimags(csuma(table1, 3)) == 9.0f); + assert(creals(csuma(table2, 5)) == 9.186784563f + 9.186784563f + 9.186784563f + 9.186784563f + 9.186784563f); + assert(cimags(csuma(table2, 5)) == 9.186784563f + 9.186784563f + 9.186784563f + 9.186784563f + 9.186784563f); + + return 0; +} + +static int crowsumaTest(void) { + int i = 0; + floatComplex in[12]; + floatComplex rowSummedIn_4_3[3]; + floatComplex rowSummedIn_3_4[4]; + floatComplex rowSummedIn_6_2[2]; + floatComplex rowSummedIn_2_6[6]; + floatComplex rowSummedIn_1_12[12]; + floatComplex rowSummedIn_12_1[1]; + + printf("\n>>>> Row Sum Float Complex Array Test\n"); + /* Init input var */ + for (i = 0 ; i < 12 ; ++i) + { + in[i] = FloatComplex((float) i / 10.0f, (11.0f - (float) i) / 10.0f); + } + + /* + [ 1.1i 0.4+0.7i 0.8+0.3i ] + [ 0.1+i 0.5+0.6i 0.9+0.2i ] => [ 0.6+3.8i 2.2+2.2i 3.8+0.6i ] + [ 0.2+0.9i 0.6+0.5i 1+0.1i ] + [ 0.3+0.8i 0.7+0.4i 1.1 ] + */ + crowsuma(in, 4, 3, rowSummedIn_4_3); + for (i = 0 ; i < 3 ; ++i) { + printf("rowSummedIn_4_3[%d] = %e + %ei\n", i, creals(rowSummedIn_4_3[i]), cimags(rowSummedIn_4_3[i])); + } + assert(creals(rowSummedIn_4_3[0]) == 0.6f && cimags(rowSummedIn_4_3[0]) == 3.8f); + assert(creals(rowSummedIn_4_3[1]) == 2.2f && cimags(rowSummedIn_4_3[1]) == 2.2f); + assert(fabs(creals(rowSummedIn_4_3[2]) - 3.8f) < 1e-06); + assert(cimags(rowSummedIn_4_3[2]) == 0.6f); + + /* + [ 1.1i 0.3+0.8i 0.6+0.5i 0.9+0.2i ] + [ 0.1+i 0.4+0.7i 0.7+0.4i 1+0.1i ] => [ 0.3+3.i 1.2+2.1i 2.1+1.2i 3.+0.3i] + [ 0.2+0.9i 0.5+0.6i 0.8+0.3i 1.1 ] + */ + crowsuma(in, 3, 4, rowSummedIn_3_4); + for (i = 0 ; i < 4 ; ++i) { + printf("rowSummedIn_3_4[%d] = %e + %ei\n", i, creals(rowSummedIn_3_4[i]), cimags(rowSummedIn_3_4[i])); + } + assert(creals(rowSummedIn_3_4[0]) == 0.3f && cimags(rowSummedIn_3_4[0]) == 3.0f); + assert(creals(rowSummedIn_3_4[1]) == 1.2f && cimags(rowSummedIn_3_4[1]) == 2.1f); + assert(creals(rowSummedIn_3_4[2]) == 2.1f && cimags(rowSummedIn_3_4[2]) == 1.2f); + assert(creals(rowSummedIn_3_4[3]) == 3.0f && cimags(rowSummedIn_3_4[3]) == 0.3f); + + /* + [ 1.1i 0.6+0.5i ] + [ 0.1+i 0.7+0.4i ] + [ 0.2+0.9i 0.8+0.3i ] => [ 1.5+5.1i 5.1+1.5i ] + [ 0.3+0.8i 0.9+0.2i ] + [ 0.4+0.7i 1+0.1i ] + [ 0.5+0.6i 1.1 ] + */ + crowsuma(in, 6, 2, rowSummedIn_6_2); + for (i = 0 ; i < 2 ; ++i) { + printf("rowSummedIn_6_2[%d] = %e + %ei\n", i, creals(rowSummedIn_6_2[i]), cimags(rowSummedIn_6_2[i])); + } + assert(creals(rowSummedIn_6_2[0]) == 1.5f && cimags(rowSummedIn_6_2[0]) == 5.1f); + assert(creals(rowSummedIn_6_2[1]) == 5.1f); + assert(fabs(cimags(rowSummedIn_6_2[1]) - 1.5f) < 1e-06); + + /* + [ 1.1i 0.2+0.9i 0.4+0.7i 0.6+0.5i 0.8+0.3i 1+0.1i ] + [ 0.1+i 0.3+0.8i 0.5+0.6i 0.7+0.4i 0.9+0.2i 1.1 ] => [ 0.1+2.1i 0.5+1.7i 0.9+1.3i 1.3+0.9i 1.7+0.5i 2.1+0.1i ] + */ + crowsuma(in, 2, 6, rowSummedIn_2_6); + for (i = 0 ; i < 6 ; ++i) { + printf("rowSummedIn_2_6[%d] = %e + %ei\n", i, creals(rowSummedIn_2_6[i]), cimags(rowSummedIn_2_6[i])); + } + assert(creals(rowSummedIn_2_6[0]) == 0.1f && cimags(rowSummedIn_2_6[0]) == 2.1f); + assert(creals(rowSummedIn_2_6[1]) == 0.5f && cimags(rowSummedIn_2_6[1]) == 1.7f); + assert(creals(rowSummedIn_2_6[2]) == 0.9f && cimags(rowSummedIn_2_6[2]) == 1.3f); + assert(creals(rowSummedIn_2_6[3]) == 1.3f && cimags(rowSummedIn_2_6[3]) == 0.9f); + assert(creals(rowSummedIn_2_6[4]) == 1.7f && cimags(rowSummedIn_2_6[4]) == 0.5f); + assert(creals(rowSummedIn_2_6[5]) == 2.1f && cimags(rowSummedIn_2_6[5]) == 0.1f); + + /* + [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + => + [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + */ + crowsuma(in, 1, 12, rowSummedIn_1_12); + for (i = 0 ; i < 12 ; ++i) { + printf("rowSummedIn_1_12[%d] = %e + %ei\n", i, creals(rowSummedIn_1_12[i]), cimags(rowSummedIn_1_12[i])); + assert(creals(rowSummedIn_1_12[i]) == creals(in[i]) && cimags(rowSummedIn_1_12[i]) == cimags(in[i])); + } + + /* + [ 1.1i ] + [ 0.1+i ] + [ 0.2+0.9i ] + [ 0.3+0.8i ] + [ 0.4+0.7i ] + [ 0.5+0.6i ] + [ 0.6+0.5i ] => [ 6.6+6.6i ] + [ 0.7+0.4i ] + [ 0.8+0.3i ] + [ 0.9+0.2i ] + [ 1+0.1i ] + [ 1.1 ] + */ + crowsuma(in, 12, 1, rowSummedIn_12_1); + printf("rowSummedIn_12_1[%d] = %e + %ei\n", 0, creals(rowSummedIn_12_1[0]), cimags(rowSummedIn_12_1[0])); + assert(creals(rowSummedIn_12_1[0]) == 6.6f && cimags(rowSummedIn_12_1[0]) == 6.6f); + + return 0; +} + +static int ccolumnsumaTest(void) { + int i = 0; + floatComplex in[12]; + floatComplex columnSummedIn_4_3[4]; + floatComplex columnSummedIn_3_4[3]; + floatComplex columnSummedIn_6_2[6]; + floatComplex columnSummedIn_2_6[2]; + floatComplex columnSummedIn_1_12[1]; + floatComplex columnSummedIn_12_1[12]; + + printf("\n>>>> ColumnSum Float Complex Array Test\n"); + /* Init input var */ + for (i = 0 ; i < 12 ; ++i) + { + in[i] = FloatComplex((float) i / 10.0f, (11.0f - (float) i) / 10.0f); + } + + /* + [ 1.1i 0.4+0.7i 0.8+0.3i ] + [ 0.1+i 0.5+0.6i 0.9+0.2i ] => [ 1.2+2.1i 1.5+1.8i 1.8+1.5i 2.1+1.2i ] + [ 0.2+0.9i 0.6+0.5i 1+0.1i ] + [ 0.3+0.8i 0.7+0.4i 1.1 ] + */ + ccolumnsuma(in, 4, 3, columnSummedIn_4_3); + for (i = 0 ; i < 4 ; ++i) { + printf("columnSummedIn_4_3[%d] = %e + %ei\n", i, creals(columnSummedIn_4_3[i]), cimags(columnSummedIn_4_3[i])); + } + assert(creals(columnSummedIn_4_3[0]) == 1.2f && cimags(columnSummedIn_4_3[0]) == 2.1f); + assert(creals(columnSummedIn_4_3[1]) == 1.5f); + assert(fabs(cimags(columnSummedIn_4_3[1]) - 1.8f) < 1e-06); + assert(creals(columnSummedIn_4_3[2]) == 1.8f && cimags(columnSummedIn_4_3[2]) == 1.5f); + assert(creals(columnSummedIn_4_3[3]) == 2.1f && cimags(columnSummedIn_4_3[3]) == 1.2f); + + /* + [ 1.1i 0.3+0.8i 0.6+0.5i 0.9+0.2i ] + [ 0.1+i 0.4+0.7i 0.7+0.4i 1+0.1i ] => [ 1.8+2.6i 2.2+2.2i 2.6+1.8i ] + [ 0.2+0.9i 0.5+0.6i 0.8+0.3i 1.1 ] + */ + ccolumnsuma(in, 3, 4, columnSummedIn_3_4); + for (i = 0 ; i < 3 ; ++i) { + printf("columnSummedIn_3_4[%d] = %e + %ei\n", i, creals(columnSummedIn_3_4[i]), cimags(columnSummedIn_3_4[i])); + } + assert(creals(columnSummedIn_3_4[0]) == 1.8f); + assert(fabs(cimags(columnSummedIn_3_4[0]) - 2.6f) < 1e-06); + assert(creals(columnSummedIn_3_4[1]) == 2.2f && cimags(columnSummedIn_3_4[1]) == 2.2f); + assert(creals(columnSummedIn_3_4[2]) == 2.6f && cimags(columnSummedIn_3_4[2]) == 1.8f); + + /* + [ 1.1i 0.6+0.5i ] + [ 0.1+i 0.7+0.4i ] + [ 0.2+0.9i 0.8+0.3i ] => [ 0.6+1.6i 0.8+1.4i 1+1.2i 1.2+i 1.4+0.8i 1.6+0.6i ] + [ 0.3+0.8i 0.9+0.2i ] + [ 0.4+0.7i 1+0.1i ] + [ 0.5+0.6i 1.1 ] + */ + ccolumnsuma(in, 6, 2, columnSummedIn_6_2); + for (i = 0 ; i < 6 ; ++i) { + printf("columnSummedIn_6_2[%d] = %e + %ei\n", i, creals(columnSummedIn_6_2[i]), cimags(columnSummedIn_6_2[i])); + } + assert(creals(columnSummedIn_6_2[0]) == 0.6f && cimags(columnSummedIn_6_2[0]) == 1.6f); + assert(creals(columnSummedIn_6_2[1]) == 0.8f && cimags(columnSummedIn_6_2[1]) == 1.4f); + assert(creals(columnSummedIn_6_2[2]) == 1.0f && cimags(columnSummedIn_6_2[2]) == 1.2f); + assert(creals(columnSummedIn_6_2[3]) == 1.2f && cimags(columnSummedIn_6_2[3]) == 1.0f); + assert(creals(columnSummedIn_6_2[4]) == 1.4f && cimags(columnSummedIn_6_2[4]) == 0.8f); + assert(creals(columnSummedIn_6_2[5]) == 1.6f && cimags(columnSummedIn_6_2[5]) == 0.6f); + + /* + [ 1.1i 0.2+0.9i 0.4+0.7i 0.6+0.5i 0.8+0.3i 1+0.1i ] + [ 0.1+i 0.3+0.8i 0.5+0.6i 0.7+0.4i 0.9+0.2i 1.1 ] => [ 3+3.6i 3.6+3i ] + */ + ccolumnsuma(in, 2, 6, columnSummedIn_2_6); + for (i = 0 ; i < 2 ; ++i) { + printf("columnSummedIn_2_6[%d] = %e + %ei\n", i, creals(columnSummedIn_2_6[i]), cimags(columnSummedIn_2_6[i])); + } + assert(creals(columnSummedIn_2_6[0]) == 3.0f && cimags(columnSummedIn_2_6[0]) == 3.6f); + assert(creals(columnSummedIn_2_6[1]) == 3.6f); + assert(fabs(cimags(columnSummedIn_2_6[1]) -3.0f) < 1e-06); + + /* + [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + => + [ 6.6+6.6i ] + */ + ccolumnsuma(in, 1, 12, columnSummedIn_1_12); + printf("columnSummedIn_1_12[%d] = %e + %ei\n", 0, creals(columnSummedIn_1_12[0]), cimags(columnSummedIn_1_12[0])); + assert(creals(columnSummedIn_1_12[0]) == 6.6f && cimags(columnSummedIn_1_12[0]) == 6.6f); + + + /* + [ 1.1i ] + [ 0.1+i ] + [ 0.2+0.9i ] + [ 0.3+0.8i ] + [ 0.4+0.7i ] + [ 0.5+0.6i ] + [ 0.6+0.5i ] => [ 1.1i 0.1+i 0.2+0.9i 0.3+0.8i 0.4+0.7i 0.5+0.6i 0.6+0.5i 0.7+0.4i 0.8+0.3i 0.9+0.2i 1+0.1i 1.1 ] + [ 0.7+0.4i ] + [ 0.8+0.3i ] + [ 0.9+0.2i ] + [ 1+0.1i ] + [ 1.1 ] + */ + ccolumnsuma(in, 12, 1, columnSummedIn_12_1); + for (i = 0 ; i < 12 ; ++i) { + printf("columnSummedIn_12_1[%d] = %e + %ei\n", i, creals(columnSummedIn_12_1[i]), cimags(columnSummedIn_12_1[i])); + assert(creals(columnSummedIn_12_1[i]) == creals(in[i]) && cimags(columnSummedIn_12_1[i]) == cimags(in[i])); + } + + return 0; +} + +static int testSum(void) { + + ssumsTest(); + ssumaTest(); + srowsumaTest(); + scolumnsumaTest(); + csumsTest(); + csumaTest(); + crowsumaTest(); + ccolumnsumaTest(); + + return 0; +} + +int main(void) { + assert(testSum() == 0); + return 0; +} diff --git a/src/c/statisticsFunctions/sum/test_DoubleSum/testDoubleSum.vcxproj b/src/c/statisticsFunctions/sum/test_DoubleSum/testDoubleSum.vcxproj new file mode 100644 index 0000000..d82ed7c --- /dev/null +++ b/src/c/statisticsFunctions/sum/test_DoubleSum/testDoubleSum.vcxproj @@ -0,0 +1,178 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{F2A81CDC-2581-481F-B63D-3D2079B264C2}</ProjectGuid>
+ <RootNamespace>testDoubleSum</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testDoubleSum.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\..\..\type\type.vcxproj">
+ <Project>{9b1bd750-1fef-4d6b-9422-782d16181cee}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ <ProjectReference Include="..\..\statisticsFunctions.vcxproj">
+ <Project>{e11ed064-3bf2-4f70-b66e-3223c737ec60}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/sum/test_DoubleSum/testDoubleSum.vcxproj.filters b/src/c/statisticsFunctions/sum/test_DoubleSum/testDoubleSum.vcxproj.filters new file mode 100644 index 0000000..0bb90bb --- /dev/null +++ b/src/c/statisticsFunctions/sum/test_DoubleSum/testDoubleSum.vcxproj.filters @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testDoubleSum.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/sum/test_FloatSum/testFloatSum.vcxproj b/src/c/statisticsFunctions/sum/test_FloatSum/testFloatSum.vcxproj new file mode 100644 index 0000000..a8acdf0 --- /dev/null +++ b/src/c/statisticsFunctions/sum/test_FloatSum/testFloatSum.vcxproj @@ -0,0 +1,178 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{450C8334-BA46-43DB-81BA-7BEDBB346126}</ProjectGuid>
+ <RootNamespace>testFloatSum</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testFloatSum.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\..\..\type\type.vcxproj">
+ <Project>{9b1bd750-1fef-4d6b-9422-782d16181cee}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ <ProjectReference Include="..\..\statisticsFunctions.vcxproj">
+ <Project>{e11ed064-3bf2-4f70-b66e-3223c737ec60}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/sum/test_FloatSum/testFloatSum.vcxproj.filters b/src/c/statisticsFunctions/sum/test_FloatSum/testFloatSum.vcxproj.filters new file mode 100644 index 0000000..56ce3b3 --- /dev/null +++ b/src/c/statisticsFunctions/sum/test_FloatSum/testFloatSum.vcxproj.filters @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testFloatSum.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/sum/u16columnsuma.c b/src/c/statisticsFunctions/sum/u16columnsuma.c new file mode 100644 index 0000000..82b0775 --- /dev/null +++ b/src/c/statisticsFunctions/sum/u16columnsuma.c @@ -0,0 +1,35 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + + +#include "sum.h" + +void u16columnsuma(uint16 *in, int lines, int columns, uint16 * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < lines; ++i) + { + out[i] = (uint16)in[i]; + } + /* + ** Then accumulate in each row. + */ + for (i = lines ; i < lines * columns ; ++i) + { + out[i % lines] = (uint16)u16adds(out[i % lines] , in[i]); + } +} diff --git a/src/c/statisticsFunctions/sum/u16rowsuma.c b/src/c/statisticsFunctions/sum/u16rowsuma.c new file mode 100644 index 0000000..535e302 --- /dev/null +++ b/src/c/statisticsFunctions/sum/u16rowsuma.c @@ -0,0 +1,34 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sum.h" + +void u16rowsuma(uint16 *in, int lines, int columns, uint16 * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < columns; ++i) + { + out[i] = (uint16)in[i * lines]; + } + /* + ** Then accumulate in each column. + */ + for (i = 1 ; i <= (lines - 1) * columns ; ++i) + { + out[(i - 1) % columns] = (uint16)u16adds( out[(i - 1) % columns] , + in[((i - 1) % columns) * lines + 1 + (i - 1) / columns]); + } +} diff --git a/src/c/statisticsFunctions/sum/u16suma.c b/src/c/statisticsFunctions/sum/u16suma.c new file mode 100644 index 0000000..5e5620c --- /dev/null +++ b/src/c/statisticsFunctions/sum/u16suma.c @@ -0,0 +1,25 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + +#include "sum.h" + +uint16 u16suma(uint16 *in, int size) { + //floatComplex accumulate = FloatComplex(0.0f, 0.0f); + int i = 0; + uint16 accumulate = 0; + + for (i = 0; i < size; ++i) + { + accumulate = u16adds(accumulate, in[i]); + } + return accumulate; +} diff --git a/src/c/statisticsFunctions/sum/u8columnsuma.c b/src/c/statisticsFunctions/sum/u8columnsuma.c new file mode 100644 index 0000000..f3e3041 --- /dev/null +++ b/src/c/statisticsFunctions/sum/u8columnsuma.c @@ -0,0 +1,34 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "sum.h" + +void u8columnsuma(uint8 *in, int lines, int columns, uint8 * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < lines; ++i) + { + out[i] = (uint8)in[i]; + } + /* + ** Then accumulate in each row. + */ + for (i = lines ; i < lines * columns ; ++i) + { + out[i % lines] = (uint8)u8adds(out[i % lines] , in[i]); + } +} diff --git a/src/c/statisticsFunctions/sum/u8rowsuma.c b/src/c/statisticsFunctions/sum/u8rowsuma.c new file mode 100644 index 0000000..53a4944 --- /dev/null +++ b/src/c/statisticsFunctions/sum/u8rowsuma.c @@ -0,0 +1,35 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "sum.h" + +void u8rowsuma(uint8 *in, int lines, int columns, uint8 * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < columns; ++i) + { + out[i] = (uint8)in[i * lines]; + } + /* + ** Then accumulate in each column. + */ + for (i = 1 ; i <= (lines - 1) * columns ; ++i) + { + out[(i - 1) % columns] = (uint8)u8adds( out[(i - 1) % columns] , + in[((i - 1) % columns) * lines + 1 + (i - 1) / columns]); + } +} diff --git a/src/c/statisticsFunctions/sum/u8suma.c b/src/c/statisticsFunctions/sum/u8suma.c new file mode 100644 index 0000000..e5febef --- /dev/null +++ b/src/c/statisticsFunctions/sum/u8suma.c @@ -0,0 +1,26 @@ +/* Copyright (C) 2016 - IIT Bombay - FOSSEE + + This file must be used under the terms of the CeCILL. + This source file is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at + http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + Author: Siddhesh Wani + Organization: FOSSEE, IIT Bombay + Email: toolbox@scilab.in +*/ + + +#include "sum.h" + +uint8 u8suma(uint8 *in, int size) { + //floatComplex accumulate = FloatComplex(0.0f, 0.0f); + int i = 0; + uint8 accumulate = 0; + + for (i = 0; i < size; ++i) + { + accumulate = u8adds(accumulate, in[i]); + } + return accumulate; +} diff --git a/src/c/statisticsFunctions/sum/zcolumnsuma.c b/src/c/statisticsFunctions/sum/zcolumnsuma.c new file mode 100644 index 0000000..93e9753 --- /dev/null +++ b/src/c/statisticsFunctions/sum/zcolumnsuma.c @@ -0,0 +1,33 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "sum.h" + +void zcolumnsuma(doubleComplex *in, int lines, int columns, doubleComplex * out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < lines; ++i) + { + out[i] = in[i]; + } + /* + ** Then accumulate in each row. + */ + for (i = lines ; i < lines * columns ; ++i) + { + out[i % lines] = zadds(out[i % lines] , in[i]); + } +} diff --git a/src/c/statisticsFunctions/sum/zrowsuma.c b/src/c/statisticsFunctions/sum/zrowsuma.c new file mode 100644 index 0000000..abb62b5 --- /dev/null +++ b/src/c/statisticsFunctions/sum/zrowsuma.c @@ -0,0 +1,34 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "sum.h" + +void zrowsuma(doubleComplex *in, int lines, int columns, doubleComplex* out) { + int i = 0; + + /* + ** First assign first row, just in case + ** out contains non-zero's elements. + */ + for (i = 0 ; i < columns; ++i) + { + out[i] = in[i * lines]; + } + /* + ** Then accumulate in each column. + */ + for (i = 1 ; i <= (lines - 1) * columns ; ++i) + { + out[(i - 1) % columns] = zadds(out[(i - 1) % columns] , + in[((i - 1) % columns) * lines + 1 + (i - 1) / columns]); + } +} diff --git a/src/c/statisticsFunctions/sum/zsuma.c b/src/c/statisticsFunctions/sum/zsuma.c new file mode 100644 index 0000000..e566c95 --- /dev/null +++ b/src/c/statisticsFunctions/sum/zsuma.c @@ -0,0 +1,24 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "sum.h" + +doubleComplex zsuma(doubleComplex *in, int size) { + doubleComplex accumulate = DoubleComplex(0.0f, 0.0f); + int i = 0; + + for (i = 0; i < size; ++i) + { + accumulate = zadds(accumulate, in[i]); + } + return accumulate; +} diff --git a/src/c/statisticsFunctions/variance/Makefile.am b/src/c/statisticsFunctions/variance/Makefile.am new file mode 100644 index 0000000..d6fa70e --- /dev/null +++ b/src/c/statisticsFunctions/variance/Makefile.am @@ -0,0 +1,89 @@ +## +## Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +## Copyright (C) 2008-2008 - INRIA - Allan SIMON +## +## This file must be used under the terms of the CeCILL. +## This source file is licensed as described in the file COPYING, which +## you should have received as part of this distribution. The terms +## are also available at +## http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt +## +## + +libVariance_la_CFLAGS = -I $(top_builddir)/src/c/type \ + -I $(top_builddir)/src/c/elementaryFunctions/includes \ + -I $(top_builddir)/src/c/matrixOperations/includes \ + -I $(top_builddir)/src/c/operations/includes \ + -I ../includes + +instdir = $(top_builddir)/lib + +pkglib_LTLIBRARIES = libVariance.la + +libVariance_la_SOURCES = $(HEAD) $(SRC) + +SRC = svariancea.c \ + scolumnvariancea.c \ + dvariancea.c \ + srowvariancea.c \ + drowvariancea.c \ + dcolumnvariancea.c \ + cvariancea.c \ + crowvariancea.c \ + ccolumnvariancea.c \ + zvariancea.c \ + zrowvariancea.c \ + zcolumnvariancea.c + +HEAD = ../includes/variance.h + +#### +# Checking Part +#### + +check_INCLUDES = -I $(top_builddir)/src/c/statisticsFunctions/includes \ + -I $(top_builddir)/src/c/elementaryFunctions/includes \ + -I $(top_builddir)/src/c/matrixOperations/includes \ + -I $(top_builddir)/src/c/operations/includes \ + -I $(top_builddir)/src/c/type + +check_LDADD = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/c/operations/subtraction/libSubtraction.la \ + $(top_builddir)/src/fortran/lapack/libscilapack.la \ + $(top_builddir)/src/c/statisticsFunctions/variance/libVariance.la \ + $(top_builddir)/src/c/statisticsFunctions/sum/libSum.la \ + $(top_builddir)/src/c/statisticsFunctions/mean/libMean.la \ + $(top_builddir)/src/c/elementaryFunctions/pow/libPow.la \ + $(top_builddir)/src/c/elementaryFunctions/log/libLog.la \ + $(top_builddir)/src/c/elementaryFunctions/exp/libExp.la \ + $(top_builddir)/src/c/elementaryFunctions/cos/libCos.la \ + $(top_builddir)/src/c/elementaryFunctions/sin/libSin.la \ + $(top_builddir)/src/c/elementaryFunctions/cosh/libCosh.la \ + $(top_builddir)/src/c/elementaryFunctions/sinh/libSinh.la \ + $(top_builddir)/src/c/elementaryFunctions/sqrt/libSqrt.la \ + $(top_builddir)/src/c/elementaryFunctions/log1p/libLog1p.la \ + $(top_builddir)/src/c/elementaryFunctions/lnp1m1/libLnp1m1.la \ + $(top_builddir)/src/c/auxiliaryFunctions/pythag/libPythag.la \ + $(top_builddir)/src/c/auxiliaryFunctions/abs/libAbs.la \ + $(top_builddir)/src/c/matrixOperations/transpose/libMatrixTranspose.la \ + $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ + $(top_builddir)/src/c/operations/division/libDivision.la \ + $(top_builddir)/src/c/auxiliaryFunctions/conj/libConj.la \ + @LIBMATH@ + +check_PROGRAMS = testFloatVarianceNono testDoubleVarianceNono + +TESTS = testFloatVarianceNono testDoubleVarianceNono + +# +# -*- Variance Tests -*- +# +testFloatVarianceNono_SOURCES = testFloatVarianceNono.c +testFloatVarianceNono_CFLAGS = $(check_INCLUDES) +testFloatVarianceNono_LDADD = $(check_LDADD) + +testDoubleVarianceNono_SOURCES =testDoubleVarianceNono.c +testDoubleVarianceNono_CFLAGS = $(check_INCLUDES) +testDoubleVarianceNono_LDADD = $(check_LDADD) diff --git a/src/c/statisticsFunctions/variance/Makefile.in b/src/c/statisticsFunctions/variance/Makefile.in new file mode 100644 index 0000000..9320286 --- /dev/null +++ b/src/c/statisticsFunctions/variance/Makefile.in @@ -0,0 +1,884 @@ +# Makefile.in generated by automake 1.11.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +check_PROGRAMS = testFloatVarianceNono$(EXEEXT) \ + testDoubleVarianceNono$(EXEEXT) +TESTS = testFloatVarianceNono$(EXEEXT) testDoubleVarianceNono$(EXEEXT) +subdir = src/c/statisticsFunctions/variance +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/includes/machine.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__installdirs = "$(DESTDIR)$(pkglibdir)" +LTLIBRARIES = $(pkglib_LTLIBRARIES) +libVariance_la_LIBADD = +am__objects_1 = +am__objects_2 = libVariance_la-svariancea.lo \ + libVariance_la-scolumnvariancea.lo \ + libVariance_la-dvariancea.lo libVariance_la-srowvariancea.lo \ + libVariance_la-drowvariancea.lo \ + libVariance_la-dcolumnvariancea.lo \ + libVariance_la-cvariancea.lo libVariance_la-crowvariancea.lo \ + libVariance_la-ccolumnvariancea.lo \ + libVariance_la-zvariancea.lo libVariance_la-zrowvariancea.lo \ + libVariance_la-zcolumnvariancea.lo +am_libVariance_la_OBJECTS = $(am__objects_1) $(am__objects_2) +libVariance_la_OBJECTS = $(am_libVariance_la_OBJECTS) +libVariance_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(libVariance_la_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +am_testDoubleVarianceNono_OBJECTS = \ + testDoubleVarianceNono-testDoubleVarianceNono.$(OBJEXT) +testDoubleVarianceNono_OBJECTS = $(am_testDoubleVarianceNono_OBJECTS) +am__DEPENDENCIES_1 = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/c/operations/subtraction/libSubtraction.la \ + $(top_builddir)/src/fortran/lapack/libscilapack.la \ + $(top_builddir)/src/c/statisticsFunctions/variance/libVariance.la \ + $(top_builddir)/src/c/statisticsFunctions/sum/libSum.la \ + $(top_builddir)/src/c/statisticsFunctions/mean/libMean.la \ + $(top_builddir)/src/c/elementaryFunctions/pow/libPow.la \ + $(top_builddir)/src/c/elementaryFunctions/log/libLog.la \ + $(top_builddir)/src/c/elementaryFunctions/exp/libExp.la \ + $(top_builddir)/src/c/elementaryFunctions/cos/libCos.la \ + $(top_builddir)/src/c/elementaryFunctions/sin/libSin.la \ + $(top_builddir)/src/c/elementaryFunctions/cosh/libCosh.la \ + $(top_builddir)/src/c/elementaryFunctions/sinh/libSinh.la \ + $(top_builddir)/src/c/elementaryFunctions/sqrt/libSqrt.la \ + $(top_builddir)/src/c/elementaryFunctions/log1p/libLog1p.la \ + $(top_builddir)/src/c/elementaryFunctions/lnp1m1/libLnp1m1.la \ + $(top_builddir)/src/c/auxiliaryFunctions/pythag/libPythag.la \ + $(top_builddir)/src/c/auxiliaryFunctions/abs/libAbs.la \ + $(top_builddir)/src/c/matrixOperations/transpose/libMatrixTranspose.la \ + $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ + $(top_builddir)/src/c/operations/division/libDivision.la \ + $(top_builddir)/src/c/auxiliaryFunctions/conj/libConj.la +testDoubleVarianceNono_DEPENDENCIES = $(am__DEPENDENCIES_1) +testDoubleVarianceNono_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(testDoubleVarianceNono_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ + $(LDFLAGS) -o $@ +am_testFloatVarianceNono_OBJECTS = \ + testFloatVarianceNono-testFloatVarianceNono.$(OBJEXT) +testFloatVarianceNono_OBJECTS = $(am_testFloatVarianceNono_OBJECTS) +testFloatVarianceNono_DEPENDENCIES = $(am__DEPENDENCIES_1) +testFloatVarianceNono_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(testFloatVarianceNono_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ + $(LDFLAGS) -o $@ +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/includes +depcomp = $(SHELL) $(top_srcdir)/config/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +CCLD = $(CC) +LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ + $(LDFLAGS) -o $@ +SOURCES = $(libVariance_la_SOURCES) $(testDoubleVarianceNono_SOURCES) \ + $(testFloatVarianceNono_SOURCES) +DIST_SOURCES = $(libVariance_la_SOURCES) \ + $(testDoubleVarianceNono_SOURCES) \ + $(testFloatVarianceNono_SOURCES) +ETAGS = etags +CTAGS = ctags +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +F77 = @F77@ +FFLAGS = @FFLAGS@ +FGREP = @FGREP@ +GREP = @GREP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBMATH = @LIBMATH@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +ac_ct_F77 = @ac_ct_F77@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +lt_ECHO = @lt_ECHO@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +libVariance_la_CFLAGS = -I $(top_builddir)/src/c/type \ + -I $(top_builddir)/src/c/elementaryFunctions/includes \ + -I $(top_builddir)/src/c/matrixOperations/includes \ + -I $(top_builddir)/src/c/operations/includes \ + -I ../includes + +instdir = $(top_builddir)/lib +pkglib_LTLIBRARIES = libVariance.la +libVariance_la_SOURCES = $(HEAD) $(SRC) +SRC = svariancea.c \ + scolumnvariancea.c \ + dvariancea.c \ + srowvariancea.c \ + drowvariancea.c \ + dcolumnvariancea.c \ + cvariancea.c \ + crowvariancea.c \ + ccolumnvariancea.c \ + zvariancea.c \ + zrowvariancea.c \ + zcolumnvariancea.c + +HEAD = ../includes/variance.h + +#### +# Checking Part +#### +check_INCLUDES = -I $(top_builddir)/src/c/statisticsFunctions/includes \ + -I $(top_builddir)/src/c/elementaryFunctions/includes \ + -I $(top_builddir)/src/c/matrixOperations/includes \ + -I $(top_builddir)/src/c/operations/includes \ + -I $(top_builddir)/src/c/type + +check_LDADD = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/c/operations/subtraction/libSubtraction.la \ + $(top_builddir)/src/fortran/lapack/libscilapack.la \ + $(top_builddir)/src/c/statisticsFunctions/variance/libVariance.la \ + $(top_builddir)/src/c/statisticsFunctions/sum/libSum.la \ + $(top_builddir)/src/c/statisticsFunctions/mean/libMean.la \ + $(top_builddir)/src/c/elementaryFunctions/pow/libPow.la \ + $(top_builddir)/src/c/elementaryFunctions/log/libLog.la \ + $(top_builddir)/src/c/elementaryFunctions/exp/libExp.la \ + $(top_builddir)/src/c/elementaryFunctions/cos/libCos.la \ + $(top_builddir)/src/c/elementaryFunctions/sin/libSin.la \ + $(top_builddir)/src/c/elementaryFunctions/cosh/libCosh.la \ + $(top_builddir)/src/c/elementaryFunctions/sinh/libSinh.la \ + $(top_builddir)/src/c/elementaryFunctions/sqrt/libSqrt.la \ + $(top_builddir)/src/c/elementaryFunctions/log1p/libLog1p.la \ + $(top_builddir)/src/c/elementaryFunctions/lnp1m1/libLnp1m1.la \ + $(top_builddir)/src/c/auxiliaryFunctions/pythag/libPythag.la \ + $(top_builddir)/src/c/auxiliaryFunctions/abs/libAbs.la \ + $(top_builddir)/src/c/matrixOperations/transpose/libMatrixTranspose.la \ + $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ + $(top_builddir)/src/c/operations/division/libDivision.la \ + $(top_builddir)/src/c/auxiliaryFunctions/conj/libConj.la \ + @LIBMATH@ + + +# +# -*- Variance Tests -*- +# +testFloatVarianceNono_SOURCES = testFloatVarianceNono.c +testFloatVarianceNono_CFLAGS = $(check_INCLUDES) +testFloatVarianceNono_LDADD = $(check_LDADD) +testDoubleVarianceNono_SOURCES = testDoubleVarianceNono.c +testDoubleVarianceNono_CFLAGS = $(check_INCLUDES) +testDoubleVarianceNono_LDADD = $(check_LDADD) +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/c/statisticsFunctions/variance/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/c/statisticsFunctions/variance/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): +install-pkglibLTLIBRARIES: $(pkglib_LTLIBRARIES) + @$(NORMAL_INSTALL) + test -z "$(pkglibdir)" || $(MKDIR_P) "$(DESTDIR)$(pkglibdir)" + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + list2=; for p in $$list; do \ + if test -f $$p; then \ + list2="$$list2 $$p"; \ + else :; fi; \ + done; \ + test -z "$$list2" || { \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(pkglibdir)'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(pkglibdir)"; \ + } + +uninstall-pkglibLTLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(pkglibdir)/$$f'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(pkglibdir)/$$f"; \ + done + +clean-pkglibLTLIBRARIES: + -test -z "$(pkglib_LTLIBRARIES)" || rm -f $(pkglib_LTLIBRARIES) + @list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done +libVariance.la: $(libVariance_la_OBJECTS) $(libVariance_la_DEPENDENCIES) + $(libVariance_la_LINK) -rpath $(pkglibdir) $(libVariance_la_OBJECTS) $(libVariance_la_LIBADD) $(LIBS) + +clean-checkPROGRAMS: + @list='$(check_PROGRAMS)'; test -n "$$list" || exit 0; \ + echo " rm -f" $$list; \ + rm -f $$list || exit $$?; \ + test -n "$(EXEEXT)" || exit 0; \ + list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f" $$list; \ + rm -f $$list +testDoubleVarianceNono$(EXEEXT): $(testDoubleVarianceNono_OBJECTS) $(testDoubleVarianceNono_DEPENDENCIES) + @rm -f testDoubleVarianceNono$(EXEEXT) + $(testDoubleVarianceNono_LINK) $(testDoubleVarianceNono_OBJECTS) $(testDoubleVarianceNono_LDADD) $(LIBS) +testFloatVarianceNono$(EXEEXT): $(testFloatVarianceNono_OBJECTS) $(testFloatVarianceNono_DEPENDENCIES) + @rm -f testFloatVarianceNono$(EXEEXT) + $(testFloatVarianceNono_LINK) $(testFloatVarianceNono_OBJECTS) $(testFloatVarianceNono_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVariance_la-ccolumnvariancea.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVariance_la-crowvariancea.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVariance_la-cvariancea.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVariance_la-dcolumnvariancea.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVariance_la-drowvariancea.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVariance_la-dvariancea.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVariance_la-scolumnvariancea.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVariance_la-srowvariancea.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVariance_la-svariancea.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVariance_la-zcolumnvariancea.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVariance_la-zrowvariancea.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVariance_la-zvariancea.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testDoubleVarianceNono-testDoubleVarianceNono.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testFloatVarianceNono-testFloatVarianceNono.Po@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c $< + +.c.obj: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< + +libVariance_la-svariancea.lo: svariancea.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -MT libVariance_la-svariancea.lo -MD -MP -MF $(DEPDIR)/libVariance_la-svariancea.Tpo -c -o libVariance_la-svariancea.lo `test -f 'svariancea.c' || echo '$(srcdir)/'`svariancea.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libVariance_la-svariancea.Tpo $(DEPDIR)/libVariance_la-svariancea.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='svariancea.c' object='libVariance_la-svariancea.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -c -o libVariance_la-svariancea.lo `test -f 'svariancea.c' || echo '$(srcdir)/'`svariancea.c + +libVariance_la-scolumnvariancea.lo: scolumnvariancea.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -MT libVariance_la-scolumnvariancea.lo -MD -MP -MF $(DEPDIR)/libVariance_la-scolumnvariancea.Tpo -c -o libVariance_la-scolumnvariancea.lo `test -f 'scolumnvariancea.c' || echo '$(srcdir)/'`scolumnvariancea.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libVariance_la-scolumnvariancea.Tpo $(DEPDIR)/libVariance_la-scolumnvariancea.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='scolumnvariancea.c' object='libVariance_la-scolumnvariancea.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -c -o libVariance_la-scolumnvariancea.lo `test -f 'scolumnvariancea.c' || echo '$(srcdir)/'`scolumnvariancea.c + +libVariance_la-dvariancea.lo: dvariancea.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -MT libVariance_la-dvariancea.lo -MD -MP -MF $(DEPDIR)/libVariance_la-dvariancea.Tpo -c -o libVariance_la-dvariancea.lo `test -f 'dvariancea.c' || echo '$(srcdir)/'`dvariancea.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libVariance_la-dvariancea.Tpo $(DEPDIR)/libVariance_la-dvariancea.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dvariancea.c' object='libVariance_la-dvariancea.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -c -o libVariance_la-dvariancea.lo `test -f 'dvariancea.c' || echo '$(srcdir)/'`dvariancea.c + +libVariance_la-srowvariancea.lo: srowvariancea.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -MT libVariance_la-srowvariancea.lo -MD -MP -MF $(DEPDIR)/libVariance_la-srowvariancea.Tpo -c -o libVariance_la-srowvariancea.lo `test -f 'srowvariancea.c' || echo '$(srcdir)/'`srowvariancea.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libVariance_la-srowvariancea.Tpo $(DEPDIR)/libVariance_la-srowvariancea.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='srowvariancea.c' object='libVariance_la-srowvariancea.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -c -o libVariance_la-srowvariancea.lo `test -f 'srowvariancea.c' || echo '$(srcdir)/'`srowvariancea.c + +libVariance_la-drowvariancea.lo: drowvariancea.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -MT libVariance_la-drowvariancea.lo -MD -MP -MF $(DEPDIR)/libVariance_la-drowvariancea.Tpo -c -o libVariance_la-drowvariancea.lo `test -f 'drowvariancea.c' || echo '$(srcdir)/'`drowvariancea.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libVariance_la-drowvariancea.Tpo $(DEPDIR)/libVariance_la-drowvariancea.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='drowvariancea.c' object='libVariance_la-drowvariancea.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -c -o libVariance_la-drowvariancea.lo `test -f 'drowvariancea.c' || echo '$(srcdir)/'`drowvariancea.c + +libVariance_la-dcolumnvariancea.lo: dcolumnvariancea.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -MT libVariance_la-dcolumnvariancea.lo -MD -MP -MF $(DEPDIR)/libVariance_la-dcolumnvariancea.Tpo -c -o libVariance_la-dcolumnvariancea.lo `test -f 'dcolumnvariancea.c' || echo '$(srcdir)/'`dcolumnvariancea.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libVariance_la-dcolumnvariancea.Tpo $(DEPDIR)/libVariance_la-dcolumnvariancea.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dcolumnvariancea.c' object='libVariance_la-dcolumnvariancea.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -c -o libVariance_la-dcolumnvariancea.lo `test -f 'dcolumnvariancea.c' || echo '$(srcdir)/'`dcolumnvariancea.c + +libVariance_la-cvariancea.lo: cvariancea.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -MT libVariance_la-cvariancea.lo -MD -MP -MF $(DEPDIR)/libVariance_la-cvariancea.Tpo -c -o libVariance_la-cvariancea.lo `test -f 'cvariancea.c' || echo '$(srcdir)/'`cvariancea.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libVariance_la-cvariancea.Tpo $(DEPDIR)/libVariance_la-cvariancea.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='cvariancea.c' object='libVariance_la-cvariancea.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -c -o libVariance_la-cvariancea.lo `test -f 'cvariancea.c' || echo '$(srcdir)/'`cvariancea.c + +libVariance_la-crowvariancea.lo: crowvariancea.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -MT libVariance_la-crowvariancea.lo -MD -MP -MF $(DEPDIR)/libVariance_la-crowvariancea.Tpo -c -o libVariance_la-crowvariancea.lo `test -f 'crowvariancea.c' || echo '$(srcdir)/'`crowvariancea.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libVariance_la-crowvariancea.Tpo $(DEPDIR)/libVariance_la-crowvariancea.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='crowvariancea.c' object='libVariance_la-crowvariancea.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -c -o libVariance_la-crowvariancea.lo `test -f 'crowvariancea.c' || echo '$(srcdir)/'`crowvariancea.c + +libVariance_la-ccolumnvariancea.lo: ccolumnvariancea.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -MT libVariance_la-ccolumnvariancea.lo -MD -MP -MF $(DEPDIR)/libVariance_la-ccolumnvariancea.Tpo -c -o libVariance_la-ccolumnvariancea.lo `test -f 'ccolumnvariancea.c' || echo '$(srcdir)/'`ccolumnvariancea.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libVariance_la-ccolumnvariancea.Tpo $(DEPDIR)/libVariance_la-ccolumnvariancea.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='ccolumnvariancea.c' object='libVariance_la-ccolumnvariancea.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -c -o libVariance_la-ccolumnvariancea.lo `test -f 'ccolumnvariancea.c' || echo '$(srcdir)/'`ccolumnvariancea.c + +libVariance_la-zvariancea.lo: zvariancea.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -MT libVariance_la-zvariancea.lo -MD -MP -MF $(DEPDIR)/libVariance_la-zvariancea.Tpo -c -o libVariance_la-zvariancea.lo `test -f 'zvariancea.c' || echo '$(srcdir)/'`zvariancea.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libVariance_la-zvariancea.Tpo $(DEPDIR)/libVariance_la-zvariancea.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zvariancea.c' object='libVariance_la-zvariancea.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -c -o libVariance_la-zvariancea.lo `test -f 'zvariancea.c' || echo '$(srcdir)/'`zvariancea.c + +libVariance_la-zrowvariancea.lo: zrowvariancea.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -MT libVariance_la-zrowvariancea.lo -MD -MP -MF $(DEPDIR)/libVariance_la-zrowvariancea.Tpo -c -o libVariance_la-zrowvariancea.lo `test -f 'zrowvariancea.c' || echo '$(srcdir)/'`zrowvariancea.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libVariance_la-zrowvariancea.Tpo $(DEPDIR)/libVariance_la-zrowvariancea.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zrowvariancea.c' object='libVariance_la-zrowvariancea.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -c -o libVariance_la-zrowvariancea.lo `test -f 'zrowvariancea.c' || echo '$(srcdir)/'`zrowvariancea.c + +libVariance_la-zcolumnvariancea.lo: zcolumnvariancea.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -MT libVariance_la-zcolumnvariancea.lo -MD -MP -MF $(DEPDIR)/libVariance_la-zcolumnvariancea.Tpo -c -o libVariance_la-zcolumnvariancea.lo `test -f 'zcolumnvariancea.c' || echo '$(srcdir)/'`zcolumnvariancea.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libVariance_la-zcolumnvariancea.Tpo $(DEPDIR)/libVariance_la-zcolumnvariancea.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zcolumnvariancea.c' object='libVariance_la-zcolumnvariancea.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libVariance_la_CFLAGS) $(CFLAGS) -c -o libVariance_la-zcolumnvariancea.lo `test -f 'zcolumnvariancea.c' || echo '$(srcdir)/'`zcolumnvariancea.c + +testDoubleVarianceNono-testDoubleVarianceNono.o: testDoubleVarianceNono.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleVarianceNono_CFLAGS) $(CFLAGS) -MT testDoubleVarianceNono-testDoubleVarianceNono.o -MD -MP -MF $(DEPDIR)/testDoubleVarianceNono-testDoubleVarianceNono.Tpo -c -o testDoubleVarianceNono-testDoubleVarianceNono.o `test -f 'testDoubleVarianceNono.c' || echo '$(srcdir)/'`testDoubleVarianceNono.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleVarianceNono-testDoubleVarianceNono.Tpo $(DEPDIR)/testDoubleVarianceNono-testDoubleVarianceNono.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleVarianceNono.c' object='testDoubleVarianceNono-testDoubleVarianceNono.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleVarianceNono_CFLAGS) $(CFLAGS) -c -o testDoubleVarianceNono-testDoubleVarianceNono.o `test -f 'testDoubleVarianceNono.c' || echo '$(srcdir)/'`testDoubleVarianceNono.c + +testDoubleVarianceNono-testDoubleVarianceNono.obj: testDoubleVarianceNono.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleVarianceNono_CFLAGS) $(CFLAGS) -MT testDoubleVarianceNono-testDoubleVarianceNono.obj -MD -MP -MF $(DEPDIR)/testDoubleVarianceNono-testDoubleVarianceNono.Tpo -c -o testDoubleVarianceNono-testDoubleVarianceNono.obj `if test -f 'testDoubleVarianceNono.c'; then $(CYGPATH_W) 'testDoubleVarianceNono.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleVarianceNono.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleVarianceNono-testDoubleVarianceNono.Tpo $(DEPDIR)/testDoubleVarianceNono-testDoubleVarianceNono.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleVarianceNono.c' object='testDoubleVarianceNono-testDoubleVarianceNono.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleVarianceNono_CFLAGS) $(CFLAGS) -c -o testDoubleVarianceNono-testDoubleVarianceNono.obj `if test -f 'testDoubleVarianceNono.c'; then $(CYGPATH_W) 'testDoubleVarianceNono.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleVarianceNono.c'; fi` + +testFloatVarianceNono-testFloatVarianceNono.o: testFloatVarianceNono.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatVarianceNono_CFLAGS) $(CFLAGS) -MT testFloatVarianceNono-testFloatVarianceNono.o -MD -MP -MF $(DEPDIR)/testFloatVarianceNono-testFloatVarianceNono.Tpo -c -o testFloatVarianceNono-testFloatVarianceNono.o `test -f 'testFloatVarianceNono.c' || echo '$(srcdir)/'`testFloatVarianceNono.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatVarianceNono-testFloatVarianceNono.Tpo $(DEPDIR)/testFloatVarianceNono-testFloatVarianceNono.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatVarianceNono.c' object='testFloatVarianceNono-testFloatVarianceNono.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatVarianceNono_CFLAGS) $(CFLAGS) -c -o testFloatVarianceNono-testFloatVarianceNono.o `test -f 'testFloatVarianceNono.c' || echo '$(srcdir)/'`testFloatVarianceNono.c + +testFloatVarianceNono-testFloatVarianceNono.obj: testFloatVarianceNono.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatVarianceNono_CFLAGS) $(CFLAGS) -MT testFloatVarianceNono-testFloatVarianceNono.obj -MD -MP -MF $(DEPDIR)/testFloatVarianceNono-testFloatVarianceNono.Tpo -c -o testFloatVarianceNono-testFloatVarianceNono.obj `if test -f 'testFloatVarianceNono.c'; then $(CYGPATH_W) 'testFloatVarianceNono.c'; else $(CYGPATH_W) '$(srcdir)/testFloatVarianceNono.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatVarianceNono-testFloatVarianceNono.Tpo $(DEPDIR)/testFloatVarianceNono-testFloatVarianceNono.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatVarianceNono.c' object='testFloatVarianceNono-testFloatVarianceNono.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatVarianceNono_CFLAGS) $(CFLAGS) -c -o testFloatVarianceNono-testFloatVarianceNono.obj `if test -f 'testFloatVarianceNono.c'; then $(CYGPATH_W) 'testFloatVarianceNono.c'; else $(CYGPATH_W) '$(srcdir)/testFloatVarianceNono.c'; fi` + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + set x; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) + $(MAKE) $(AM_MAKEFLAGS) check-TESTS +check: check-am +all-am: Makefile $(LTLIBRARIES) +installdirs: + for dir in "$(DESTDIR)$(pkglibdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-checkPROGRAMS clean-generic clean-libtool \ + clean-pkglibLTLIBRARIES mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-pkglibLTLIBRARIES + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-pkglibLTLIBRARIES + +.MAKE: check-am install-am install-strip + +.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \ + clean-checkPROGRAMS clean-generic clean-libtool \ + clean-pkglibLTLIBRARIES ctags distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-pkglibLTLIBRARIES install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ + uninstall-am uninstall-pkglibLTLIBRARIES + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/src/c/statisticsFunctions/variance/ccolumnvariancea.c b/src/c/statisticsFunctions/variance/ccolumnvariancea.c new file mode 100644 index 0000000..8bf5526 --- /dev/null +++ b/src/c/statisticsFunctions/variance/ccolumnvariancea.c @@ -0,0 +1,34 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + + +#include "variance.h" + +void ccolumnvariancea(floatComplex *in, int lines, int columns, floatComplex* out){ + + int i = 0 ; + + floatComplex* transp = (floatComplex*) malloc ( sizeof (double) *(unsigned int) (lines*columns)); + + + + ctransposea ( in , lines , columns , transp ) ; + + + for ( i = 0; i < lines ; i++) + out[i] = cvariancea ( transp + i*columns , columns ) ; + + + free (transp); + + +} diff --git a/src/c/statisticsFunctions/variance/crowvariancea.c b/src/c/statisticsFunctions/variance/crowvariancea.c new file mode 100644 index 0000000..586b942 --- /dev/null +++ b/src/c/statisticsFunctions/variance/crowvariancea.c @@ -0,0 +1,22 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "variance.h" + +void crowvariancea(floatComplex *in, int lines, int columns, floatComplex* out){ + + int i = 0 ; + + for ( i = 0; i < columns ; i++) + out[i] = cvariancea ( in + i*lines , lines) ; +} + diff --git a/src/c/statisticsFunctions/variance/cvariancea.c b/src/c/statisticsFunctions/variance/cvariancea.c new file mode 100644 index 0000000..9d43928 --- /dev/null +++ b/src/c/statisticsFunctions/variance/cvariancea.c @@ -0,0 +1,36 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "variance.h" + +floatComplex cvariancea(floatComplex *in, int size) +{ + int i = 0 ; + + floatComplex sum = FloatComplex ( 0 , 0 ) ; + floatComplex temp = FloatComplex ( 0 , 0 ) ; + floatComplex variance = FloatComplex ( 0 , 0 ); + floatComplex mean = cmeana ( in , size ) ; + + for ( i = 0 ; i < size ; i++) + { + temp = cdiffs( in[i] , mean ) ; + sum = cadds ( sum , cpows ( temp , FloatComplex ( 2, 0) ) ); + } + + variance = crdivs (sum , FloatComplex ( (float)(size - 1),0 )); + + return variance ; + + +} + diff --git a/src/c/statisticsFunctions/variance/dcolumnvariancea.c b/src/c/statisticsFunctions/variance/dcolumnvariancea.c new file mode 100644 index 0000000..2a8e89b --- /dev/null +++ b/src/c/statisticsFunctions/variance/dcolumnvariancea.c @@ -0,0 +1,32 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "variance.h" + +void dcolumnvariancea(double *in, int lines, int columns, double* out){ + + int i = 0 ; + + double* transp = (double*) malloc ( sizeof (double) *(unsigned int) (lines*columns)); + + + + dtransposea ( in , lines , columns , transp ) ; + + + for ( i = 0; i < lines ; i++) + out[i] = dvariancea ( transp + i*columns , columns ) ; + + + free (transp); +} + diff --git a/src/c/statisticsFunctions/variance/drowvariancea.c b/src/c/statisticsFunctions/variance/drowvariancea.c new file mode 100644 index 0000000..1512336 --- /dev/null +++ b/src/c/statisticsFunctions/variance/drowvariancea.c @@ -0,0 +1,23 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + + +#include "variance.h" + +void drowvariancea(double *in, int lines, int columns, double* out){ + + int i = 0 ; + + for ( i = 0; i < columns ; i++) + out[i] = dvariancea ( in + i*lines , lines ) ; + +} diff --git a/src/c/statisticsFunctions/variance/dvariancea.c b/src/c/statisticsFunctions/variance/dvariancea.c new file mode 100644 index 0000000..05ed4ff --- /dev/null +++ b/src/c/statisticsFunctions/variance/dvariancea.c @@ -0,0 +1,35 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "variance.h" + +double dvariancea(double *in, int size) +{ + int i = 0 ; + + double temp = 0 ; + double variance = 0; + + double mean = dmeana ( in, size ); + + for ( i = 0 ; i < size ; i++) + { + temp += dpows ( (in[i] - mean ) ,2 ) ; + } + + + variance = ( temp )/ ( size -1); + + + return variance ; +} + diff --git a/src/c/statisticsFunctions/variance/scolumnvariancea.c b/src/c/statisticsFunctions/variance/scolumnvariancea.c new file mode 100644 index 0000000..2c0ec08 --- /dev/null +++ b/src/c/statisticsFunctions/variance/scolumnvariancea.c @@ -0,0 +1,34 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + + +#include "variance.h" + + +void scolumnvariancea(float *in, int lines, int columns, float* out){ + int i = 0 ; + + float* transp = (float*) malloc ( sizeof (floatComplex) *(unsigned int) (lines*columns)); + + + + stransposea ( in , lines , columns , transp ) ; + + + for ( i = 0; i < lines ; i++) + out[i] = svariancea ( transp + i*columns , columns ) ; + + + free (transp); + +} + diff --git a/src/c/statisticsFunctions/variance/srowvariancea.c b/src/c/statisticsFunctions/variance/srowvariancea.c new file mode 100644 index 0000000..5f6ae30 --- /dev/null +++ b/src/c/statisticsFunctions/variance/srowvariancea.c @@ -0,0 +1,21 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "variance.h" + +void srowvariancea(float *in, int lines, int columns, float* out){ + + int i = 0 ; + + for ( i = 0; i < columns ; i++) + out[i] = svariancea ( in + i*lines , lines ) ; +} diff --git a/src/c/statisticsFunctions/variance/svariancea.c b/src/c/statisticsFunctions/variance/svariancea.c new file mode 100644 index 0000000..426fc45 --- /dev/null +++ b/src/c/statisticsFunctions/variance/svariancea.c @@ -0,0 +1,34 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "variance.h" + +float svariancea(float *in, int size) +{ + int i = 0 ; + + float temp = 0 ; + float variance = 0; + + float mean = smeana ( in , size ); + + for ( i = 0 ; i < size ; i++) + { + temp += spows ( (in[i] - mean ) ,2 ) ; + } + + + variance = ( temp )/ (float)( size -1); + + + return variance ; +} diff --git a/src/c/statisticsFunctions/variance/svn-prop.tmp b/src/c/statisticsFunctions/variance/svn-prop.tmp new file mode 100644 index 0000000..4c36708 --- /dev/null +++ b/src/c/statisticsFunctions/variance/svn-prop.tmp @@ -0,0 +1,12 @@ + +.libs +.deps +Makefile +testMatrixAddition +testMatrixSubtraction +testMatrixMultiplication +testMatrixDivision +*.o +*.lo +*.la + diff --git a/src/c/statisticsFunctions/variance/testDoubleVariance.c b/src/c/statisticsFunctions/variance/testDoubleVariance.c new file mode 100644 index 0000000..dd3481b --- /dev/null +++ b/src/c/statisticsFunctions/variance/testDoubleVariance.c @@ -0,0 +1,335 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2006-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <assert.h> +#include <stdio.h> + +#include "variance.h" + +#define SINGLE 1.323312455 +#define LINES 7 +#define COLUMNS 10 +#define MATRIX {0.102326436434,0.939044147730,0.638607255649,0.059883427806,0.311199211050,\ + 0.377510951832,0.909709410276,0.928138985299,0.855155082885,0.308869514614,\ +0.729239261709,0.127006734256,0.242402311414,0.807912770193,0.621117659844,\ + 0.081452373881,0.088844371960,0.587072817143,0.068080495112,0.995457543526,\ +0.835322400089,0.656235548668,0.767905956600,0.706818781793,0.187699332368,\ + 0.568810169585,0.401039466728,0.397196868435,0.483212330844,0.161224133335,\ +0.932864250615,0.719208867755,0.262409000657,0.931377100293,0.596724558622,\ + 0.310327019077,0.350161732174,0.104841318447,0.830732351169,0.804621329065,\ +0.050784428138,0.551920620725,0.125952405389,0.083156193607,0.420623748098,\ + 0.168616071343,0.707545555662,0.104633864947,0.465604968835,0.489758284763,\ +0.167727907188,0.760689914692,0.454900974408,0.063926273491,0.87152507063,0.978668818716,\ + 0.135898929089,0.484713065904,0.785042577423,0.049412418623,\ +0.947593610268,0.884073690511,0.212796610314,0.654832502827,0.007690255996,\ + 0.031808692031,0.706323316786,0.008731670678,0.270014822017,0.153652121313} + + +#define MATRIXROW {0.1688249423502767021521 , 0.0729081225272336097554 , 0.0579879770921138057438 , 0.1499989757031960635469 , 0.0850863194040760717485 , 0.1085086384507867873772 , 0.0969379859569881041637 , 0.1072816602642319844252 , 0.0913638718167188862429 , 0.1285778184208021535095 } +#define MATRIXCOL { 0.1233078274276283442523, \ + 0.1232135941992091865416 , \ + 0.0540377259589001762707 , \ + 0.0925512303008872161403 , \ + 0.0555055644879708723338 , \ + 0.1276299219577190779962 , \ + 0.1385167433745558840386 } + + +#define IMATRIX {0.05826747464016080,0.99946373142302036,0.85600351681932807,0.62329693790525198,\ + 0.49792320514097810,0.44210509583353996,0.55833499459549785,0.09633230511099100,\ + 0.80100952507928014,0.34466254524886608,\ +0.48831309471279383,0.95087061496451497,0.01332767866551876,0.76261807000264525,\ + 0.74346329551190138,0.65157829830422997,0.57006288319826126,0.70580983115360141,\ + 0.51323400903493166,0.64977857517078519,\ +0.80352442665025592,0.69910932797938585,0.69258948462083936,0.91169391758739948,\ + 0.92454590043053031,0.27637310232967138,0.31692579621449113,0.86305770650506020,\ + 0.20109100220724940,0.01225362811237574,\ +0.38199013099074364,0.96006405679509044,0.16440964583307505,0.59608811559155583,\ + 0.72101737372577190,0.58661046391353011,0.99326277803629637,0.00761850038543344,\ + 0.78608208894729614,0.89965870184823871,\ +0.43115562805905938,0.81857266277074814,0.83410377753898501,0.55516970623284578,\ + 0.51345925079658628,0.04770902730524540,0.80747798969969153,0.80489510949701071,\ + 0.78650354826822877,0.30791273340582848,\ +0.75731822755187750,0.53423820668831468,0.42618893459439278,0.85448804078623652,\ + 0.92601215932518244,0.94169309409335256,0.85547966323792934,0.59637623047456145,\ + 0.69515300076454878,0.18359116325154901,\ +0.01200280850753188,0.2255702270194888,0.34853330114856362,0.55313225090503693,\ + 0.63695094687864184,0.96132039744406939,0.50314606027677655,0.11768362112343311,\ + 0.42481321236118674,0.52963322307914495} + +#define RMATRIX {0.53868199465796351,0.65326874051243067,0.37497402401641011,0.60422550700604916,\ + 0.33622304117307067,0.03531436901539564,0.33213760564103723,0.39493087679147720,\ + 0.04170337272807956,0.87363853026181459,\ +0.65950810909271240,0.31221040291711688,0.15333442110568285,0.66478573577478528,\ + 0.44319023378193378,0.40884594758972526,0.94536898937076330,0.67733758920803666,\ + 0.18673646822571754,0.92331133363768458,\ +0.55921846115961671,0.75012728199362755,0.23257926432415843,0.57102064136415720,\ + 0.60969385923817754,0.67336730472743511,0.07624059682711959,0.10437540244311094,\ + 0.95672677317634225,0.19771346449851990,\ +0.05278092902153730,0.75808868417516351,0.17633479088544846,0.01146994484588504,\ + 0.36732212174683809,0.19948644982650876,0.52714426256716251,0.21445603063330054,\ + 0.94751045759767294,0.04272260749712586,\ +0.03257346292957664,0.53217577841132879,0.87635089689865708,0.15471007302403450,\ + 0.25448470888659358,0.91815057490020990,0.72509902389720082,0.87545845471322536,\ + 0.05635281419381499,0.01432112138718367,\ +0.57406943850219250,0.80984140699729323,0.01664119493216276,0.93888836959376931,\ + 0.11264799535274506,0.66036546928808093,0.76042845565825701,0.25908330874517560,\ + 0.88014078326523304,0.70332178613170981,\ +0.94614937948063016,0.78529163636267185,0.20241560926660895,0.10981105919927359,\ + 0.75415370846167207,0.15320260450243950,0.59521253732964396,0.71318271104246378,\ + 0.51107599260285497,0.52125945501029491} + + + + + + +#define IMATRIXROW {-0.0419293790250184,-0.05416405376783551,+0.11775191182077104,+0.08015791690354153,+0.00011032748454003,\ +-0.10124210045965254,0.06720614014223115,+0.02470873836336094,-0.07082037296251543,-0.00621987869853545} + +#define RMATRIXROW {0.01439621349781126,-0.04697393442028135,-0.03018604392150223,0.09765990436118642,0.01606884471097247,\ +-0.00604250542333471,0.02870576510687836,-0.04985742926427023,0.12356001472881707,0.05909180726174274} + +#define IMATRIXCOL {-0.01904810719805961,+0.04121453132770223,+0.00378553967089328,\ ++0.10307670507342410,+0.03497427750676810,+0.01761849804019567,-0.10182321471060848} + +#define RMATRIXCOL {-0.02739893277693160,0.01792852626358409,-0.02205084134302381,\ +-0.01012610864032573,0.07317682977907164,0.04762062457313784,0.00849011627117621} + + +static void dvariancesTest (void ) { + + double toTest = dvariances (SINGLE) ; + + assert ( fabs ( toTest - SINGLE ) / fabs( toTest) < 1e-16 ) ; +} + + +static void drowvariancesTest (void ) { + + double toTest = drowvariances (SINGLE) ; + + assert ( fabs ( toTest - SINGLE ) / fabs( toTest) < 1e-16 ) ; +} + +static void dcolumnvariancesTest (void) { + + double toTest = dcolumnvariances (SINGLE) ; + + assert ( fabs ( toTest - SINGLE ) / fabs( toTest) < 1e-16 ) ; +} + + +static void zvariancesTest (void ) { + + doubleComplex toTest = zvariances ( DoubleComplex ( SINGLE , SINGLE ) ); + + assert ( fabs ( zreals( toTest) - SINGLE ) / fabs( zreals( toTest)) < 1e-16 ) ; + assert ( fabs ( zimags( toTest) - SINGLE ) / fabs( zimags( toTest)) < 1e-16 ) ; +} + +static void zrowvariancesTest (void ) { + + doubleComplex toTest = zrowvariances ( DoubleComplex ( SINGLE , SINGLE ) ); + + assert ( fabs ( zreals( toTest) - SINGLE ) / fabs( zreals( toTest)) < 1e-16 ) ; + assert ( fabs ( zimags( toTest) - SINGLE ) / fabs( zimags( toTest)) < 1e-16 ) ; +} + +static void zcolumnvariancesTest (void ) { + + doubleComplex toTest = zrowvariances ( DoubleComplex ( SINGLE , SINGLE ) ); + + assert ( fabs ( zreals( toTest) - SINGLE ) / fabs( zreals( toTest)) < 1e-16 ) ; + assert ( fabs ( zimags( toTest) - SINGLE ) / fabs( zimags( toTest)) < 1e-16 ) ; +} + + + + + + +static void dvarianceaTest ( void){ + + double mtoTest[] = MATRIX ; + double result = 0.1007532974338590653352; + double out = dvariancea ( mtoTest , LINES*COLUMNS ); ; + + + + printf ( "out : %1.20f\t result : %1.20f\t\n" , out , result ) ; + + + + assert ( fabs ( out - result ) / fabs( out ) < 3e-15 ) ; + +} + + +static void drowvarianceaTest ( void ) +{ + int i = 0 ; + + double mtoTest[] = MATRIX ; + double result[LINES] = MATRIXCOL ; + double out[LINES] ; + + drowvariancea ( mtoTest , COLUMNS , LINES , out ) ; + + for ( i = 0 ; i < LINES ; i++) + { + printf ( "ROWout : %1.20f\t result : %1.20f\t\n" , out[i] , result [i] ) ; + assert ( fabs ( out[i] - result[i] ) / fabs( out[i] ) < 3e-16 ) ; + } + +} + +static void dcolumnvarianceaTest ( void ) +{ + int i = 0 ; + + double mtoTest[] = MATRIX ; + double result[COLUMNS] = MATRIXROW ; + double out[ COLUMNS] ; + + + + dcolumnvariancea ( mtoTest , COLUMNS, LINES , out ) ; + + for ( i = 0 ; i < COLUMNS; i++) + { + printf ( "%dCOLout : %1.20f\t result : %1.20f\t\n" ,i, out[i] , result [i] ) ; } + for ( i = 0 ; i < COLUMNS; i++) + { + assert ( fabs ( out[i] - result[i] ) / fabs( out[i] ) < 3e-16 ) ; + } + +} + + + + +static void zvarianceaTest ( void){ + + double rmtoTest [] = RMATRIX ; + double imtoTest [] = IMATRIX ; + doubleComplex Result = DoubleComplex ( 0.01225832057910708 , 0.01071188208687752 ); + + doubleComplex* mtoTest = DoubleComplexMatrix ( rmtoTest , imtoTest , LINES*COLUMNS ) ; + doubleComplex out = zvariancea ( mtoTest , LINES*COLUMNS ); ; + + assert ( fabs( zreals(out) - zreals (Result) ) / fabs (zreals (out)) < 3e-16 ); + assert( fabs( zimags(out) - zimags (Result )) / fabs (zimags (out)) < 3e-15 ); + + +} + +static void zrowvarianceaTest (void ) { + + int i = 0 ; + + double rmtoTest [] = RMATRIX ; + double imtoTest [] = IMATRIX ; + double rResult [] = RMATRIXROW; + double iResult [] = IMATRIXROW ; + + doubleComplex out[COLUMNS]; + doubleComplex* mtoTest = DoubleComplexMatrix ( rmtoTest , imtoTest , LINES*COLUMNS ) ; + doubleComplex* Result = DoubleComplexMatrix ( rResult , iResult , COLUMNS ); + + zrowvariancea ( mtoTest , LINES , COLUMNS , out ) ; + + /*FIXME test failed under 1-e04 precision */ + for ( i = 0 ; i < COLUMNS ; i++) + { + printf ( "%d out : %e %e \t result %e %e \n" , i , zreals(out[i]) , zimags(out[i]), zreals(Result[i]) ,zimags( Result[i])); + assert ( fabs( zreals(out[i]) - zreals (Result[i]) ) / fabs (zreals (out[i])) < 3e-8 ); + assert( fabs( zimags(out[i]) - zimags (Result[i])) / fabs (zimags (out[i])) < 3e-15); + + } +} + + + +static void zcolumnvarianceaTest ( void) { + int i = 0 ; + + double rmtoTest [] = RMATRIX ; + double imtoTest [] = IMATRIX ; + double rResult [] = RMATRIXCOL; + double iResult [] = IMATRIXCOL ; + + doubleComplex out[LINES]; + doubleComplex* mtoTest = DoubleComplexMatrix ( rmtoTest , imtoTest , LINES*COLUMNS ) ; + doubleComplex* Result = DoubleComplexMatrix ( rResult , iResult , LINES ); + + zcolumnvariancea ( mtoTest , LINES , COLUMNS , out ) ; + + + for ( i = 0 ; i < LINES ; i++) + { + printf ( "%d out : %e %e \t result %e %e \n" , i , zreals(out[i]) , zimags(out[i]), zreals(Result[i]) ,zimags( Result[i])); + assert ( fabs( zreals(out[i]) - zreals (Result[i]) ) / fabs (zreals (out[i])) < 3e-16 ); + assert( fabs( zimags(out[i]) - zimags (Result[i])) / fabs (zimags (out[i])) < 3e-16); + + } + + + +} + + + + + +static int testDoubleVariance (void) { + printf("\n\n\n\n*********************\n"); + printf("***** Double Tests ****\n"); + printf("*********************\n"); + + printf("\n\t>>>>singleton real Tests\n"); + dcolumnvariancesTest () ; + dvariancesTest () ; + drowvariancesTest () ; + + + printf("\n\t>>>>singleton complex Tests\n"); + + zrowvariancesTest () ; + zcolumnvariancesTest () ; + zvariancesTest () ; + + + + printf("\n\t>>>>array real Tests\n"); + + dvarianceaTest () ; + + dcolumnvarianceaTest () ; + drowvarianceaTest ( ); + + + printf("\n\t>>>>array complex Tests\n"); + + zvarianceaTest () ; + zrowvarianceaTest ( ); + zcolumnvarianceaTest () ; + + + return 0; +} + +int main(void) { + assert(testDoubleVariance () == 0); + return 0; +} + diff --git a/src/c/statisticsFunctions/variance/testDoubleVarianceNono.c b/src/c/statisticsFunctions/variance/testDoubleVarianceNono.c new file mode 100644 index 0000000..39302d7 --- /dev/null +++ b/src/c/statisticsFunctions/variance/testDoubleVarianceNono.c @@ -0,0 +1,363 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2006-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "variance.h" +#include "assert.h" + +static int doubleVariance(void){ + + int i; + + + /*test 1 */ + { + double matrice[20]={1,5,9,4,8,2,6,1,5,9,3,7,2,6,1,4,8,3,7,2}; + double out, *outColumns, *outRows; + double result= 7.5026315789473692063893; + double resultColumns[5]= {1.6666666666666667406815 ,1.6666666666666667406815 ,12.916666666666666074548 ,1.6666666666666667406815 ,16.666666666666667850905}; + double resultRows[4]={10.300000000000000710543 , 10.300000000000000710543 , 6.7000000000000001776357 , 6.7000000000000001776357}; + + + + outColumns= (double*)malloc((unsigned int)5*sizeof(double)); + outRows= (double*)malloc((unsigned int)4*sizeof(double)); + + out = dvariancea(matrice,20); + drowvariancea(matrice,5,4,outRows); + dcolumnvariancea(matrice,5,4,outColumns); + + + printf("Variance \n"); + printf("%f\n",out); + printf("Row Variance \n"); + for (i=0;i<4;i++) printf("%f\n",outRows[i]); + printf("Column Variance \n"); + for (i=0;i<5;i++) printf("%f\n",outColumns[i]); + + + assert(fabs(out-result)/fabs(out) <1e-16); + for (i=0;i<4;i++)assert(fabs(outRows[i]-resultRows[i])/fabs(outRows[i]) <1e-16); + + for (i=0;i<5;i++)assert(fabs(outColumns[i]-resultColumns[i])/fabs(outColumns[i]) <1e-16); + + free(outColumns); + free(outRows); + + } + + + /* test 2 */ + + { + double mtovar[70]={0.2113248654641211032867,0.7560438541695475578308,0.0002211346291005611420, + 0.3303270917385816574097,0.6653811042197048664093,0.6283917883411049842835, + 0.8497452358715236186981, + 0.6857310198247432708740,0.8782164813019335269928,0.0683740368112921714783, + 0.5608486062847077846527,0.6623569373041391372681,0.7263506767340004444122, + 0.1985143842175602912903, + 0.5442573162727057933807,0.2320747897028923034668,0.2312237196601927280426, + 0.2164632631465792655945,0.8833887814544141292572,0.6525134947150945663452, + 0.3076090742833912372589, + 0.9329616213217377662659,0.2146007861010730266571,0.3126419968903064727783, + 0.3616361008025705814362,0.2922266637906432151794,0.5664248815737664699554, + 0.4826471973210573196411, + 0.3321718913502991199493,0.5935094701126217842102,0.5015341597609221935272, + 0.4368587583303451538086,0.2693124809302389621735,0.6325744865462183952332, + 0.4051954015158116817474, + 0.9184707831591367721558,0.0437334333546459674835,0.4818508932366967201233, + 0.2639556000940501689911,0.4148103706538677215576,0.2806498021818697452545, + 0.1280058464035391807556, + 0.7783128595910966396332,0.2119030449539422988892,0.1121354666538536548615, + 0.6856895955279469490051,0.1531216683797538280487,0.6970850601792335510254, + 0.8415518426336348056793, + 0.4062024755403399467468,0.4094825475476682186127,0.8784125801175832748413, + 0.1138359685428440570831,0.1998337740078568458557,0.5618660743348300457001, + 0.5896177329123020172119, + 0.6853979662992060184479,0.8906224733218550682068,0.5042212805710732936859, + 0.3493615407496690750122,0.3873778772540390491486,0.9222898678854107856751, + 0.9488184261135756969452, + 0.3435337245464324951172,0.3760118731297552585602,0.7340940563008189201355, + 0.2615761472843587398529,0.4993493836373090744019,0.2638578419573605060577, + 0.5253563085570931434631}; + double out2, *outColumns2, *outRows2; + double result2= 0.0651863337585355667736 ; + double resultColumns2[7]= {0.0650391675869589902526 , + 0.0913789208052724344356 , + 0.0837863718398224738282 , + 0.0281545517812518443501 , + 0.0549594706400152802073 , + 0.0389978730537587012228 , + 0.0796657637071630925218 , + }; + double resultRows2[10]={0.0988544518240001696130 , 0.0874673050908554156058 , 0.0678199050579095519264, 0.0591380787668954188696 , 0.0175386373980947855855 ,0.0831815708684833926556 , 0.1035239817400336881370 , 0.0657802543744439444096 , 0.0667446022405332184402 , 0.0287884625084994134891}; + + + outColumns2= (double*)malloc((unsigned int)7*sizeof(double)); + outRows2= (double*)malloc((unsigned int)10*sizeof(double)); + + + + out2 = dvariancea(mtovar,70); + drowvariancea(mtovar,7,10,outRows2); + dcolumnvariancea(mtovar,7,10,outColumns2); + + + printf("Variance 2 \n"); + printf("%f\n",out2); + printf("Row Variance 2 \n"); + for (i=0;i<10;i++) printf("%f\n",outRows2[i]); + printf("Column Variance 2 \n"); + for (i=0;i<7;i++) printf("%f\n",outColumns2[i]); + + assert(fabs(out2-result2)/fabs(out2) <1e-16); + for (i=0;i<10;i++)assert(fabs(outRows2[i]-resultRows2[i])/fabs(outRows2[i]) <1e-16); + + for (i=0;i<7;i++)assert(fabs(outColumns2[i]-resultColumns2[i])/fabs(outColumns2[i]) <1e-16); + + free(outColumns2); + free(outRows2); + } + + + return 0; +} + + +static int doubleComplexVariance(void){ + int i; + + /* test 1 */ + { + double inR[6]={0.9677053210325539112091,0.5068534435704350471497,0.523297640960663557053,0.5596947595477104187012, + 0.5617307000793516635895,0.468176002614200115204}; + double inI[6]={0.7794546722434461116791,0.7901071812957525253296,0.9808542062528431415558,0.8187066102400422096252, + 0.4256872381083667278290,0.2461560554802417755127}; + double varianceR=- 0.0428404140538702279950; + double varianceI=0.0257955584577409802183; + double rowVarianceR[3]={0.106135488505625180666,- 0.0124835463256454722719,- 0.01173948205902856229}; + double rowVarianceI[3]={- 0.0049092287964376275095,- 0.0059017052806824826100,0.0167959854763351026929}; + double colVarianceR[2]={- 0.0183554755457089394111,- 0.1019751767306446843531}; + double colVarianceI[2]={0.0109267784648201249365,0.0249829946888768111846}; + doubleComplex *in, *rowVariance, *colVariance; + doubleComplex out, *outRow, *outCol; + + in= (doubleComplex*)malloc ((unsigned int)6*sizeof(doubleComplex)); + outRow= (doubleComplex*)malloc ((unsigned int)3*sizeof(doubleComplex)); + outCol= (doubleComplex*)malloc ((unsigned int)2*sizeof(doubleComplex)); + + in=DoubleComplexMatrix(inR,inI,6); + rowVariance=DoubleComplexMatrix(rowVarianceR,rowVarianceI,3); + colVariance=DoubleComplexMatrix(colVarianceR,colVarianceI,2); + + + out=zvariancea(in,6); + printf("Variance \n"); + printf("%f + %f *i\texpecting result : %f + %f *i\n",zreals(out),zimags(out) , varianceR , varianceI); + + assert(fabs(zreals(out)-varianceR)/fabs(zreals(out)) <3e-16); + assert(fabs(zimags(out)-varianceI)/fabs(zimags(out)) <3e-15); + + + + + + zrowvariancea(in,2,3,outRow); + printf("Row Variance \n"); + for (i=0;i<3;i++) printf("%1.20f + %1.20f *i\n",zreals(outRow[i]),zimags(outRow[i])); + + + for (i=0;i<3;i++){ + assert(fabs(zreals(outRow[i])-rowVarianceR[i])/fabs(zreals(outRow[i])) <3e-15); + assert(fabs(zimags(outRow[i])-rowVarianceI[i])/fabs(zimags(outRow[i])) <3e-14); + } + + + + zcolumnvariancea(in,2,3,outCol); + printf("Column Variance \n"); + for (i=0;i<2;i++) printf("%f + %f *i\n",zreals(outCol[i]),zimags(outCol[i])); + + + for (i=0;i<2;i++){ + assert(fabs(zreals(outCol[i])-colVarianceR[i])/fabs(zreals(outCol[i])) <3e-15); + assert(fabs(zimags(outCol[i])-colVarianceI[i])/fabs(zimags(outCol[i])) <3e-15); + } + + free(in); + free(outCol); + free(outRow); + + } + + + printf("\n"); + printf("\n"); + printf("\n"); + printf("\n"); + + + /* test 2 */ + { + double inR[70]={0.0453502028249204158783,0.2029444333165884017944,0.7844273825176060199738, + 0.2637536162510514259338,0.4383276398293673992157,0.866485897451639175415, + 0.3792142109014093875885,0.7668716078624129295349,0.6006621322594583034515, + 0.7856735605746507644653, +0.7387115550227463245392,0.5544260339811444282532,0.9929149555973708629608, + 0.9757428467273712158203,0.3709622272290289402008,0.3032238213345408439636, + 0.9519520117901265621185,0.7127858083695173263550,0.119237006176263093948, + 0.5009163180366158485413, +0.3290053526870906352997,0.4808946810662746429443,0.3303695977665483951569, + 0.6304475357756018638611,0.2117190784774720668793,0.4486023131757974624634, + 0.5914509710855782032013,0.6806742670014500617981,0.0739296111278235912323, + 0.9433694705367088317871, +0.1286330693401396274567,0.2019080771133303642273,0.1969303428195416927338, + 0.8928690161556005477905,0.4617918957956135272980,0.6251291716471314430237, + 0.7059706593863666057587,0.7018169648945331573486,0.4087999747134745121002, + 0.0636221384629607200623, +0.0657393387518823146820,0.5331004131585359573364,0.0331581872887909412384, + 0.3157835649326443672180,0.3785823243670165538788,0.4619523435831069946289, + 0.6287369825877249240875,0.2878515301272273063660,0.3292048736475408077240, + 0.4719233047217130661011, +0.3353769634850323200226,0.5553069720044732093811,0.1196080814115703105927, + 0.7613999657332897186279,0.4790988476015627384186,0.2816969295963644981384, + 0.2380097783170640468597,0.3294205460697412490845,0.2306728032417595386505, + 0.2136296601966023445129, +0.4054998042993247509003,0.3095371201634407043457,0.6762971603311598300934, + 0.970691631548106670380,0.5441796570084989070892,0.0204747971147298812866, + 0.8941364963538944721222,0.3490363890305161476135,0.1105365152470767498016, + 0.2023377753794193267822}; + double inI[70]={1.0377217042259871959686,1.9830380710773169994354,-0.6786614381708204746246, + -1.7368789152242243289948,0.6849579229019582271576,-1.9756898251362144947052, 0.9018773441202938556671,0.4113956945948302745819,0.0771432374604046344757, + -2.6145569621585309505463, +-0.8694803346879780292511,1.1954508102498948574066,1.0175080369226634502411, + -1.86952689336612820625,1.6495719677768647670746,-1.1282413271255791187286, + 1.7159116868861019611359,1.3512618443928658962250,1.6467350018210709095001, + -4.3247690196149051189423, +-1.1214177873916923999786,0.3549467395059764385223,1.5090364827774465084076, + 0.0271988785825669765472,-0.3927204073406755924225,-2.2866433826275169849396, + 2.4531399612314999103546,1.2140426929108798503876,0.1123848785646259784699, + -1.2278760573826730251312, +0.5748759503476321697235,0.1001535071991384029388,0.7154782521538436412811, + -0.3598340046592056751251,0.1114491275511682033539,-1.0214430955238640308380, + 1.8411546354182064533234,1.3313704966567456722260,0.107393887359648942947, + -2.1405860441736876964569, +-0.1921784919686615467072,-0.0941377175040543079376,-0.3007089742459356784821, + -1.6332105011679232120514,-0.9827875629998743534088,-4.0793808070011436939240, + 1.6021160488016903400421,0.5996482106857001781464,-1.0103867049328982830048, + -1.9795853956602513790131, +-0.7019297261722385883331,0.1910370937548577785492,0.5148729826323688030243, + -1.2210475285537540912628,1.4409833527170121669769,-2.0624672439880669116974, + 2.2999203805811703205109,1.6434787488542497158051,-0.0813916879706084728241, + -4.3653216282837092876434, +0.0896512451581656932831,1.4530082489363849163055,-0.1911182911135256290436, + -1.5278804996050894260406,-0.8655951828695833683014,-2.6959278550930321216583, + 1.089711368549615144730,0.2611377011053264141083,-0.0787748913280665874481, + -1.675187868531793355942}; + double varianceR=- 2.3201230329620456949158; + double varianceI=0.0135359053960125846894; + double rowVarianceR[7]={- 2.1748250359163439071608,- 4.0055927597555047725564,- 1.9380991813636070375537,- 1.211164632384367667584, + - 2.3819157100812309302285,- 3.865411523472068289209,- 1.5488286339908912125907}; + double rowVarianceI[7]={- 0.5161401892195496277083,- 0.0302397956223948334575,0.0072526988331105511632,0.2035074619460965072992, + - 0.0227578793067023492369,0.0176453877563822227048,0.2048099414748655033858}; + double colVarianceR[10]={ - 0.5673920596394929072304, + - 0.6095831761740567733554, + - 0.4837275005370789138226, + - 0.4518709923747168399899, + - 1.1155710732654480210613, + - 0.9922425930742954092168, + - 0.2615272073355465187738, + - 0.2448899237808548345896, + - 0.5783271525148965253038, + - 1.4662540245146995498970 }; + double colVarianceI[10]={ - 0.2519451287679840834066, + - 0.1132720366896080160801, + - 0.0393753052279357945720 , + 0.0678956480014177715665 , + 0.0165011281984272333012 , + 0.1043646242921155153915 , + - 0.0697520473529744805541 , + 0.0395755738577838397929 , + - 0.0906906077772287183558 , + 0.2030521845859689644698 }; + doubleComplex *in, *rowVariance, *colVariance; + doubleComplex out, *outRow, *outCol; + + in= (doubleComplex*)malloc ((unsigned int)70*sizeof(doubleComplex)); + outRow= (doubleComplex*)malloc ((unsigned int)7*sizeof(doubleComplex)); + outCol= (doubleComplex*)malloc ((unsigned int)10*sizeof(doubleComplex)); + + in=DoubleComplexMatrix(inR,inI,70); + rowVariance=DoubleComplexMatrix(rowVarianceR,rowVarianceI,7); + colVariance=DoubleComplexMatrix(colVarianceR,colVarianceI,10); + + + out=zvariancea(in,70); + printf("Variance 2 \n"); + printf("%f + %f *i\n",zreals(out),zimags(out)); + + assert(fabs(zreals(out)-varianceR)/fabs(zreals(out)) <3e-16); + assert(fabs(zimags(out)-varianceI)/fabs(zimags(out)) <3e-16); + + + + + + zrowvariancea(in,10,7,outRow); + printf("Row Variance 2 \n"); + for (i=0;i<7;i++) printf("%1.20f + %1.20f *i\n",zreals(outRow[i]),zimags(outRow[i])); + + + for (i=0;i<7;i++){ + assert(fabs(zreals(outRow[i])-rowVarianceR[i])/fabs(zreals(outRow[i])) <3e-15); + assert(fabs(zimags(outRow[i])-rowVarianceI[i])/fabs(zimags(outRow[i])) <3e-14); + } + + + + zcolumnvariancea(in,10,7,outCol); + printf("Column Variance 2 \n"); + for (i=0;i<10;i++) printf("%f + %f *i\n",zreals(outCol[i]),zimags(outCol[i])); + + + for (i=0;i<10;i++){ + assert(fabs(zreals(outCol[i])-colVarianceR[i])/fabs(zreals(outCol[i])) <3e-15); + assert(fabs(zimags(outCol[i])-colVarianceI[i])/fabs(zimags(outCol[i])) <3e-14); + } + free(in); + free(outCol); + free(outRow); + + } + + return 0; +} + + + + + +static int testDoubleVariance (void) { + printf("\n\n\n\n*********************\n"); + printf("***** Double Tests Nono****\n"); + printf("*********************\n"); + assert(doubleVariance()==0); + assert(doubleComplexVariance()==0); + + + return 0; +} + +int main(void) { + assert(testDoubleVariance () == 0); + return 0; +} + diff --git a/src/c/statisticsFunctions/variance/testFloatVariance.c b/src/c/statisticsFunctions/variance/testFloatVariance.c new file mode 100644 index 0000000..5a22a9c --- /dev/null +++ b/src/c/statisticsFunctions/variance/testFloatVariance.c @@ -0,0 +1,329 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2006-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <assert.h> +#include <stdio.h> + +#include "variance.h" + +#define SINGLE 1.323312455f +#define LINES 7 +#define COLUMNS 10 +#define MATRIX {0.102326436434f,0.939044147730f,0.638607255649f,0.059883427806f,0.311199211050f,\ + 0.377510951832f,0.909709410276f,0.928138985299f,0.855155082885f,0.308869514614f,\ +0.729239261709f,0.127006734256f,0.242402311414f,0.807912770193f,0.621117659844f,\ + 0.081452373881f,0.088844371960f,0.587072817143f,0.068080495112f,0.995457543526f,\ +0.835322400089f,0.656235548668f,0.767905956600f,0.706818781793f,0.187699332368f,\ + 0.568810169585f,0.401039466728f,0.397196868435f,0.483212330844f,0.161224133335f,\ +0.932864250615f,0.719208867755f,0.262409000657f,0.931377100293f,0.596724558622f,\ + 0.310327019077f,0.350161732174f,0.104841318447f,0.830732351169f,0.804621329065f,\ +0.050784428138f,0.551920620725f,0.125952405389f,0.083156193607f,0.420623748098f,\ + 0.168616071343f,0.707545555662f,0.104633864947f,0.465604968835f,0.489758284763f,\ +0.167727907188f,0.760689914692f,0.454900974408f,0.063926273491f,0.87152507063f,0.978668818716f,\ + 0.135898929089f,0.484713065904f,0.785042577423f,0.049412418623f,\ +0.947593610268f,0.884073690511f,0.212796610314f,0.654832502827f,0.007690255996f,\ + 0.031808692031f,0.706323316786f,0.008731670678f,0.270014822017f,0.153652121313f} + + +#define MATRIXROW {0.168824942350f,0.072908122527f,0.057987977092f,0.149998975703f,0.085086319404f,\ +0.108508638451f,0.096937985957f,0.107281660264f,0.091363871817f,0.128577818421f} + +#define MATRIXCOL { 0.123307827428f,0.123213594199f,0.054037725959f,0.092551230301f,0.055505564488f,\ +0.127629921958f,0.138516743375f } + + +#define IMATRIX {0.05826747464016080f,0.99946373142302036f,0.85600351681932807f,0.62329693790525198f,\ + 0.49792320514097810f,0.44210509583353996f,0.55833499459549785f,0.09633230511099100f,\ + 0.80100952507928014f,0.34466254524886608f,\ +0.48831309471279383f,0.95087061496451497f,0.01332767866551876f,0.76261807000264525f,\ + 0.74346329551190138f,0.65157829830422997f,0.57006288319826126f,0.70580983115360141f,\ + 0.51323400903493166f,0.64977857517078519f,\ +0.80352442665025592f,0.69910932797938585f,0.69258948462083936f,0.91169391758739948f,\ + 0.92454590043053031f,0.27637310232967138f,0.31692579621449113f,0.86305770650506020f,\ + 0.20109100220724940f,0.01225362811237574f,\ +0.38199013099074364f,0.96006405679509044f,0.16440964583307505f,0.59608811559155583f,\ + 0.72101737372577190f,0.58661046391353011f,0.99326277803629637f,0.00761850038543344f,\ + 0.78608208894729614f,0.89965870184823871f,\ +0.43115562805905938f,0.81857266277074814f,0.83410377753898501f,0.55516970623284578f,\ + 0.51345925079658628f,0.04770902730524540f,0.80747798969969153f,0.80489510949701071f,\ + 0.78650354826822877f,0.30791273340582848f,\ +0.75731822755187750f,0.53423820668831468f,0.42618893459439278f,0.85448804078623652f,\ + 0.92601215932518244f,0.94169309409335256f,0.85547966323792934f,0.59637623047456145f,\ + 0.69515300076454878f,0.18359116325154901f,\ +0.01200280850753188f,0.2255702270194888f,0.34853330114856362f,0.55313225090503693f,\ + 0.63695094687864184f,0.96132039744406939f,0.50314606027677655f,0.11768362112343311f,\ + 0.42481321236118674f,0.52963322307914495f} + +#define RMATRIX {0.53868199465796351f,0.65326874051243067f,0.37497402401641011f,0.60422550700604916f,\ + 0.33622304117307067f,0.03531436901539564f,0.33213760564103723f,0.39493087679147720f,\ + 0.04170337272807956f,0.87363853026181459f,\ +0.65950810909271240f,0.31221040291711688f,0.15333442110568285f,0.66478573577478528f,\ + 0.44319023378193378f,0.40884594758972526f,0.94536898937076330f,0.67733758920803666f,\ + 0.18673646822571754f,0.92331133363768458f,\ +0.55921846115961671f,0.75012728199362755f,0.23257926432415843f,0.57102064136415720f,\ + 0.60969385923817754f,0.67336730472743511f,0.07624059682711959f,0.10437540244311094f,\ + 0.95672677317634225f,0.19771346449851990f,\ +0.05278092902153730f,0.75808868417516351f,0.17633479088544846f,0.01146994484588504f,\ + 0.36732212174683809f,0.19948644982650876f,0.52714426256716251f,0.21445603063330054f,\ + 0.94751045759767294f,0.04272260749712586f,\ +0.03257346292957664f,0.53217577841132879f,0.87635089689865708f,0.15471007302403450f,\ + 0.25448470888659358f,0.91815057490020990f,0.72509902389720082f,0.87545845471322536f,\ + 0.05635281419381499f,0.01432112138718367f,\ +0.57406943850219250f,0.80984140699729323f,0.01664119493216276f,0.93888836959376931f,\ + 0.11264799535274506f,0.66036546928808093f,0.76042845565825701f,0.25908330874517560f,\ + 0.88014078326523304f,0.70332178613170981f,\ +0.94614937948063016f,0.78529163636267185f,0.20241560926660895f,0.10981105919927359f,\ + 0.75415370846167207f,0.15320260450243950f,0.59521253732964396f,0.71318271104246378f,\ + 0.51107599260285497f,0.52125945501029491f} + + + + + + +#define IMATRIXROW {-0.0419293790250184f,-0.05416405376783551f,+0.11775191182077104f,+0.08015791690354153f,+0.00011032748454003f,\ +-0.10124210045965254f,0.06720614014223115f,+0.02470873836336094f,-0.07082037296251543f,-0.00621987869853545f} + +#define RMATRIXROW {0.01439621349781126f,-0.04697393442028135f,-0.03018604392150223f,0.09765990436118642f,0.01606884471097247f,\ +-0.00604250542333471f,0.02870576510687836f,-0.04985742926427023f,0.12356001472881707f,0.05909180726174274f} + +#define IMATRIXCOL {-0.01904810719805961f,+0.04121453132770223f,+0.00378553967089328f,\ ++0.10307670507342410f,+0.03497427750676810f,+0.01761849804019567f,-0.10182321471060848f} + +#define RMATRIXCOL {-0.02739893277693160f,0.01792852626358409f,-0.02205084134302381f,\ +-0.01012610864032573f,0.07317682977907164f,0.04762062457313784f,0.00849011627117621f} + + +static void svariancesTest (void ) { + + float toTest = svariances (SINGLE) ; + + assert ( fabs ( toTest - SINGLE ) / fabs( toTest) < 1e-06 ) ; +} + + +static void srowvariancesTest (void ) { + + float toTest = srowvariances (SINGLE) ; + + assert ( fabs ( toTest - SINGLE ) / fabs( toTest) < 1e-06 ) ; +} + +static void scolumnvariancesTest (void) { + + float toTest = scolumnvariances (SINGLE) ; + + assert ( fabs ( toTest - SINGLE ) / fabs( toTest) < 1e-06 ) ; +} + + +static void cvariancesTest (void ) { + + floatComplex toTest = cvariances ( FloatComplex ( SINGLE , SINGLE ) ); + + assert ( fabs ( creals( toTest) - SINGLE ) / fabs( creals( toTest)) < 1e-06 ) ; + assert ( fabs ( cimags( toTest) - SINGLE ) / fabs( cimags( toTest)) < 1e-06 ) ; +} + +static void crowvariancesTest (void ) { + + floatComplex toTest = crowvariances ( FloatComplex ( SINGLE , SINGLE ) ); + + assert ( fabs ( creals( toTest) - SINGLE ) / fabs( creals( toTest)) < 1e-06 ) ; + assert ( fabs ( cimags( toTest) - SINGLE ) / fabs( cimags( toTest)) < 1e-06 ) ; +} + +static void ccolumnvariancesTest (void ) { + + floatComplex toTest = crowvariances ( FloatComplex ( SINGLE , SINGLE ) ); + + assert ( fabs ( creals( toTest) - SINGLE ) / fabs( creals( toTest)) < 1e-06 ) ; + assert ( fabs ( cimags( toTest) - SINGLE ) / fabs( cimags( toTest)) < 1e-06 ) ; +} + + + + + + +static void svarianceaTest ( void){ + + float mtoTest[] = MATRIX ; + float result = 0.100753297434f; + float out = svariancea ( mtoTest , LINES*COLUMNS ); ; + + + + printf ( "out : %e\t result : %e\t\n" , out , result ) ; + + + + assert ( fabs ( out - result ) / fabs( out ) < 1e-06 ) ; + +} + + +static void srowvarianceaTest ( void ) +{ + int i = 0 ; + + float mtoTest[] = MATRIX ; + float result[COLUMNS] = MATRIXROW ; + float out[COLUMNS] ; + + srowvariancea ( mtoTest , LINES , COLUMNS , out ) ; + + for ( i = 0 ; i < COLUMNS ; i++) + { + printf ( "ROWout : %e\t result : %e\t\n" , out[i] , result [i] ) ; + assert ( fabs ( out[i] - result[i] ) / fabs( out[i] ) < 1e-06 ) ; + } + +} + +static void scolumnvarianceaTest ( void ) +{ + int i = 0 ; + + float mtoTest[] = MATRIX ; + float result[LINES] = MATRIXCOL ; + float out[ LINES] ; + + + + scolumnvariancea ( mtoTest , LINES , COLUMNS , out ) ; + + for ( i = 0 ; i < LINES ; i++) + { + printf ( "%dCOLout : %e\t result : %e\t\n" ,i, out[i] , result [i] ) ; + /* assert ( fabs ( out[i] - result[i] ) / fabs( out[i] ) < 1e-05 ) ;*/ + } + +} + + + + +static void cvarianceaTest ( void){ + + float rmtoTest [] = RMATRIX ; + float imtoTest [] = IMATRIX ; + floatComplex Result = FloatComplex ( 0.01225832057910708f , 0.01071188208687752f ); + + floatComplex* mtoTest = FloatComplexMatrix ( rmtoTest , imtoTest , LINES*COLUMNS ) ; + floatComplex out = cvariancea ( mtoTest , LINES*COLUMNS ); ; + + assert ( fabs( creals(out) - creals (Result) ) / fabs (creals (out)) < 1e-06 ); + assert( fabs( cimags(out) - cimags (Result )) / fabs (cimags (out)) < 1e-06 ); + + +} + +static void crowvarianceaTest (void ) { + + int i = 0 ; + + float rmtoTest [] = RMATRIX ; + float imtoTest [] = IMATRIX ; + float rResult [] = RMATRIXROW; + float iResult [] = IMATRIXROW ; + + floatComplex out[COLUMNS]; + floatComplex* mtoTest = FloatComplexMatrix ( rmtoTest , imtoTest , LINES*COLUMNS ) ; + floatComplex* Result = FloatComplexMatrix ( rResult , iResult , COLUMNS ); + + crowvariancea ( mtoTest , LINES , COLUMNS , out ) ; + + /*FIXME test failed under 1-e04 precision */ + for ( i = 0 ; i < COLUMNS ; i++) + { + printf ( "%d out : %e %e \t result %e %e \n" , i , creals(out[i]) , cimags(out[i]), creals(Result[i]) ,cimags( Result[i])); + assert ( fabs( creals(out[i]) - creals (Result[i]) ) / fabs (creals (out[i])) < 3e-6 ); + assert( fabs( cimags(out[i]) - cimags (Result[i])) / fabs (cimags (out[i])) < 3e-6); + + } +} + + + +static void ccolumnvarianceaTest ( void) { + int i = 0 ; + + float rmtoTest [] = RMATRIX ; + float imtoTest [] = IMATRIX ; + float rResult [] = RMATRIXCOL; + float iResult [] = IMATRIXCOL ; + + floatComplex out[LINES]; + floatComplex* mtoTest = FloatComplexMatrix ( rmtoTest , imtoTest , LINES*COLUMNS ) ; + floatComplex* Result = FloatComplexMatrix ( rResult , iResult , LINES ); + + ccolumnvariancea ( mtoTest , LINES , COLUMNS , out ) ; + + + for ( i = 0 ; i < LINES ; i++) + { + printf ( "%d out : %e %e \t result %e %e \n" , i , creals(out[i]) , cimags(out[i]), creals(Result[i]) ,cimags( Result[i])); + assert ( fabs( creals(out[i]) - creals (Result[i]) ) / fabs (creals (out[i])) < 1e-06 ); + assert( fabs( cimags(out[i]) - cimags (Result[i])) / fabs (cimags (out[i])) < 1e-06); + + } + + + +} + + + + + +static int testFloatVariance (void) { + printf("\n\n\n\n*********************\n"); + printf("***** Float Tests ****\n"); + printf("*********************\n"); + + printf("\n\t>>>>singleton real Tests\n"); + scolumnvariancesTest () ; + svariancesTest () ; + srowvariancesTest () ; + + + printf("\n\t>>>>singleton complex Tests\n"); + + crowvariancesTest () ; + ccolumnvariancesTest () ; + cvariancesTest () ; + + + + printf("\n\t>>>>array real Tests\n"); + + svarianceaTest () ; + + scolumnvarianceaTest () ; + srowvarianceaTest ( ); + + + printf("\n\t>>>>array complex Tests\n"); + + cvarianceaTest () ; + crowvarianceaTest ( ); + ccolumnvarianceaTest () ; + + + return 0; +} + +int main(void) { + assert(testFloatVariance () == 0); + return 0; +} diff --git a/src/c/statisticsFunctions/variance/testFloatVarianceNono.c b/src/c/statisticsFunctions/variance/testFloatVarianceNono.c new file mode 100644 index 0000000..a8d2545 --- /dev/null +++ b/src/c/statisticsFunctions/variance/testFloatVarianceNono.c @@ -0,0 +1,364 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2006-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "variance.h" +#include "assert.h" + +static int floatVariance(void){ + + int i; + + + /*test 1 */ + { + float matrice[20]={1.0f,5.0f,9.0f,4.0f,8.0f,2.0f,6.0f,1.0f,5.0f,9.0f,3.0f,7.0f,2.0f,6.0f,1.0f,4.0f,8.0f,3.0f,7.0f,2.0f}; + float out, *outColumns, *outRows; + float result= 7.5026315789473692063893f; + float resultColumns[5]= {1.6666666666666667406815f ,1.6666666666666667406815f ,12.916666666666666074548f ,1.6666666666666667406815f ,16.666666666666667850905f}; + float resultRows[4]={10.300000000000000710543f , 10.300000000000000710543f , 6.7000000000000001776357f , 6.7000000000000001776357f}; + + + + outColumns= (float*)malloc((unsigned int)5*sizeof(float)); + outRows= (float*)malloc((unsigned int)4*sizeof(float)); + + out = svariancea(matrice,20); + srowvariancea(matrice,5,4,outRows); + scolumnvariancea(matrice,5,4,outColumns); + + + printf("Variance \n"); + printf("%f\n",out); + printf("Row Variance \n"); + for (i=0;i<4;i++) printf("%f\n",outRows[i]); + printf("Column Variance \n"); + for (i=0;i<5;i++) printf("%f\n",outColumns[i]); + + + assert(fabs(out-result)/fabs(out) <1e-06); + for (i=0;i<4;i++)assert(fabs(outRows[i]-resultRows[i])/fabs(outRows[i]) <1e-06); + + for (i=0;i<5;i++)assert(fabs(outColumns[i]-resultColumns[i])/fabs(outColumns[i]) <1e-06); + + free(outColumns); + free(outRows); + } + + + /* test 2 */ + + { + float mtovar[70]={0.2113248654641211032867f,0.7560438541695475578308f,0.0002211346291005611420f, + 0.3303270917385816574097f,0.6653811042197048664093f,0.6283917883411049842835f, + 0.8497452358715236186981f, + 0.6857310198247432708740f,0.8782164813019335269928f,0.0683740368112921714783f, + 0.5608486062847077846527f,0.6623569373041391372681f,0.7263506767340004444122f, + 0.1985143842175602912903f, + 0.5442573162727057933807f,0.2320747897028923034668f,0.2312237196601927280426f, + 0.2164632631465792655945f,0.8833887814544141292572f,0.6525134947150945663452f, + 0.3076090742833912372589f, + 0.9329616213217377662659f,0.2146007861010730266571f,0.3126419968903064727783f, + 0.3616361008025705814362f,0.2922266637906432151794f,0.5664248815737664699554f, + 0.4826471973210573196411f, + 0.3321718913502991199493f,0.5935094701126217842102f,0.5015341597609221935272f, + 0.4368587583303451538086f,0.2693124809302389621735f,0.6325744865462183952332f, + 0.4051954015158116817474f, + 0.9184707831591367721558f,0.0437334333546459674835f,0.4818508932366967201233f, + 0.2639556000940501689911f,0.4148103706538677215576f,0.2806498021818697452545f, + 0.1280058464035391807556f, + 0.7783128595910966396332f,0.2119030449539422988892f,0.1121354666538536548615f, + 0.6856895955279469490051f,0.1531216683797538280487f,0.6970850601792335510254f, + 0.8415518426336348056793f, + 0.4062024755403399467468f,0.4094825475476682186127f,0.8784125801175832748413f, + 0.1138359685428440570831f,0.1998337740078568458557f,0.5618660743348300457001f, + 0.5896177329123020172119f, + 0.6853979662992060184479f,0.8906224733218550682068f,0.5042212805710732936859f, + 0.3493615407496690750122f,0.3873778772540390491486f,0.9222898678854107856751f, + 0.9488184261135756969452f, + 0.3435337245464324951172f,0.3760118731297552585602f,0.7340940563008189201355f, + 0.2615761472843587398529f,0.4993493836373090744019f,0.2638578419573605060577f, + 0.5253563085570931434631f}; + float out2, *outColumns2, *outRows2; + float result2= 0.0651863337585355667736f ; + float resultColumns2[7]= {0.0650391675869589902526f , + 0.0913789208052724344356f , + 0.0837863718398224738282f , + 0.0281545517812518443501f , + 0.0549594706400152802073f , + 0.0389978730537587012228f , + 0.0796657637071630925218f , + }; + float resultRows2[10]={0.0988544518240001696130f , 0.0874673050908554156058f , 0.0678199050579095519264f, 0.0591380787668954188696f , 0.0175386373980947855855f ,0.0831815708684833926556f , 0.1035239817400336881370f, 0.0657802543744439444096f , 0.0667446022405332184402f , 0.0287884625084994134891f}; + + + outColumns2= (float*)malloc((unsigned int)7*sizeof(float)); + outRows2= (float*)malloc((unsigned int)10*sizeof(float)); + + + + out2 = svariancea(mtovar,70); + srowvariancea(mtovar,7,10,outRows2); + scolumnvariancea(mtovar,7,10,outColumns2); + + + printf("Variance 2 \n"); + printf("%f\n",out2); + printf("Row Variance 2 \n"); + for (i=0;i<10;i++) printf("%f\n",outRows2[i]); + printf("Column Variance 2 \n"); + for (i=0;i<7;i++) printf("%f\n",outColumns2[i]); + + assert(fabs(out2-result2)/fabs(out2) <1e-06); + for (i=0;i<10;i++)assert(fabs(outRows2[i]-resultRows2[i])/fabs(outRows2[i]) <1e-06); + + for (i=0;i<7;i++)assert(fabs(outColumns2[i]-resultColumns2[i])/fabs(outColumns2[i]) <1e-06); + + free(outColumns2); + free(outRows2); + + } + + + return 0; +} + + +static int floatComplexVariance(void){ + int i; + + /* test 1 */ + { + float inR[6]={0.9677053210325539112091f,0.5068534435704350471497f,0.523297640960663557053f,0.5596947595477104187012f, + 0.5617307000793516635895f,0.468176002614200115204f}; + float inI[6]={0.7794546722434461116791f,0.7901071812957525253296f,0.9808542062528431415558f,0.8187066102400422096252f, + 0.4256872381083667278290f,0.2461560554802417755127f}; + float varianceR=- 0.0428404140538702279950f; + float varianceI=0.0257955584577409802183f; + float rowVarianceR[3]={0.106135488505625180666f,- 0.0124835463256454722719f,- 0.01173948205902856229f}; + float rowVarianceI[3]={- 0.0049092287964376275095f,- 0.0059017052806824826100f,0.0167959854763351026929f}; + float colVarianceR[2]={- 0.0183554755457089394111f,- 0.1019751767306446843531f}; + float colVarianceI[2]={0.0109267784648201249365f,0.0249829946888768111846f}; + floatComplex *in, *rowVariance, *colVariance; + floatComplex out, *outRow, *outCol; + + in= (floatComplex*)malloc ((unsigned int)6*sizeof(floatComplex)); + outRow= (floatComplex*)malloc ((unsigned int)3*sizeof(floatComplex)); + outCol= (floatComplex*)malloc ((unsigned int)2*sizeof(floatComplex)); + + in=FloatComplexMatrix(inR,inI,6); + rowVariance=FloatComplexMatrix(rowVarianceR,rowVarianceI,3); + colVariance=FloatComplexMatrix(colVarianceR,colVarianceI,2); + + + out=cvariancea(in,6); + printf("Variance \n"); + printf("%f + %f *i\n",creals(out),cimags(out)); + + assert(fabs(creals(out)-varianceR)/fabs(creals(out)) <1e-6); + assert(fabs(cimags(out)-varianceI)/fabs(cimags(out)) <1e-6); + + + + + + crowvariancea(in,2,3,outRow); + printf("Row Variance \n"); + for (i=0;i<3;i++) printf("%1.20f + %1.20f *i\n",creals(outRow[i]),cimags(outRow[i])); + + + for (i=0;i<3;i++){ + assert(fabs(creals(outRow[i])-rowVarianceR[i])/fabs(creals(outRow[i])) <1e-6); + assert(fabs(cimags(outRow[i])-rowVarianceI[i])/fabs(cimags(outRow[i])) <3e-5); + } + + + + ccolumnvariancea(in,2,3,outCol); + printf("Column Variance \n"); + for (i=0;i<2;i++) printf("%f + %f *i\n",creals(outCol[i]),cimags(outCol[i])); + + + for (i=0;i<2;i++){ + assert(fabs(creals(outCol[i])-colVarianceR[i])/fabs(creals(outCol[i])) <1e-6); + assert(fabs(cimags(outCol[i])-colVarianceI[i])/fabs(cimags(outCol[i])) <3e-6); + } + + free(in); + free(outCol); + free(outRow); + + + } + + + printf("\n"); + printf("\n"); + printf("\n"); + printf("\n"); + + + /* test 2 */ + { + float inR[70]={0.0453502028249204158783f,0.2029444333165884017944f,0.7844273825176060199738f, + 0.2637536162510514259338f,0.4383276398293673992157f,0.866485897451639175415f, + 0.3792142109014093875885f,0.7668716078624129295349f,0.6006621322594583034515f, + 0.7856735605746507644653f, +0.7387115550227463245392f,0.5544260339811444282532f,0.9929149555973708629608f, + 0.9757428467273712158203f,0.3709622272290289402008f,0.3032238213345408439636f, + 0.9519520117901265621185f,0.7127858083695173263550f,0.119237006176263093948f, + 0.5009163180366158485413f, +0.3290053526870906352997f,0.4808946810662746429443f,0.3303695977665483951569f, + 0.6304475357756018638611f,0.2117190784774720668793f,0.4486023131757974624634f, + 0.5914509710855782032013f,0.6806742670014500617981f,0.0739296111278235912323f, + 0.9433694705367088317871f, +0.1286330693401396274567f,0.2019080771133303642273f,0.1969303428195416927338f, + 0.8928690161556005477905f,0.4617918957956135272980f,0.6251291716471314430237f, + 0.7059706593863666057587f,0.7018169648945331573486f,0.4087999747134745121002f, + 0.0636221384629607200623f, +0.0657393387518823146820f,0.5331004131585359573364f,0.0331581872887909412384f, + 0.3157835649326443672180f,0.3785823243670165538788f,0.4619523435831069946289f, + 0.6287369825877249240875f,0.2878515301272273063660f,0.3292048736475408077240f, + 0.4719233047217130661011f, +0.3353769634850323200226f,0.5553069720044732093811f,0.1196080814115703105927f, + 0.7613999657332897186279f,0.4790988476015627384186f,0.2816969295963644981384f, + 0.2380097783170640468597f,0.3294205460697412490845f,0.2306728032417595386505f, + 0.2136296601966023445129f, +0.4054998042993247509003f,0.3095371201634407043457f,0.6762971603311598300934f, + 0.970691631548106670380f,0.5441796570084989070892f,0.0204747971147298812866f, + 0.8941364963538944721222f,0.3490363890305161476135f,0.1105365152470767498016f, + 0.2023377753794193267822f}; + float inI[70]={1.0377217042259871959686f,1.9830380710773169994354f,-0.6786614381708204746246f, + -1.7368789152242243289948f,0.6849579229019582271576f,-1.9756898251362144947052f, 0.9018773441202938556671f,0.4113956945948302745819f,0.0771432374604046344757f, + -2.6145569621585309505463f, +-0.8694803346879780292511f,1.1954508102498948574066f,1.0175080369226634502411f, + -1.86952689336612820625f,1.6495719677768647670746f,-1.1282413271255791187286f, + 1.7159116868861019611359f,1.3512618443928658962250f,1.6467350018210709095001f, + -4.3247690196149051189423f, +-1.1214177873916923999786f,0.3549467395059764385223f,1.5090364827774465084076f, + 0.0271988785825669765472f,-0.3927204073406755924225f,-2.2866433826275169849396f, + 2.4531399612314999103546f,1.2140426929108798503876f,0.1123848785646259784699f, + -1.2278760573826730251312f, +0.5748759503476321697235f,0.1001535071991384029388f,0.7154782521538436412811f, + -0.3598340046592056751251f,0.1114491275511682033539f,-1.0214430955238640308380f, + 1.8411546354182064533234f,1.3313704966567456722260f,0.107393887359648942947f, + -2.1405860441736876964569f, +-0.1921784919686615467072f,-0.0941377175040543079376f,-0.3007089742459356784821f, + -1.6332105011679232120514f,-0.9827875629998743534088f,-4.0793808070011436939240f, + 1.6021160488016903400421f,0.5996482106857001781464f,-1.0103867049328982830048f, + -1.9795853956602513790131f, +-0.7019297261722385883331f,0.1910370937548577785492f,0.5148729826323688030243f, + -1.2210475285537540912628f,1.4409833527170121669769f,-2.0624672439880669116974f, + 2.2999203805811703205109f,1.6434787488542497158051f,-0.0813916879706084728241f, + -4.3653216282837092876434f, +0.0896512451581656932831f,1.4530082489363849163055f,-0.1911182911135256290436f, + -1.5278804996050894260406f,-0.8655951828695833683014f,-2.6959278550930321216583f, + 1.089711368549615144730f,0.2611377011053264141083f,-0.0787748913280665874481f, + -1.675187868531793355942f}; + float varianceR=- 2.3201230329620456949158f; + float varianceI=0.0135359053960125846894f; + float rowVarianceR[7]={- 2.1748250359163439071608f,- 4.0055927597555047725564f,- 1.9380991813636070375537f,- 1.211164632384367667584f, + - 2.3819157100812309302285f,- 3.865411523472068289209f,- 1.5488286339908912125907f}; + float rowVarianceI[7]={- 0.5161401892195496277083f,- 0.0302397956223948334575f,0.0072526988331105511632f,0.2035074619460965072992f, + - 0.0227578793067023492369f,0.0176453877563822227048f,0.2048099414748655033858f}; + float colVarianceR[10]={ - 0.5673920596394929072304f, + - 0.6095831761740567733554f, + - 0.4837275005370789138226f, + - 0.4518709923747168399899f, + - 1.1155710732654480210613f, + - 0.9922425930742954092168f, + - 0.2615272073355465187738f, + - 0.2448899237808548345896f, + - 0.5783271525148965253038f, + - 1.4662540245146995498970f }; + float colVarianceI[10]={ - 0.2519451287679840834066f, + - 0.1132720366896080160801f, + - 0.0393753052279357945720f , + 0.0678956480014177715665f , + 0.0165011281984272333012f , + 0.1043646242921155153915f , + - 0.0697520473529744805541f , + 0.0395755738577838397929f , + - 0.0906906077772287183558f , + 0.2030521845859689644698f }; + floatComplex *in, *rowVariance, *colVariance; + floatComplex out, *outRow, *outCol; + + in= (floatComplex*)malloc ((unsigned int)70*sizeof(floatComplex)); + outRow= (floatComplex*)malloc ((unsigned int)7*sizeof(floatComplex)); + outCol= (floatComplex*)malloc ((unsigned int)10*sizeof(floatComplex)); + + in=FloatComplexMatrix(inR,inI,70); + rowVariance=FloatComplexMatrix(rowVarianceR,rowVarianceI,7); + colVariance=FloatComplexMatrix(colVarianceR,colVarianceI,10); + + + out=cvariancea(in,70); + printf("Variance 2 \n"); + printf("%f + %f *i\n",creals(out),cimags(out)); + + assert(fabs(creals(out)-varianceR)/fabs(creals(out)) <1e-6); + assert(fabs(cimags(out)-varianceI)/fabs(cimags(out)) <3e-5); + + + + + + crowvariancea(in,10,7,outRow); + printf("Row Variance 2 \n"); + for (i=0;i<7;i++) printf("%1.20f + %1.20f *i\n",creals(outRow[i]),cimags(outRow[i])); + + + for (i=0;i<7;i++){ + assert(fabs(creals(outRow[i])-rowVarianceR[i])/fabs(creals(outRow[i])) <1e-6); + assert(fabs(cimags(outRow[i])-rowVarianceI[i])/fabs(cimags(outRow[i])) <3e-5); + } + + + + ccolumnvariancea(in,10,7,outCol); + printf("Column Variance 2 \n"); + for (i=0;i<10;i++) printf("%f + %f *i\n",creals(outCol[i]),cimags(outCol[i])); + + + for (i=0;i<10;i++){ + assert(fabs(creals(outCol[i])-colVarianceR[i])/fabs(creals(outCol[i])) <1e-6); + assert(fabs(cimags(outCol[i])-colVarianceI[i])/fabs(cimags(outCol[i])) <3e-6); + } + + free(in); + free(outCol); + free(outRow); + } + + return 0; +} + + + + + +static int testFloatVariance (void) { + printf("\n\n\n\n*********************\n"); + printf("***** Float Tests Nono****\n"); + printf("*********************\n"); + assert(floatVariance()==0); + assert(floatComplexVariance()==0); + + + return 0; +} + +int main(void) { + assert(testFloatVariance () == 0); + return 0; +} + diff --git a/src/c/statisticsFunctions/variance/test_DoubleVariance/testDoubleVariance.vcxproj b/src/c/statisticsFunctions/variance/test_DoubleVariance/testDoubleVariance.vcxproj new file mode 100644 index 0000000..51b2535 --- /dev/null +++ b/src/c/statisticsFunctions/variance/test_DoubleVariance/testDoubleVariance.vcxproj @@ -0,0 +1,178 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{774783E0-2443-42DB-AA48-04730E59B396}</ProjectGuid>
+ <RootNamespace>testDoubleVariance</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;../../../elementaryFunctions/includes;../../../matrixOperations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;../../../elementaryFunctions/includes;../../../matrixOperations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;../../../elementaryFunctions/includes;../../../matrixOperations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;../../../elementaryFunctions/includes;../../../matrixOperations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testDoubleVariance.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\..\..\type\type.vcxproj">
+ <Project>{9b1bd750-1fef-4d6b-9422-782d16181cee}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ <ProjectReference Include="..\..\statisticsFunctions.vcxproj">
+ <Project>{e11ed064-3bf2-4f70-b66e-3223c737ec60}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/variance/test_DoubleVariance/testDoubleVariance.vcxproj.filters b/src/c/statisticsFunctions/variance/test_DoubleVariance/testDoubleVariance.vcxproj.filters new file mode 100644 index 0000000..8b08a25 --- /dev/null +++ b/src/c/statisticsFunctions/variance/test_DoubleVariance/testDoubleVariance.vcxproj.filters @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testDoubleVariance.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/variance/test_DoubleVarianceNono/testDoubleVarianceNono.vcxproj b/src/c/statisticsFunctions/variance/test_DoubleVarianceNono/testDoubleVarianceNono.vcxproj new file mode 100644 index 0000000..c87dce7 --- /dev/null +++ b/src/c/statisticsFunctions/variance/test_DoubleVarianceNono/testDoubleVarianceNono.vcxproj @@ -0,0 +1,178 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{CCD3F89C-A278-457D-BFD6-ADEEF4860E07}</ProjectGuid>
+ <RootNamespace>testDoubleVarianceNono</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;../../../elementaryFunctions/includes;../../../matrixOperations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;../../../elementaryFunctions/includes;../../../matrixOperations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;../../../elementaryFunctions/includes;../../../matrixOperations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;../../../elementaryFunctions/includes;../../../matrixOperations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testDoubleVarianceNono.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\..\..\type\type.vcxproj">
+ <Project>{9b1bd750-1fef-4d6b-9422-782d16181cee}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ <ProjectReference Include="..\..\statisticsFunctions.vcxproj">
+ <Project>{e11ed064-3bf2-4f70-b66e-3223c737ec60}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/variance/test_DoubleVarianceNono/testDoubleVarianceNono.vcxproj.filters b/src/c/statisticsFunctions/variance/test_DoubleVarianceNono/testDoubleVarianceNono.vcxproj.filters new file mode 100644 index 0000000..f7a7ed7 --- /dev/null +++ b/src/c/statisticsFunctions/variance/test_DoubleVarianceNono/testDoubleVarianceNono.vcxproj.filters @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testDoubleVarianceNono.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/variance/test_FloatVariance/testFloatVariance.vcxproj b/src/c/statisticsFunctions/variance/test_FloatVariance/testFloatVariance.vcxproj new file mode 100644 index 0000000..05b4a44 --- /dev/null +++ b/src/c/statisticsFunctions/variance/test_FloatVariance/testFloatVariance.vcxproj @@ -0,0 +1,178 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{53F78E7F-3024-4999-BE70-F4A242357809}</ProjectGuid>
+ <RootNamespace>testFloatVariance</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../elementaryFunctions/includes;../../../operations/includes;../../../matrixOperations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../elementaryFunctions/includes;../../../operations/includes;../../../matrixOperations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../elementaryFunctions/includes;../../../operations/includes;../../../matrixOperations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../elementaryFunctions/includes;../../../operations/includes;../../../matrixOperations/includes;../../../type;../../includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testFloatVariance.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\..\..\type\type.vcxproj">
+ <Project>{9b1bd750-1fef-4d6b-9422-782d16181cee}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ <ProjectReference Include="..\..\statisticsFunctions.vcxproj">
+ <Project>{e11ed064-3bf2-4f70-b66e-3223c737ec60}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/variance/test_FloatVariance/testFloatVariance.vcxproj.filters b/src/c/statisticsFunctions/variance/test_FloatVariance/testFloatVariance.vcxproj.filters new file mode 100644 index 0000000..d0a741b --- /dev/null +++ b/src/c/statisticsFunctions/variance/test_FloatVariance/testFloatVariance.vcxproj.filters @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testFloatVariance.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/variance/test_FloatVarianceNono/testFloatVarianceNono.vcxproj b/src/c/statisticsFunctions/variance/test_FloatVarianceNono/testFloatVarianceNono.vcxproj new file mode 100644 index 0000000..321c2a7 --- /dev/null +++ b/src/c/statisticsFunctions/variance/test_FloatVarianceNono/testFloatVarianceNono.vcxproj @@ -0,0 +1,178 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{DEF1A42F-599B-4B1D-AB11-202E86670021}</ProjectGuid>
+ <RootNamespace>testFloatVarianceNono</RootNamespace>
+ <Keyword>Win32Proj</Keyword>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)bin\</OutDir>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)bin\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)$(Configuration)\</IntDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)$(Configuration)\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;../../../elementaryFunctions/includes;../../../matrixOperations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;../../../elementaryFunctions/includes;../../../matrixOperations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;../../../elementaryFunctions/includes;../../../matrixOperations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <AdditionalIncludeDirectories>../../../includes;../../../operations/includes;../../../type;../../includes;../../../elementaryFunctions/includes;../../../matrixOperations/includes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ </ClCompile>
+ <Link>
+ <OutputFile>$(SolutionDir)bin\$(ProjectName).exe</OutputFile>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Console</SubSystem>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testFloatVarianceNono.c">
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">CompileAsCpp</CompileAs>
+ <CompileAs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">CompileAsCpp</CompileAs>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\..\..\type\type.vcxproj">
+ <Project>{9b1bd750-1fef-4d6b-9422-782d16181cee}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ <ProjectReference Include="..\..\statisticsFunctions.vcxproj">
+ <Project>{e11ed064-3bf2-4f70-b66e-3223c737ec60}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/variance/test_FloatVarianceNono/testFloatVarianceNono.vcxproj.filters b/src/c/statisticsFunctions/variance/test_FloatVarianceNono/testFloatVarianceNono.vcxproj.filters new file mode 100644 index 0000000..e0eb6db --- /dev/null +++ b/src/c/statisticsFunctions/variance/test_FloatVarianceNono/testFloatVarianceNono.vcxproj.filters @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\testFloatVarianceNono.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project>
\ No newline at end of file diff --git a/src/c/statisticsFunctions/variance/zcolumnvariancea.c b/src/c/statisticsFunctions/variance/zcolumnvariancea.c new file mode 100644 index 0000000..bba8030 --- /dev/null +++ b/src/c/statisticsFunctions/variance/zcolumnvariancea.c @@ -0,0 +1,34 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + + +#include "variance.h" + +void zcolumnvariancea(doubleComplex *in, int lines, int columns, doubleComplex* out){ + + int i = 0 ; + + doubleComplex* transp = (doubleComplex*) malloc ( sizeof (doubleComplex) *(unsigned int) (lines*columns)); + + + + ztransposea ( in , lines , columns , transp ) ; + + + for ( i = 0; i < lines ; i++) + out[i] = zvariancea ( transp + i*columns , columns ) ; + + + free (transp); + +} + diff --git a/src/c/statisticsFunctions/variance/zrowvariancea.c b/src/c/statisticsFunctions/variance/zrowvariancea.c new file mode 100644 index 0000000..285889a --- /dev/null +++ b/src/c/statisticsFunctions/variance/zrowvariancea.c @@ -0,0 +1,21 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "variance.h" + +void zrowvariancea(doubleComplex *in, int lines, int columns, doubleComplex* out){ + + int i = 0 ; + + for ( i = 0; i < columns ; i++) + out[i] = zvariancea ( in + i*lines , lines ) ; +} diff --git a/src/c/statisticsFunctions/variance/zvariancea.c b/src/c/statisticsFunctions/variance/zvariancea.c new file mode 100644 index 0000000..92e2667 --- /dev/null +++ b/src/c/statisticsFunctions/variance/zvariancea.c @@ -0,0 +1,35 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "variance.h" + +doubleComplex zvariancea(doubleComplex *in, int size) +{ + int i = 0 ; + + doubleComplex sum = DoubleComplex ( 0 , 0 ) ; + doubleComplex temp = DoubleComplex ( 0 , 0 ) ; + doubleComplex variance = DoubleComplex ( 0 , 0 ); + doubleComplex mean = zmeana ( in , size ) ; + + for ( i = 0 ; i < size ; i++) + { + temp = zdiffs( in[i] , mean ) ; + sum = zadds ( sum , zpows ( temp , DoubleComplex ( 2, 0) ) ); + } + + variance = zrdivs (sum , DoubleComplex ( (size - 1),0 )); + + return variance ; + +} + diff --git a/src/c/statisticsFunctions/variancef/Makefile.am b/src/c/statisticsFunctions/variancef/Makefile.am new file mode 100644 index 0000000..804025b --- /dev/null +++ b/src/c/statisticsFunctions/variancef/Makefile.am @@ -0,0 +1,89 @@ +## +## Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +## Copyright (C) 2008-2008 - INRIA - Allan SIMON +## +## This file must be used under the terms of the CeCILL. +## This source file is licensed as described in the file COPYING, which +## you should have received as part of this distribution. The terms +## are also available at +## http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt +## +## + +libvariancef_la_CFLAGS = -I $(top_builddir)/src/c/type \ + -I $(top_builddir)/src/c/elementaryFunctions/includes \ + -I $(top_builddir)/src/c/matrixOperations/includes \ + -I $(top_builddir)/src/c/operations/includes \ + -I ../includes + +instdir = $(top_builddir)/lib + +pkglib_LTLIBRARIES = libvariancef.la + +libvariancef_la_SOURCES = $(HEAD) $(SRC) + +SRC = svariancefa.c \ + scolumnvariancefa.c \ + dvariancefa.c \ + srowvariancefa.c \ + drowvariancefa.c \ + dcolumnvariancefa.c \ + cvariancefa.c \ + crowvariancefa.c \ + ccolumnvariancefa.c \ + zvariancefa.c \ + zrowvariancefa.c \ + zcolumnvariancefa.c + +HEAD = ../includes/variancef.h + +#### +# Checking Part +#### + +check_INCLUDES = -I $(top_builddir)/src/c/statisticsFunctions/includes \ + -I $(top_builddir)/src/c/elementaryFunctions/includes \ + -I $(top_builddir)/src/c/matrixOperations/includes \ + -I $(top_builddir)/src/c/operations/includes \ + -I $(top_builddir)/src/c/type + +check_LDADD = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/c/operations/subtraction/libSubtraction.la \ + $(top_builddir)/src/fortran/lapack/libscilapack.la \ + $(top_builddir)/src/c/statisticsFunctions/variancef/libvariancef.la \ + $(top_builddir)/src/c/statisticsFunctions/sum/libSum.la \ + $(top_builddir)/src/c/statisticsFunctions/meanf/libMeanf.la \ + $(top_builddir)/src/c/elementaryFunctions/pow/libPow.la \ + $(top_builddir)/src/c/elementaryFunctions/log/libLog.la \ + $(top_builddir)/src/c/elementaryFunctions/exp/libExp.la \ + $(top_builddir)/src/c/elementaryFunctions/cos/libCos.la \ + $(top_builddir)/src/c/elementaryFunctions/sin/libSin.la \ + $(top_builddir)/src/c/elementaryFunctions/cosh/libCosh.la \ + $(top_builddir)/src/c/elementaryFunctions/sinh/libSinh.la \ + $(top_builddir)/src/c/elementaryFunctions/sqrt/libSqrt.la \ + $(top_builddir)/src/c/elementaryFunctions/log1p/libLog1p.la \ + $(top_builddir)/src/c/elementaryFunctions/lnp1m1/libLnp1m1.la \ + $(top_builddir)/src/c/auxiliaryFunctions/pythag/libPythag.la \ + $(top_builddir)/src/c/auxiliaryFunctions/abs/libAbs.la \ + $(top_builddir)/src/c/matrixOperations/transpose/libMatrixTranspose.la \ + $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ + $(top_builddir)/src/c/operations/division/libDivision.la \ + $(top_builddir)/src/c/auxiliaryFunctions/conj/libConj.la \ + @LIBMATH@ + +check_PROGRAMS = testFloatVariancef testDoubleVariancef + +TESTS = testFloatVariancef testDoubleVariancef + +# +# -*- variancef Tests -*- +# +testFloatVariancef_SOURCES = testFloatVariancef.c +testFloatVariancef_CFLAGS = $(check_INCLUDES) +testFloatVariancef_LDADD = $(check_LDADD) + +testDoubleVariancef_SOURCES =testDoubleVariancef.c +testDoubleVariancef_CFLAGS = $(check_INCLUDES) +testDoubleVariancef_LDADD = $(check_LDADD) diff --git a/src/c/statisticsFunctions/variancef/Makefile.in b/src/c/statisticsFunctions/variancef/Makefile.in new file mode 100644 index 0000000..9cbd3df --- /dev/null +++ b/src/c/statisticsFunctions/variancef/Makefile.in @@ -0,0 +1,886 @@ +# Makefile.in generated by automake 1.11.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +check_PROGRAMS = testFloatVariancef$(EXEEXT) \ + testDoubleVariancef$(EXEEXT) +TESTS = testFloatVariancef$(EXEEXT) testDoubleVariancef$(EXEEXT) +subdir = src/c/statisticsFunctions/variancef +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/includes/machine.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__installdirs = "$(DESTDIR)$(pkglibdir)" +LTLIBRARIES = $(pkglib_LTLIBRARIES) +libvariancef_la_LIBADD = +am__objects_1 = +am__objects_2 = libvariancef_la-svariancefa.lo \ + libvariancef_la-scolumnvariancefa.lo \ + libvariancef_la-dvariancefa.lo \ + libvariancef_la-srowvariancefa.lo \ + libvariancef_la-drowvariancefa.lo \ + libvariancef_la-dcolumnvariancefa.lo \ + libvariancef_la-cvariancefa.lo \ + libvariancef_la-crowvariancefa.lo \ + libvariancef_la-ccolumnvariancefa.lo \ + libvariancef_la-zvariancefa.lo \ + libvariancef_la-zrowvariancefa.lo \ + libvariancef_la-zcolumnvariancefa.lo +am_libvariancef_la_OBJECTS = $(am__objects_1) $(am__objects_2) +libvariancef_la_OBJECTS = $(am_libvariancef_la_OBJECTS) +libvariancef_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(libvariancef_la_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +am_testDoubleVariancef_OBJECTS = \ + testDoubleVariancef-testDoubleVariancef.$(OBJEXT) +testDoubleVariancef_OBJECTS = $(am_testDoubleVariancef_OBJECTS) +am__DEPENDENCIES_1 = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/c/operations/subtraction/libSubtraction.la \ + $(top_builddir)/src/fortran/lapack/libscilapack.la \ + $(top_builddir)/src/c/statisticsFunctions/variancef/libvariancef.la \ + $(top_builddir)/src/c/statisticsFunctions/sum/libSum.la \ + $(top_builddir)/src/c/statisticsFunctions/meanf/libMeanf.la \ + $(top_builddir)/src/c/elementaryFunctions/pow/libPow.la \ + $(top_builddir)/src/c/elementaryFunctions/log/libLog.la \ + $(top_builddir)/src/c/elementaryFunctions/exp/libExp.la \ + $(top_builddir)/src/c/elementaryFunctions/cos/libCos.la \ + $(top_builddir)/src/c/elementaryFunctions/sin/libSin.la \ + $(top_builddir)/src/c/elementaryFunctions/cosh/libCosh.la \ + $(top_builddir)/src/c/elementaryFunctions/sinh/libSinh.la \ + $(top_builddir)/src/c/elementaryFunctions/sqrt/libSqrt.la \ + $(top_builddir)/src/c/elementaryFunctions/log1p/libLog1p.la \ + $(top_builddir)/src/c/elementaryFunctions/lnp1m1/libLnp1m1.la \ + $(top_builddir)/src/c/auxiliaryFunctions/pythag/libPythag.la \ + $(top_builddir)/src/c/auxiliaryFunctions/abs/libAbs.la \ + $(top_builddir)/src/c/matrixOperations/transpose/libMatrixTranspose.la \ + $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ + $(top_builddir)/src/c/operations/division/libDivision.la \ + $(top_builddir)/src/c/auxiliaryFunctions/conj/libConj.la +testDoubleVariancef_DEPENDENCIES = $(am__DEPENDENCIES_1) +testDoubleVariancef_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(testDoubleVariancef_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ + $(LDFLAGS) -o $@ +am_testFloatVariancef_OBJECTS = \ + testFloatVariancef-testFloatVariancef.$(OBJEXT) +testFloatVariancef_OBJECTS = $(am_testFloatVariancef_OBJECTS) +testFloatVariancef_DEPENDENCIES = $(am__DEPENDENCIES_1) +testFloatVariancef_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(testFloatVariancef_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ + $(LDFLAGS) -o $@ +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/includes +depcomp = $(SHELL) $(top_srcdir)/config/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +CCLD = $(CC) +LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ + $(LDFLAGS) -o $@ +SOURCES = $(libvariancef_la_SOURCES) $(testDoubleVariancef_SOURCES) \ + $(testFloatVariancef_SOURCES) +DIST_SOURCES = $(libvariancef_la_SOURCES) \ + $(testDoubleVariancef_SOURCES) $(testFloatVariancef_SOURCES) +ETAGS = etags +CTAGS = ctags +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +F77 = @F77@ +FFLAGS = @FFLAGS@ +FGREP = @FGREP@ +GREP = @GREP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBMATH = @LIBMATH@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +ac_ct_F77 = @ac_ct_F77@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +lt_ECHO = @lt_ECHO@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +libvariancef_la_CFLAGS = -I $(top_builddir)/src/c/type \ + -I $(top_builddir)/src/c/elementaryFunctions/includes \ + -I $(top_builddir)/src/c/matrixOperations/includes \ + -I $(top_builddir)/src/c/operations/includes \ + -I ../includes + +instdir = $(top_builddir)/lib +pkglib_LTLIBRARIES = libvariancef.la +libvariancef_la_SOURCES = $(HEAD) $(SRC) +SRC = svariancefa.c \ + scolumnvariancefa.c \ + dvariancefa.c \ + srowvariancefa.c \ + drowvariancefa.c \ + dcolumnvariancefa.c \ + cvariancefa.c \ + crowvariancefa.c \ + ccolumnvariancefa.c \ + zvariancefa.c \ + zrowvariancefa.c \ + zcolumnvariancefa.c + +HEAD = ../includes/variancef.h + +#### +# Checking Part +#### +check_INCLUDES = -I $(top_builddir)/src/c/statisticsFunctions/includes \ + -I $(top_builddir)/src/c/elementaryFunctions/includes \ + -I $(top_builddir)/src/c/matrixOperations/includes \ + -I $(top_builddir)/src/c/operations/includes \ + -I $(top_builddir)/src/c/type + +check_LDADD = $(top_builddir)/src/c/type/libDoubleComplex.la \ + $(top_builddir)/src/c/type/libFloatComplex.la \ + $(top_builddir)/src/c/operations/addition/libAddition.la \ + $(top_builddir)/src/c/operations/subtraction/libSubtraction.la \ + $(top_builddir)/src/fortran/lapack/libscilapack.la \ + $(top_builddir)/src/c/statisticsFunctions/variancef/libvariancef.la \ + $(top_builddir)/src/c/statisticsFunctions/sum/libSum.la \ + $(top_builddir)/src/c/statisticsFunctions/meanf/libMeanf.la \ + $(top_builddir)/src/c/elementaryFunctions/pow/libPow.la \ + $(top_builddir)/src/c/elementaryFunctions/log/libLog.la \ + $(top_builddir)/src/c/elementaryFunctions/exp/libExp.la \ + $(top_builddir)/src/c/elementaryFunctions/cos/libCos.la \ + $(top_builddir)/src/c/elementaryFunctions/sin/libSin.la \ + $(top_builddir)/src/c/elementaryFunctions/cosh/libCosh.la \ + $(top_builddir)/src/c/elementaryFunctions/sinh/libSinh.la \ + $(top_builddir)/src/c/elementaryFunctions/sqrt/libSqrt.la \ + $(top_builddir)/src/c/elementaryFunctions/log1p/libLog1p.la \ + $(top_builddir)/src/c/elementaryFunctions/lnp1m1/libLnp1m1.la \ + $(top_builddir)/src/c/auxiliaryFunctions/pythag/libPythag.la \ + $(top_builddir)/src/c/auxiliaryFunctions/abs/libAbs.la \ + $(top_builddir)/src/c/matrixOperations/transpose/libMatrixTranspose.la \ + $(top_builddir)/src/c/operations/multiplication/libMultiplication.la \ + $(top_builddir)/src/c/operations/division/libDivision.la \ + $(top_builddir)/src/c/auxiliaryFunctions/conj/libConj.la \ + @LIBMATH@ + + +# +# -*- variancef Tests -*- +# +testFloatVariancef_SOURCES = testFloatVariancef.c +testFloatVariancef_CFLAGS = $(check_INCLUDES) +testFloatVariancef_LDADD = $(check_LDADD) +testDoubleVariancef_SOURCES = testDoubleVariancef.c +testDoubleVariancef_CFLAGS = $(check_INCLUDES) +testDoubleVariancef_LDADD = $(check_LDADD) +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/c/statisticsFunctions/variancef/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/c/statisticsFunctions/variancef/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): +install-pkglibLTLIBRARIES: $(pkglib_LTLIBRARIES) + @$(NORMAL_INSTALL) + test -z "$(pkglibdir)" || $(MKDIR_P) "$(DESTDIR)$(pkglibdir)" + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + list2=; for p in $$list; do \ + if test -f $$p; then \ + list2="$$list2 $$p"; \ + else :; fi; \ + done; \ + test -z "$$list2" || { \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(pkglibdir)'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(pkglibdir)"; \ + } + +uninstall-pkglibLTLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(pkglib_LTLIBRARIES)'; test -n "$(pkglibdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(pkglibdir)/$$f'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(pkglibdir)/$$f"; \ + done + +clean-pkglibLTLIBRARIES: + -test -z "$(pkglib_LTLIBRARIES)" || rm -f $(pkglib_LTLIBRARIES) + @list='$(pkglib_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done +libvariancef.la: $(libvariancef_la_OBJECTS) $(libvariancef_la_DEPENDENCIES) + $(libvariancef_la_LINK) -rpath $(pkglibdir) $(libvariancef_la_OBJECTS) $(libvariancef_la_LIBADD) $(LIBS) + +clean-checkPROGRAMS: + @list='$(check_PROGRAMS)'; test -n "$$list" || exit 0; \ + echo " rm -f" $$list; \ + rm -f $$list || exit $$?; \ + test -n "$(EXEEXT)" || exit 0; \ + list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f" $$list; \ + rm -f $$list +testDoubleVariancef$(EXEEXT): $(testDoubleVariancef_OBJECTS) $(testDoubleVariancef_DEPENDENCIES) + @rm -f testDoubleVariancef$(EXEEXT) + $(testDoubleVariancef_LINK) $(testDoubleVariancef_OBJECTS) $(testDoubleVariancef_LDADD) $(LIBS) +testFloatVariancef$(EXEEXT): $(testFloatVariancef_OBJECTS) $(testFloatVariancef_DEPENDENCIES) + @rm -f testFloatVariancef$(EXEEXT) + $(testFloatVariancef_LINK) $(testFloatVariancef_OBJECTS) $(testFloatVariancef_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvariancef_la-ccolumnvariancefa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvariancef_la-crowvariancefa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvariancef_la-cvariancefa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvariancef_la-dcolumnvariancefa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvariancef_la-drowvariancefa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvariancef_la-dvariancefa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvariancef_la-scolumnvariancefa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvariancef_la-srowvariancefa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvariancef_la-svariancefa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvariancef_la-zcolumnvariancefa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvariancef_la-zrowvariancefa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvariancef_la-zvariancefa.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testDoubleVariancef-testDoubleVariancef.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testFloatVariancef-testFloatVariancef.Po@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c $< + +.c.obj: +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< + +libvariancef_la-svariancefa.lo: svariancefa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -MT libvariancef_la-svariancefa.lo -MD -MP -MF $(DEPDIR)/libvariancef_la-svariancefa.Tpo -c -o libvariancef_la-svariancefa.lo `test -f 'svariancefa.c' || echo '$(srcdir)/'`svariancefa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libvariancef_la-svariancefa.Tpo $(DEPDIR)/libvariancef_la-svariancefa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='svariancefa.c' object='libvariancef_la-svariancefa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -c -o libvariancef_la-svariancefa.lo `test -f 'svariancefa.c' || echo '$(srcdir)/'`svariancefa.c + +libvariancef_la-scolumnvariancefa.lo: scolumnvariancefa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -MT libvariancef_la-scolumnvariancefa.lo -MD -MP -MF $(DEPDIR)/libvariancef_la-scolumnvariancefa.Tpo -c -o libvariancef_la-scolumnvariancefa.lo `test -f 'scolumnvariancefa.c' || echo '$(srcdir)/'`scolumnvariancefa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libvariancef_la-scolumnvariancefa.Tpo $(DEPDIR)/libvariancef_la-scolumnvariancefa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='scolumnvariancefa.c' object='libvariancef_la-scolumnvariancefa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -c -o libvariancef_la-scolumnvariancefa.lo `test -f 'scolumnvariancefa.c' || echo '$(srcdir)/'`scolumnvariancefa.c + +libvariancef_la-dvariancefa.lo: dvariancefa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -MT libvariancef_la-dvariancefa.lo -MD -MP -MF $(DEPDIR)/libvariancef_la-dvariancefa.Tpo -c -o libvariancef_la-dvariancefa.lo `test -f 'dvariancefa.c' || echo '$(srcdir)/'`dvariancefa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libvariancef_la-dvariancefa.Tpo $(DEPDIR)/libvariancef_la-dvariancefa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dvariancefa.c' object='libvariancef_la-dvariancefa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -c -o libvariancef_la-dvariancefa.lo `test -f 'dvariancefa.c' || echo '$(srcdir)/'`dvariancefa.c + +libvariancef_la-srowvariancefa.lo: srowvariancefa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -MT libvariancef_la-srowvariancefa.lo -MD -MP -MF $(DEPDIR)/libvariancef_la-srowvariancefa.Tpo -c -o libvariancef_la-srowvariancefa.lo `test -f 'srowvariancefa.c' || echo '$(srcdir)/'`srowvariancefa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libvariancef_la-srowvariancefa.Tpo $(DEPDIR)/libvariancef_la-srowvariancefa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='srowvariancefa.c' object='libvariancef_la-srowvariancefa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -c -o libvariancef_la-srowvariancefa.lo `test -f 'srowvariancefa.c' || echo '$(srcdir)/'`srowvariancefa.c + +libvariancef_la-drowvariancefa.lo: drowvariancefa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -MT libvariancef_la-drowvariancefa.lo -MD -MP -MF $(DEPDIR)/libvariancef_la-drowvariancefa.Tpo -c -o libvariancef_la-drowvariancefa.lo `test -f 'drowvariancefa.c' || echo '$(srcdir)/'`drowvariancefa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libvariancef_la-drowvariancefa.Tpo $(DEPDIR)/libvariancef_la-drowvariancefa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='drowvariancefa.c' object='libvariancef_la-drowvariancefa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -c -o libvariancef_la-drowvariancefa.lo `test -f 'drowvariancefa.c' || echo '$(srcdir)/'`drowvariancefa.c + +libvariancef_la-dcolumnvariancefa.lo: dcolumnvariancefa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -MT libvariancef_la-dcolumnvariancefa.lo -MD -MP -MF $(DEPDIR)/libvariancef_la-dcolumnvariancefa.Tpo -c -o libvariancef_la-dcolumnvariancefa.lo `test -f 'dcolumnvariancefa.c' || echo '$(srcdir)/'`dcolumnvariancefa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libvariancef_la-dcolumnvariancefa.Tpo $(DEPDIR)/libvariancef_la-dcolumnvariancefa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dcolumnvariancefa.c' object='libvariancef_la-dcolumnvariancefa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -c -o libvariancef_la-dcolumnvariancefa.lo `test -f 'dcolumnvariancefa.c' || echo '$(srcdir)/'`dcolumnvariancefa.c + +libvariancef_la-cvariancefa.lo: cvariancefa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -MT libvariancef_la-cvariancefa.lo -MD -MP -MF $(DEPDIR)/libvariancef_la-cvariancefa.Tpo -c -o libvariancef_la-cvariancefa.lo `test -f 'cvariancefa.c' || echo '$(srcdir)/'`cvariancefa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libvariancef_la-cvariancefa.Tpo $(DEPDIR)/libvariancef_la-cvariancefa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='cvariancefa.c' object='libvariancef_la-cvariancefa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -c -o libvariancef_la-cvariancefa.lo `test -f 'cvariancefa.c' || echo '$(srcdir)/'`cvariancefa.c + +libvariancef_la-crowvariancefa.lo: crowvariancefa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -MT libvariancef_la-crowvariancefa.lo -MD -MP -MF $(DEPDIR)/libvariancef_la-crowvariancefa.Tpo -c -o libvariancef_la-crowvariancefa.lo `test -f 'crowvariancefa.c' || echo '$(srcdir)/'`crowvariancefa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libvariancef_la-crowvariancefa.Tpo $(DEPDIR)/libvariancef_la-crowvariancefa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='crowvariancefa.c' object='libvariancef_la-crowvariancefa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -c -o libvariancef_la-crowvariancefa.lo `test -f 'crowvariancefa.c' || echo '$(srcdir)/'`crowvariancefa.c + +libvariancef_la-ccolumnvariancefa.lo: ccolumnvariancefa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -MT libvariancef_la-ccolumnvariancefa.lo -MD -MP -MF $(DEPDIR)/libvariancef_la-ccolumnvariancefa.Tpo -c -o libvariancef_la-ccolumnvariancefa.lo `test -f 'ccolumnvariancefa.c' || echo '$(srcdir)/'`ccolumnvariancefa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libvariancef_la-ccolumnvariancefa.Tpo $(DEPDIR)/libvariancef_la-ccolumnvariancefa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='ccolumnvariancefa.c' object='libvariancef_la-ccolumnvariancefa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -c -o libvariancef_la-ccolumnvariancefa.lo `test -f 'ccolumnvariancefa.c' || echo '$(srcdir)/'`ccolumnvariancefa.c + +libvariancef_la-zvariancefa.lo: zvariancefa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -MT libvariancef_la-zvariancefa.lo -MD -MP -MF $(DEPDIR)/libvariancef_la-zvariancefa.Tpo -c -o libvariancef_la-zvariancefa.lo `test -f 'zvariancefa.c' || echo '$(srcdir)/'`zvariancefa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libvariancef_la-zvariancefa.Tpo $(DEPDIR)/libvariancef_la-zvariancefa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zvariancefa.c' object='libvariancef_la-zvariancefa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -c -o libvariancef_la-zvariancefa.lo `test -f 'zvariancefa.c' || echo '$(srcdir)/'`zvariancefa.c + +libvariancef_la-zrowvariancefa.lo: zrowvariancefa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -MT libvariancef_la-zrowvariancefa.lo -MD -MP -MF $(DEPDIR)/libvariancef_la-zrowvariancefa.Tpo -c -o libvariancef_la-zrowvariancefa.lo `test -f 'zrowvariancefa.c' || echo '$(srcdir)/'`zrowvariancefa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libvariancef_la-zrowvariancefa.Tpo $(DEPDIR)/libvariancef_la-zrowvariancefa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zrowvariancefa.c' object='libvariancef_la-zrowvariancefa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -c -o libvariancef_la-zrowvariancefa.lo `test -f 'zrowvariancefa.c' || echo '$(srcdir)/'`zrowvariancefa.c + +libvariancef_la-zcolumnvariancefa.lo: zcolumnvariancefa.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -MT libvariancef_la-zcolumnvariancefa.lo -MD -MP -MF $(DEPDIR)/libvariancef_la-zcolumnvariancefa.Tpo -c -o libvariancef_la-zcolumnvariancefa.lo `test -f 'zcolumnvariancefa.c' || echo '$(srcdir)/'`zcolumnvariancefa.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libvariancef_la-zcolumnvariancefa.Tpo $(DEPDIR)/libvariancef_la-zcolumnvariancefa.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='zcolumnvariancefa.c' object='libvariancef_la-zcolumnvariancefa.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvariancef_la_CFLAGS) $(CFLAGS) -c -o libvariancef_la-zcolumnvariancefa.lo `test -f 'zcolumnvariancefa.c' || echo '$(srcdir)/'`zcolumnvariancefa.c + +testDoubleVariancef-testDoubleVariancef.o: testDoubleVariancef.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleVariancef_CFLAGS) $(CFLAGS) -MT testDoubleVariancef-testDoubleVariancef.o -MD -MP -MF $(DEPDIR)/testDoubleVariancef-testDoubleVariancef.Tpo -c -o testDoubleVariancef-testDoubleVariancef.o `test -f 'testDoubleVariancef.c' || echo '$(srcdir)/'`testDoubleVariancef.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleVariancef-testDoubleVariancef.Tpo $(DEPDIR)/testDoubleVariancef-testDoubleVariancef.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleVariancef.c' object='testDoubleVariancef-testDoubleVariancef.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleVariancef_CFLAGS) $(CFLAGS) -c -o testDoubleVariancef-testDoubleVariancef.o `test -f 'testDoubleVariancef.c' || echo '$(srcdir)/'`testDoubleVariancef.c + +testDoubleVariancef-testDoubleVariancef.obj: testDoubleVariancef.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleVariancef_CFLAGS) $(CFLAGS) -MT testDoubleVariancef-testDoubleVariancef.obj -MD -MP -MF $(DEPDIR)/testDoubleVariancef-testDoubleVariancef.Tpo -c -o testDoubleVariancef-testDoubleVariancef.obj `if test -f 'testDoubleVariancef.c'; then $(CYGPATH_W) 'testDoubleVariancef.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleVariancef.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testDoubleVariancef-testDoubleVariancef.Tpo $(DEPDIR)/testDoubleVariancef-testDoubleVariancef.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testDoubleVariancef.c' object='testDoubleVariancef-testDoubleVariancef.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testDoubleVariancef_CFLAGS) $(CFLAGS) -c -o testDoubleVariancef-testDoubleVariancef.obj `if test -f 'testDoubleVariancef.c'; then $(CYGPATH_W) 'testDoubleVariancef.c'; else $(CYGPATH_W) '$(srcdir)/testDoubleVariancef.c'; fi` + +testFloatVariancef-testFloatVariancef.o: testFloatVariancef.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatVariancef_CFLAGS) $(CFLAGS) -MT testFloatVariancef-testFloatVariancef.o -MD -MP -MF $(DEPDIR)/testFloatVariancef-testFloatVariancef.Tpo -c -o testFloatVariancef-testFloatVariancef.o `test -f 'testFloatVariancef.c' || echo '$(srcdir)/'`testFloatVariancef.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatVariancef-testFloatVariancef.Tpo $(DEPDIR)/testFloatVariancef-testFloatVariancef.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatVariancef.c' object='testFloatVariancef-testFloatVariancef.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatVariancef_CFLAGS) $(CFLAGS) -c -o testFloatVariancef-testFloatVariancef.o `test -f 'testFloatVariancef.c' || echo '$(srcdir)/'`testFloatVariancef.c + +testFloatVariancef-testFloatVariancef.obj: testFloatVariancef.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatVariancef_CFLAGS) $(CFLAGS) -MT testFloatVariancef-testFloatVariancef.obj -MD -MP -MF $(DEPDIR)/testFloatVariancef-testFloatVariancef.Tpo -c -o testFloatVariancef-testFloatVariancef.obj `if test -f 'testFloatVariancef.c'; then $(CYGPATH_W) 'testFloatVariancef.c'; else $(CYGPATH_W) '$(srcdir)/testFloatVariancef.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/testFloatVariancef-testFloatVariancef.Tpo $(DEPDIR)/testFloatVariancef-testFloatVariancef.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testFloatVariancef.c' object='testFloatVariancef-testFloatVariancef.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testFloatVariancef_CFLAGS) $(CFLAGS) -c -o testFloatVariancef-testFloatVariancef.obj `if test -f 'testFloatVariancef.c'; then $(CYGPATH_W) 'testFloatVariancef.c'; else $(CYGPATH_W) '$(srcdir)/testFloatVariancef.c'; fi` + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + set x; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) + $(MAKE) $(AM_MAKEFLAGS) check-TESTS +check: check-am +all-am: Makefile $(LTLIBRARIES) +installdirs: + for dir in "$(DESTDIR)$(pkglibdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-checkPROGRAMS clean-generic clean-libtool \ + clean-pkglibLTLIBRARIES mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-pkglibLTLIBRARIES + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-pkglibLTLIBRARIES + +.MAKE: check-am install-am install-strip + +.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \ + clean-checkPROGRAMS clean-generic clean-libtool \ + clean-pkglibLTLIBRARIES ctags distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-pkglibLTLIBRARIES install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ + uninstall-am uninstall-pkglibLTLIBRARIES + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/src/c/statisticsFunctions/variancef/ccolumnvariancefa.c b/src/c/statisticsFunctions/variancef/ccolumnvariancefa.c new file mode 100644 index 0000000..4b00a08 --- /dev/null +++ b/src/c/statisticsFunctions/variancef/ccolumnvariancefa.c @@ -0,0 +1,35 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + + +#include "variancef.h" +#include "matrixTranspose.h" + +void ccolumnvariancefa(floatComplex *in1, int lines, int columns,floatComplex *in2, floatComplex* out){ + + int i = 0 ; + + floatComplex* transp = (floatComplex*) malloc ( sizeof (double) *(unsigned int) (lines*columns)); + + + + ctransposea ( in1 , lines , columns , transp ) ; + + + for ( i = 0; i < lines ; i++) + out[i] = cvariancefa ( transp + i*columns , columns , in2 ) ; + + + free (transp); + + +} diff --git a/src/c/statisticsFunctions/variancef/crowvariancefa.c b/src/c/statisticsFunctions/variancef/crowvariancefa.c new file mode 100644 index 0000000..1e4f854 --- /dev/null +++ b/src/c/statisticsFunctions/variancef/crowvariancefa.c @@ -0,0 +1,22 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "variancef.h" + +void crowvariancefa(floatComplex *in1, int lines, int columns,floatComplex *in2, floatComplex* out){ + + int i = 0 ; + + for ( i = 0; i < columns ; i++) + out[i] = cvariancefa ( in1 + i*lines , lines , in2) ; +} + diff --git a/src/c/statisticsFunctions/variancef/cvariancefa.c b/src/c/statisticsFunctions/variancef/cvariancefa.c new file mode 100644 index 0000000..4f4871c --- /dev/null +++ b/src/c/statisticsFunctions/variancef/cvariancefa.c @@ -0,0 +1,35 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "variancef.h" +#include "division.h" + +floatComplex cvariancefa(floatComplex *in1, int size, floatComplex *in2) + +{ + int i = 0 ; + floatComplex temp = FloatComplex (0.0f, 0.0f ); + floatComplex accumulate =FloatComplex (0.0f, 0.0f ); + floatComplex accumulateFre = FloatComplex (0.0f, 0.0f ); + + floatComplex meanf = cmeanfa (in1 , size , in2); + + for(i = 0 ; i < size ; ++i) + { + temp = cpows ( cdiffs (in1[i] , meanf ) ,FloatComplex (2.0f, 0.0f ) ); + temp = cmuls( in2[i] , temp); + + accumulate = cadds( temp , accumulate); + accumulateFre = cadds (in2[i] ,accumulateFre ); + } + return crdivs (accumulate , cdiffs (accumulateFre ,FloatComplex(1.0f,0.0f)) ); +} diff --git a/src/c/statisticsFunctions/variancef/dcolumnvariancefa.c b/src/c/statisticsFunctions/variancef/dcolumnvariancefa.c new file mode 100644 index 0000000..686e6de --- /dev/null +++ b/src/c/statisticsFunctions/variancef/dcolumnvariancefa.c @@ -0,0 +1,33 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "variancef.h" +#include "matrixTranspose.h" + +void dcolumnvariancefa(double *in1, int lines, int columns, double *in2, double* out){ + + int i = 0 ; + + double* transp = (double*) malloc ( sizeof (double) *(unsigned int) (lines*columns)); + + + + dtransposea ( in1 , lines , columns , transp ) ; + + + for ( i = 0; i < lines ; i++) + out[i] = dvariancefa ( transp + i*columns , columns , in2) ; + + + free (transp); +} + diff --git a/src/c/statisticsFunctions/variancef/drowvariancefa.c b/src/c/statisticsFunctions/variancef/drowvariancefa.c new file mode 100644 index 0000000..274e828 --- /dev/null +++ b/src/c/statisticsFunctions/variancef/drowvariancefa.c @@ -0,0 +1,23 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + + +#include "variancef.h" + +void drowvariancefa(double *in1, int lines, int columns,double *in2, double* out){ + + int i = 0 ; + + for ( i = 0; i < columns ; i++) + out[i] = dvariancefa ( in1 + i*lines , lines , in2 ) ; + +} diff --git a/src/c/statisticsFunctions/variancef/dvariancefa.c b/src/c/statisticsFunctions/variancef/dvariancefa.c new file mode 100644 index 0000000..32bd38c --- /dev/null +++ b/src/c/statisticsFunctions/variancef/dvariancefa.c @@ -0,0 +1,35 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "variancef.h" + +double dvariancefa(double *in1, int size , double * in2) +{ + int i = 0 ; + double temp = 0.0; + double accumulate = 0.0 ; + double accumulateFre = 0.0 ; + + double meanf = dmeanfa (in1 , size , in2); + + for(i = 0 ; i < size ; ++i) + { + temp = dpows ( (in1[i] - meanf ) ,2 ); + temp *= in2[i]; + + accumulate += temp ; + accumulateFre += in2[i]; + } + + return accumulate / (accumulateFre -1); +} + diff --git a/src/c/statisticsFunctions/variancef/scolumnvariancefa.c b/src/c/statisticsFunctions/variancef/scolumnvariancefa.c new file mode 100644 index 0000000..a0283aa --- /dev/null +++ b/src/c/statisticsFunctions/variancef/scolumnvariancefa.c @@ -0,0 +1,47 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + + +#include "variancef.h" +#include "meanf.h" + + +void scolumnvariancefa(float *in1, int lines, int columns, float *in2, float* out){ + int i = 0; + int j = 0; + float temp = 0.0f; + float accumulate = 0.0f; + float accumulateFre = 0.0f ; + + scolumnmeanfa(in1, lines, columns, in2, out ); + + + /*we first multiply each cell of the input matrix by its coefficient*/ + for (j = 0; j < lines; ++j) + { + accumulate = 0.0f; + accumulateFre= 0.0f; + temp = 0.0f; + + for ( i = 0 ; i < columns; ++i ) + { + temp = spows ( (in1[lines*i + j] - out[j] ) ,2 ); + temp *= in2[lines*i + j]; + + accumulate += temp ; + accumulateFre += in2[lines*i + j]; + } + out[j] = accumulate / (accumulateFre - 1) ; + } + +} + diff --git a/src/c/statisticsFunctions/variancef/srowvariancefa.c b/src/c/statisticsFunctions/variancef/srowvariancefa.c new file mode 100644 index 0000000..36c4783 --- /dev/null +++ b/src/c/statisticsFunctions/variancef/srowvariancefa.c @@ -0,0 +1,21 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "variancef.h" + +void srowvariancefa(float *in1, int lines, int columns, float *in2, float* out){ + + int i = 0 ; + + for ( i = 0; i < columns ; i++) + out[i] = svariancefa ( in1 + i*lines , lines,in2 + i*lines ) ; +} diff --git a/src/c/statisticsFunctions/variancef/svariancefa.c b/src/c/statisticsFunctions/variancef/svariancefa.c new file mode 100644 index 0000000..f49d2b3 --- /dev/null +++ b/src/c/statisticsFunctions/variancef/svariancefa.c @@ -0,0 +1,46 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "variancef.h" + +/* +s_moyennepond = meanf(x, fre) +s_ecartmoyenne = x - s_moyennepond +s_ecartcarre = s_ecartmoyenne.^2 +s_ecartcarrepondere = s_ecartcarre .* fre +s = sum( s_ecartcarrepondere )/(sumfre - 1), +*/ +float svariancefa(float *in1, int size, float* in2) +{ + int i = 0 ; + float temp = 0.0f; + float accumulate = 0.0f ; + float accumulateFre = 0.0f ; + + float meanf = smeanfa (in1 , size , in2); + /*printf ("\nmeanf %lf \n" ,meanf);*/ + for(i = 0 ; i < size ; ++i) + { + + temp = spows ( (in1[i] - meanf ) ,2 ); + temp *= in2[i]; + + accumulate += temp ; + accumulateFre += in2[i]; + + + } + + return accumulate / (accumulateFre - 1) ; +} + + diff --git a/src/c/statisticsFunctions/variancef/testDoubleVariance.c b/src/c/statisticsFunctions/variancef/testDoubleVariance.c new file mode 100644 index 0000000..b85a157 --- /dev/null +++ b/src/c/statisticsFunctions/variancef/testDoubleVariance.c @@ -0,0 +1,335 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2006-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <assert.h> +#include <stdio.h> + +#include "variance.h" + +#define SINGLE 1.323312455 +#define LINES 7 +#define COLUMNS 10 +#define MATRIX {0.102326436434,0.939044147730,0.638607255649,0.059883427806,0.311199211050,\ + 0.377510951832,0.909709410276,0.928138985299,0.855155082885,0.308869514614,\ +0.729239261709,0.127006734256,0.242402311414,0.807912770193,0.621117659844,\ + 0.081452373881,0.088844371960,0.587072817143,0.068080495112,0.995457543526,\ +0.835322400089,0.656235548668,0.767905956600,0.706818781793,0.187699332368,\ + 0.568810169585,0.401039466728,0.397196868435,0.483212330844,0.161224133335,\ +0.932864250615,0.719208867755,0.262409000657,0.931377100293,0.596724558622,\ + 0.310327019077,0.350161732174,0.104841318447,0.830732351169,0.804621329065,\ +0.050784428138,0.551920620725,0.125952405389,0.083156193607,0.420623748098,\ + 0.168616071343,0.707545555662,0.104633864947,0.465604968835,0.489758284763,\ +0.167727907188,0.760689914692,0.454900974408,0.063926273491,0.87152507063,0.978668818716,\ + 0.135898929089,0.484713065904,0.785042577423,0.049412418623,\ +0.947593610268,0.884073690511,0.212796610314,0.654832502827,0.007690255996,\ + 0.031808692031,0.706323316786,0.008731670678,0.270014822017,0.153652121313} + + +#define MATRIXROW {0.1688249423502767021521 , 0.0729081225272336097554 , 0.0579879770921138057438 , 0.1499989757031960635469 , 0.0850863194040760717485 , 0.1085086384507867873772 , 0.0969379859569881041637 , 0.1072816602642319844252 , 0.0913638718167188862429 , 0.1285778184208021535095 } +#define MATRIXCOL { 0.1233078274276283442523, \ + 0.1232135941992091865416 , \ + 0.0540377259589001762707 , \ + 0.0925512303008872161403 , \ + 0.0555055644879708723338 , \ + 0.1276299219577190779962 , \ + 0.1385167433745558840386 } + + +#define IMATRIX {0.05826747464016080,0.99946373142302036,0.85600351681932807,0.62329693790525198,\ + 0.49792320514097810,0.44210509583353996,0.55833499459549785,0.09633230511099100,\ + 0.80100952507928014,0.34466254524886608,\ +0.48831309471279383,0.95087061496451497,0.01332767866551876,0.76261807000264525,\ + 0.74346329551190138,0.65157829830422997,0.57006288319826126,0.70580983115360141,\ + 0.51323400903493166,0.64977857517078519,\ +0.80352442665025592,0.69910932797938585,0.69258948462083936,0.91169391758739948,\ + 0.92454590043053031,0.27637310232967138,0.31692579621449113,0.86305770650506020,\ + 0.20109100220724940,0.01225362811237574,\ +0.38199013099074364,0.96006405679509044,0.16440964583307505,0.59608811559155583,\ + 0.72101737372577190,0.58661046391353011,0.99326277803629637,0.00761850038543344,\ + 0.78608208894729614,0.89965870184823871,\ +0.43115562805905938,0.81857266277074814,0.83410377753898501,0.55516970623284578,\ + 0.51345925079658628,0.04770902730524540,0.80747798969969153,0.80489510949701071,\ + 0.78650354826822877,0.30791273340582848,\ +0.75731822755187750,0.53423820668831468,0.42618893459439278,0.85448804078623652,\ + 0.92601215932518244,0.94169309409335256,0.85547966323792934,0.59637623047456145,\ + 0.69515300076454878,0.18359116325154901,\ +0.01200280850753188,0.2255702270194888,0.34853330114856362,0.55313225090503693,\ + 0.63695094687864184,0.96132039744406939,0.50314606027677655,0.11768362112343311,\ + 0.42481321236118674,0.52963322307914495} + +#define RMATRIX {0.53868199465796351,0.65326874051243067,0.37497402401641011,0.60422550700604916,\ + 0.33622304117307067,0.03531436901539564,0.33213760564103723,0.39493087679147720,\ + 0.04170337272807956,0.87363853026181459,\ +0.65950810909271240,0.31221040291711688,0.15333442110568285,0.66478573577478528,\ + 0.44319023378193378,0.40884594758972526,0.94536898937076330,0.67733758920803666,\ + 0.18673646822571754,0.92331133363768458,\ +0.55921846115961671,0.75012728199362755,0.23257926432415843,0.57102064136415720,\ + 0.60969385923817754,0.67336730472743511,0.07624059682711959,0.10437540244311094,\ + 0.95672677317634225,0.19771346449851990,\ +0.05278092902153730,0.75808868417516351,0.17633479088544846,0.01146994484588504,\ + 0.36732212174683809,0.19948644982650876,0.52714426256716251,0.21445603063330054,\ + 0.94751045759767294,0.04272260749712586,\ +0.03257346292957664,0.53217577841132879,0.87635089689865708,0.15471007302403450,\ + 0.25448470888659358,0.91815057490020990,0.72509902389720082,0.87545845471322536,\ + 0.05635281419381499,0.01432112138718367,\ +0.57406943850219250,0.80984140699729323,0.01664119493216276,0.93888836959376931,\ + 0.11264799535274506,0.66036546928808093,0.76042845565825701,0.25908330874517560,\ + 0.88014078326523304,0.70332178613170981,\ +0.94614937948063016,0.78529163636267185,0.20241560926660895,0.10981105919927359,\ + 0.75415370846167207,0.15320260450243950,0.59521253732964396,0.71318271104246378,\ + 0.51107599260285497,0.52125945501029491} + + + + + + +#define IMATRIXROW {-0.0419293790250184,-0.05416405376783551,+0.11775191182077104,+0.08015791690354153,+0.00011032748454003,\ +-0.10124210045965254,0.06720614014223115,+0.02470873836336094,-0.07082037296251543,-0.00621987869853545} + +#define RMATRIXROW {0.01439621349781126,-0.04697393442028135,-0.03018604392150223,0.09765990436118642,0.01606884471097247,\ +-0.00604250542333471,0.02870576510687836,-0.04985742926427023,0.12356001472881707,0.05909180726174274} + +#define IMATRIXCOL {-0.01904810719805961,+0.04121453132770223,+0.00378553967089328,\ ++0.10307670507342410,+0.03497427750676810,+0.01761849804019567,-0.10182321471060848} + +#define RMATRIXCOL {-0.02739893277693160,0.01792852626358409,-0.02205084134302381,\ +-0.01012610864032573,0.07317682977907164,0.04762062457313784,0.00849011627117621} + + +static void dvariancesTest (void ) { + + double toTest = dvariances (SINGLE) ; + + assert ( fabs ( toTest - SINGLE ) / fabs( toTest) < 1e-16 ) ; +} + + +static void drowvariancesTest (void ) { + + double toTest = drowvariances (SINGLE) ; + + assert ( fabs ( toTest - SINGLE ) / fabs( toTest) < 1e-16 ) ; +} + +static void dcolumnvariancesTest (void) { + + double toTest = dcolumnvariances (SINGLE) ; + + assert ( fabs ( toTest - SINGLE ) / fabs( toTest) < 1e-16 ) ; +} + + +static void zvariancesTest (void ) { + + doubleComplex toTest = zvariances ( DoubleComplex ( SINGLE , SINGLE ) ); + + assert ( fabs ( zreals( toTest) - SINGLE ) / fabs( zreals( toTest)) < 1e-16 ) ; + assert ( fabs ( zimags( toTest) - SINGLE ) / fabs( zimags( toTest)) < 1e-16 ) ; +} + +static void zrowvariancesTest (void ) { + + doubleComplex toTest = zrowvariances ( DoubleComplex ( SINGLE , SINGLE ) ); + + assert ( fabs ( zreals( toTest) - SINGLE ) / fabs( zreals( toTest)) < 1e-16 ) ; + assert ( fabs ( zimags( toTest) - SINGLE ) / fabs( zimags( toTest)) < 1e-16 ) ; +} + +static void zcolumnvariancesTest (void ) { + + doubleComplex toTest = zrowvariances ( DoubleComplex ( SINGLE , SINGLE ) ); + + assert ( fabs ( zreals( toTest) - SINGLE ) / fabs( zreals( toTest)) < 1e-16 ) ; + assert ( fabs ( zimags( toTest) - SINGLE ) / fabs( zimags( toTest)) < 1e-16 ) ; +} + + + + + + +static void dvarianceaTest ( void){ + + double mtoTest[] = MATRIX ; + double result = 0.1007532974338590653352; + double out = dvariancea ( mtoTest , LINES*COLUMNS ); ; + + + + printf ( "out : %1.20f\t result : %1.20f\t\n" , out , result ) ; + + + + assert ( fabs ( out - result ) / fabs( out ) < 3e-16 ) ; + +} + + +static void drowvarianceaTest ( void ) +{ + int i = 0 ; + + double mtoTest[] = MATRIX ; + double result[LINES] = MATRIXCOL ; + double out[LINES] ; + + drowvariancea ( mtoTest , COLUMNS , LINES , out ) ; + + for ( i = 0 ; i < LINES ; i++) + { + printf ( "ROWout : %1.20f\t result : %1.20f\t\n" , out[i] , result [i] ) ; + assert ( fabs ( out[i] - result[i] ) / fabs( out[i] ) < 3e-16 ) ; + } + +} + +static void dcolumnvarianceaTest ( void ) +{ + int i = 0 ; + + double mtoTest[] = MATRIX ; + double result[COLUMNS] = MATRIXROW ; + double out[ COLUMNS] ; + + + + dcolumnvariancea ( mtoTest , COLUMNS, LINES , out ) ; + + for ( i = 0 ; i < COLUMNS; i++) + { + printf ( "%dCOLout : %1.20f\t result : %1.20f\t\n" ,i, out[i] , result [i] ) ; } + for ( i = 0 ; i < COLUMNS; i++) + { + assert ( fabs ( out[i] - result[i] ) / fabs( out[i] ) < 3e-16 ) ; + } + +} + + + + +static void zvarianceaTest ( void){ + + double rmtoTest [] = RMATRIX ; + double imtoTest [] = IMATRIX ; + doubleComplex Result = DoubleComplex ( 0.01225832057910708 , 0.01071188208687752 ); + + doubleComplex* mtoTest = DoubleComplexMatrix ( rmtoTest , imtoTest , LINES*COLUMNS ) ; + doubleComplex out = zvariancea ( mtoTest , LINES*COLUMNS ); ; + + assert ( fabs( zreals(out) - zreals (Result) ) / fabs (zreals (out)) < 3e-16 ); + assert( fabs( zimags(out) - zimags (Result )) / fabs (zimags (out)) < 3e-16 ); + + +} + +static void zrowvarianceaTest (void ) { + + int i = 0 ; + + double rmtoTest [] = RMATRIX ; + double imtoTest [] = IMATRIX ; + double rResult [] = RMATRIXROW; + double iResult [] = IMATRIXROW ; + + doubleComplex out[COLUMNS]; + doubleComplex* mtoTest = DoubleComplexMatrix ( rmtoTest , imtoTest , LINES*COLUMNS ) ; + doubleComplex* Result = DoubleComplexMatrix ( rResult , iResult , COLUMNS ); + + zrowvariancea ( mtoTest , LINES , COLUMNS , out ) ; + + /*FIXME test failed under 1-e04 precision */ + for ( i = 0 ; i < COLUMNS ; i++) + { + printf ( "%d out : %e %e \t result %e %e \n" , i , zreals(out[i]) , zimags(out[i]), zreals(Result[i]) ,zimags( Result[i])); + assert ( fabs( zreals(out[i]) - zreals (Result[i]) ) / fabs (zreals (out[i])) < 3e-16 ); + assert( fabs( zimags(out[i]) - zimags (Result[i])) / fabs (zimags (out[i])) < 3e-16); + + } +} + + + +static void zcolumnvarianceaTest ( void) { + int i = 0 ; + + double rmtoTest [] = RMATRIX ; + double imtoTest [] = IMATRIX ; + double rResult [] = RMATRIXCOL; + double iResult [] = IMATRIXCOL ; + + doubleComplex out[LINES]; + doubleComplex* mtoTest = DoubleComplexMatrix ( rmtoTest , imtoTest , LINES*COLUMNS ) ; + doubleComplex* Result = DoubleComplexMatrix ( rResult , iResult , LINES ); + + zcolumnvariancea ( mtoTest , LINES , COLUMNS , out ) ; + + + for ( i = 0 ; i < LINES ; i++) + { + printf ( "%d out : %e %e \t result %e %e \n" , i , zreals(out[i]) , zimags(out[i]), zreals(Result[i]) ,zimags( Result[i])); + assert ( fabs( zreals(out[i]) - zreals (Result[i]) ) / fabs (zreals (out[i])) < 3e-16 ); + assert( fabs( zimags(out[i]) - zimags (Result[i])) / fabs (zimags (out[i])) < 3e-16); + + } + + + +} + + + + + +static int testDoubleVariance (void) { + printf("\n\n\n\n*********************\n"); + printf("***** Double Tests ****\n"); + printf("*********************\n"); + + printf("\n\t>>>>singleton real Tests\n"); + dcolumnvariancesTest () ; + dvariancesTest () ; + drowvariancesTest () ; + + + printf("\n\t>>>>singleton complex Tests\n"); + + zrowvariancesTest () ; + zcolumnvariancesTest () ; + zvariancesTest () ; + + + + printf("\n\t>>>>array real Tests\n"); + + dvarianceaTest () ; + + dcolumnvarianceaTest () ; + drowvarianceaTest ( ); + + + printf("\n\t>>>>array complex Tests\n"); + + zvarianceaTest () ; + zrowvarianceaTest ( ); + zcolumnvarianceaTest () ; + + + return 0; +} + +int main(void) { + assert(testDoubleVariance () == 0); + return 0; +} + diff --git a/src/c/statisticsFunctions/variancef/testDoubleVariancef.c b/src/c/statisticsFunctions/variancef/testDoubleVariancef.c new file mode 100644 index 0000000..1102ae1 --- /dev/null +++ b/src/c/statisticsFunctions/variancef/testDoubleVariancef.c @@ -0,0 +1,373 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <assert.h> +#include <stdio.h> +#include <math.h> +#include "variancef.h" + + +/* #define LOCAL_DEBUG */ + +#define ERROR(x) printf("diff = %e\n", x) + +static int dvariancefsTest(void) { + + + printf("\n>>>> variancef Double Scalar Test\n"); + printf("result : %e " ,dvariancefs(value1,coef1)) ; + + assert( ( dvariancefs(3.0,56.0) ) == 0.0 ); + assert( ( dvariancefs( 1.123456789 ,2.0) ) == 0.0 ); + + + return 0; +} + +static int dvariancefaTest(void) { + double table1[3] = {3.0, 6.0, 9.0}; + double coef1[3] = {10.0, 2.0, 6.0}; + + double table2[5] = {3.186784563, + 4.186784563, + 5.186784563, + 6.186784563, + 7.186784563}; + + double coef2[5] = {3.0, + 4.0, + 5.0, + 6.0, + 7.0}; + + printf("\n>>>> variancef Double Array Test\n"); + printf("result1 : %e " ,dvariancefa(table1, 3, coef1)) ; + printf("result2 : %e " ,dvariancefa(table2, 5, coef2)) ; + assert((dvariancefa(table1, 3, coef1) - 8.000000000 )/ dvariancefa(table1, 3 ,coef1) < 1e-6); + assert((dvariancefa(table2, 5, coef2) - 1.916666666 )/ dvariancefa(table2, 5 ,coef2) < 1e-6); + return 0; +} + +/* +static int dcolumnvariancefaTest(void) { + int i = 0; + double table1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double coef1[9] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0}; + double table2[10] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0, 10.0}; + double coef2[10] = {11.0, 12.0, 13.0, 14.0 , 15.0, 16.0, 17.0, 18.0, 19.0, 20.0}; + double columnMeanmedTable1_3_3[3] = {0}; + double columnMeanmedTable1_1_9[1] = {0}; + double columnMeanmedTable1_9_1[9] = {0}; + double columnMeanmedTable2_2_5[2] = {0}; + double columnMeanmedTable2_5_2[5] = {0}; + + printf("\n>>>> Column Variancef Double Array Test\n"); + + [ 1 2 3 ] [10 11 12 ] + [ 4 5 6 ].*[ 1 2 3 ] => [ 68 32 146 ] + [ 7 8 9 ] [ 5 6 7 ] + + dcolumnvariancefa(table1, 3, 3, coef1 ,columnMeanmedTable1_3_3); + assert( ( fabs(columnMeanmedTable1_3_3[0] ) - ( 68.0 / 33.0 ) ) / fabs ( columnMeanmedTable1_3_3[0] ) < 1e-6 ); + assert( ( fabs(columnMeanmedTable1_3_3[1] ) - ( 32.0 / 6.0 ) ) / fabs ( columnMeanmedTable1_3_3[1] ) < 1e-6 ); + assert( ( fabs(columnMeanmedTable1_3_3[2] ) - ( 146.0 / 18.0 ) ) / fabs ( columnMeanmedTable1_3_3[2] ) < 1e-6 ); + + + [ 1 2 3 4 5 6 7 8 9 ] => [ 45 ] + + dcolumnvariancefa(table1, 1, 9, coef1 ,columnMeanmedTable1_1_9); + printf("result qui foire : %e\n " ,columnMeanmedTable1_1_9[0]) ; + assert( ( fabs(columnMeanmedTable1_1_9[0] ) - ( 1.146666666f ) ) / fabs ( columnMeanmedTable1_1_9[0] ) < 1e-6 ); + + + [ 1 ] + [ 2 ] + [ 3 ] + [ 4 ] + [ 5 ] => [ 1 2 3 4 5 6 7 8 9 ] + [ 6 ] + [ 7 ] + [ 8 ] + [ 9 ] + + dcolumnvariancefa(table1, 9, 1, coef1, columnMeanmedTable1_9_1); + for ( i = 0 ; i < 9 ; ++i) { + printf("columnMeanmedTable1_9_1[%d] = %e\n", i, columnMeanmedTable1_9_1[i]); + assert(columnMeanmedTable1_9_1[i] == table1[i]); + } + + + [ 1 3 5 7 9 ] .* [ 11 13 15 17 19 ] + [ 2 4 6 8 10 ] [ 12 14 16 18 20 ]=> [ 415 520 ] + + dcolumnvariancefa(table2, 2, 5, coef2 , columnMeanmedTable2_2_5); + assert( ( fabs(columnMeanmedTable2_2_5[0] ) - ( 415.0 / 75.0 ) ) / fabs ( columnMeanmedTable2_2_5[0] ) < 1e-6 ); + assert( ( fabs(columnMeanmedTable2_2_5[1] ) - ( 520.0 / 80.0 ) ) / fabs ( columnMeanmedTable2_2_5[1] ) < 1e-6 ); + for ( i = 0 ; i < 2 ; ++i) { + printf("columnMeanmedTable2_2_5[%d] = %e\n", i, columnMeanmedTable2_2_5[i]); + } + + + [ 1 6 ] [ 11 16 ] + [ 2 7 ] [ 12 17 ] => [ 107 143 183 227 275 ] + [ 3 8 ].*[ 13 18 ] + [ 4 9 ] [ 14 19 ] + [ 5 10 ] [ 15 20 ] + + + dcolumnvariancefa(table2, 5, 2, coef2 ,columnMeanmedTable2_5_2); + assert( ( fabs(columnMeanmedTable2_5_2[0] ) - ( 107.0 / 27.0 ) ) / fabs ( columnMeanmedTable2_5_2[0] ) < 1e-6 ); + assert( ( fabs(columnMeanmedTable2_5_2[1] ) - ( 143.0 / 29.0 ) ) / fabs ( columnMeanmedTable2_5_2[1] ) < 1e-6 ); + assert( ( fabs(columnMeanmedTable2_5_2[2] ) - ( 183.0 / 31.0 ) ) / fabs ( columnMeanmedTable2_5_2[2] ) < 1e-6 ); + assert( ( fabs(columnMeanmedTable2_5_2[3] ) - ( 227.0 / 33.0 ) ) / fabs ( columnMeanmedTable2_5_2[3] ) < 1e-6 ); + assert( ( fabs(columnMeanmedTable2_5_2[4] ) - ( 275.0 / 35.0 ) ) / fabs ( columnMeanmedTable2_5_2[4] ) < 1e-6 ); + for ( i = 0 ; i < 5 ; ++i) { + printf("columnMeanmedTable2_5_2[%d] = %e\n", i, columnMeanmedTable2_5_2[i]); + } + + return 0; +} +*/ +/* +static int srowvariancefaTest(void) { + int i = 0; + double table1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double coef1[9] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0}; + double table2[10] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0, 10.0}; + double coef2[10] = {11.0, 12.0, 13.0, 14.0 , 15.0, 16.0, 17.0, 18.0, 19.0, 20.0}; + double rowMeanmedTable1_3_3[3] = {0}; + double rowMeanmedTable1_1_9[9] = {0}; + double rowMeanmedTable1_9_1[1] = {0}; + double rowMeanmedTable2_2_5[5] = {0}; + double rowMeanmedTable2_5_2[2] = {0}; + + printf("\n>>>> Row Mean Double Array Test\n"); + + [ 1 2 3 ] [10 11 12 ] + [ 4 5 6 ].*[ 1 2 3 ] => [ 49 80 117 ] + [ 7 8 9 ] [ 5 6 7 ] + + srowvariancefa(table1, 3, 3, coef1 , rowMeanmedTable1_3_3); + for ( i = 0 ; i < 3 ; ++i) { + printf("rowMeanmedTable1_3_3[%d] = %e\n", i, rowMeanmedTable1_3_3[i]); + } + assert( ( fabs(rowMeanmedTable1_3_3[0] ) - ( 49.0 / 16.0 ) ) / fabs ( rowMeanmedTable1_3_3[0] ) < 1e-6 ); + assert( ( fabs(rowMeanmedTable1_3_3[1] ) - ( 80.0 / 19.0 ) ) / fabs ( rowMeanmedTable1_3_3[1] ) < 1e-6 ); + assert( ( fabs(rowMeanmedTable1_3_3[2] ) - ( 117.0 / 22.0 ) ) / fabs ( rowMeanmedTable1_3_3[2] ) < 1e-6 ); + + + [ 1 ] + [ 2 ] + [ 3 ] + [ 4 ] + [ 5 ] => [ 1 2 3 4 5 6 7 8 9 ] + [ 6 ] + [ 7 ] + [ 8 ] + [ 9 ] + + srowvariancefa(table1, 1, 9, coef1, rowMeanmedTable1_1_9); + for ( i = 0 ; i < 9 ; ++i) { + printf("rowMeanmedTable1_1_9[%d] = %e\n", i, rowMeanmedTable1_1_9[i]); + assert(rowMeanmedTable1_1_9[i] == table1[i]); + } + + + [ 1 2 3 4 5 6 7 8 9 ] => [ 246 ] + + srowvariancefa(table1, 9, 1, coef1, rowMeanmedTable1_9_1); + assert( ( fabs(rowMeanmedTable1_9_1[0] ) - ( 246.0 / 57.0 ) ) / fabs ( rowMeanmedTable1_9_1[0] ) < 1e-6 ); + + + [ 1 3 5 7 9 ] .* [ 11 13 15 17 19 ] + [ 2 4 6 8 10 ] [ 12 14 16 18 20 ] => [ 3 7 11 15 19 ] + + srowvariancefa(table2, 2, 5, coef2, rowMeanmedTable2_2_5); + for ( i = 0 ; i < 5 ; ++i) { + printf("rowMeanmedTable2_2_5[%d] = %e\n", i, rowMeanmedTable2_2_5[i]); + } + assert( ( fabs(rowMeanmedTable2_2_5[0] ) - ( 35.0 / 23.0 ) ) / fabs ( rowMeanmedTable2_2_5[0] ) < 1e-6 ); + assert( ( fabs(rowMeanmedTable2_2_5[1] ) - ( 95.0 / 27.0 ) ) / fabs ( rowMeanmedTable2_2_5[1] ) < 1e-6 ); + assert( ( fabs(rowMeanmedTable2_2_5[2] ) - ( 171.0 / 31.0 ) ) / fabs ( rowMeanmedTable2_2_5[2] ) < 1e-6 ); + assert( ( fabs(rowMeanmedTable2_2_5[3] ) - ( 263.0 / 35.0 ) ) / fabs ( rowMeanmedTable2_2_5[3] ) < 1e-6 ); + assert( ( fabs(rowMeanmedTable2_2_5[4] ) - ( 371.0 / 39.0 ) ) / fabs ( rowMeanmedTable2_2_5[4] ) < 1e-6 ); + + + return 0; +} +*/ + +static int zvariancefsTest(void) { + + printf("\n>>>> Mean Double Complex Scalar Test\n"); + assert( zreals(zvariancefs(DoubleComplex(3.0, 0.0),DoubleComplex(3.0, 0.0))) == 0.0 ); + assert( zimags(zvariancefs(DoubleComplex(3.0, 0.0),DoubleComplex(3.0, 0.0))) == 0.0 ); + assert( zreals(zvariancefs(DoubleComplex(1.123456789, 1.123456789),DoubleComplex(9.0, 0.0))) == 0.0 ); + assert( zimags(zvariancefs(DoubleComplex(1.123456789, 1.123456789),DoubleComplex(9.0, 0.0))) == 0.0 ); + + return 0; +} + + + +static int zvariancefaTest(void) { + + double tableR1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double tableI1[9] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0}; + double coefR1[9] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0}; + double coefI1[9] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0}; + + doubleComplex* table1 = DoubleComplexMatrix (tableR1, tableI1, 9); + doubleComplex* coef1 = DoubleComplexMatrix (coefR1, coefI1, 9); + doubleComplex result =DoubleComplex(0.0 , 0.0); + + printf("\n>>>> Mean Double Complex Array Test\n"); + result = zvariancefa(table1, 9, coef1); + /*printf("\nresult : %e \t+ %e i " ,zreals(result) ,zimags(result)) ;*/ + + assert( fabs(zreals(result) - ( 1.3834586f ) ) / fabs ( zreals(result) ) < 1e-6 ); + assert( fabs(zimags(result) - ( 9.6090226f ) ) / fabs ( zimags(result) ) < 1e-6 ); + + return 0; +} + +/* +static int crowvariancefaTest(void) { + + int i = 0 ; + + double tableR1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double tableI1[9] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0}; + double coefR1[9] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0}; + double coefI1[9] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0}; + + double tableR2[10] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0, 10.0}; + double tableI2[10] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0, 15.0}; + double coefR2[10] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0, 19.0}; + double coefI2[10] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}; + + doubleComplex* table1 = DoubleComplexMatrix (tableR1, tableI1, 9); + doubleComplex* coef1 = DoubleComplexMatrix (coefR1, coefI1, 9); + + doubleComplex* table2 = DoubleComplexMatrix (tableR2, tableI2, 9); + doubleComplex* coef2 = DoubleComplexMatrix (coefR2, coefI2, 9); + + doubleComplex rowMeanmedTable1_3_3[3] = {DoubleComplex(0.0, 0.0)}; + + doubleComplex rowMeanmedTable1_1_9[9] = {DoubleComplex(0.0, 0.0)}; + doubleComplex rowMeanmedTable1_9_1[1] = {DoubleComplex(0.0, 0.0)}; + doubleComplex rowMeanmedTable2_2_5[5] = {DoubleComplex(0.0, 0.0)}; + doubleComplex rowMeanmedTable2_5_2[2] = {DoubleComplex(0.0, 0.0)}; + + printf("\n>>>> Row variancef Double Complex Array Test\n"); + + + + crowvariancefa(table1 , 3 , 3 , coef1 , rowMeanmedTable1_3_3); + + for (i = 0 ; i < 3 ; ++i ) + { + + printf("rowMeanmedTable_3_3[%d] = %e + %ei\n", i, zreals(rowMeanmedTable1_3_3[i]), zimags(rowMeanmedTable1_3_3[i])); + } + assert( ( fabs(zimags(rowMeanmedTable1_3_3[0]) ) - ( 27.0 / 16.0 ) ) / fabs ( zimags(rowMeanmedTable1_3_3[0]) ) < 1e-6 ); + assert( ( fabs(zreals(rowMeanmedTable1_3_3[0]) ) - ( 49.0 / 16.0 ) ) / fabs ( zreals(rowMeanmedTable1_3_3[0]) ) < 1e-6 ); + + assert( ( fabs(zimags(rowMeanmedTable1_3_3[1]) ) - ( 90.0 / 19.0 ) ) / fabs ( zimags(rowMeanmedTable1_3_3[1]) ) < 1e-6 ); + assert( ( fabs(zreals(rowMeanmedTable1_3_3[1]) ) - ( 80.0 / 19.0 ) ) / fabs ( zreals(rowMeanmedTable1_3_3[1]) ) < 1e-6 ); + + assert( ( fabs(zimags(rowMeanmedTable1_3_3[2]) ) - (171.0 / 22.0 ) ) / fabs ( zimags(rowMeanmedTable1_3_3[2]) ) < 1e-6 ); + assert( ( fabs(zreals(rowMeanmedTable1_3_3[2]) ) - (117.0 / 22.0 ) ) / fabs ( zreals(rowMeanmedTable1_3_3[2]) ) < 1e-6 ); + + + + + return 0; +} +*/ + + +/* +static int scolumnvariancefaTest(void) { + + int i = 0 ; + + double tableR1[9] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0}; + double tableI1[9] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0}; + double coefR1[9] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0}; + double coefI1[9] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0}; + + double tableR2[10] = {1.0, 4.0, 7.0, 2.0 , 5.0, 8.0, 3.0, 6.0, 9.0, 10.0}; + double tableI2[10] = {1.0, 2.0, 3.0, 4.0 , 5.0, 6.0, 7.0, 8.0, 9.0, 15.0}; + double coefR2[10] = {10.0, 1.0, 5.0,11.0 , 2.0, 6.0,12.0, 3.0, 7.0, 19.0}; + double coefI2[10] = { 0.0, 0.0, 0.0, 0.0 , 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}; + + doubleComplex* table1 = DoubleComplexMatrix (tableR1, tableI1, 9); + doubleComplex* coef1 = DoubleComplexMatrix (coefR1, coefI1, 9); + + doubleComplex* table2 = DoubleComplexMatrix (tableR2, tableI2, 9); + doubleComplex* coef2 = DoubleComplexMatrix (coefR2, coefI2, 9); + + doubleComplex columnMeanmedTable1_3_3[3] = {DoubleComplex(0.0, 0.0)}; + + doubleComplex rowMeanmedTable1_1_9[9] = {DoubleComplex(0.0, 0.0)}; + doubleComplex rowMeanmedTable1_9_1[1] = {DoubleComplex(0.0, 0.0)}; + doubleComplex rowMeanmedTable2_2_5[5] = {DoubleComplex(0.0, 0.0)}; + doubleComplex rowMeanmedTable2_5_2[2] = {DoubleComplex(0.0, 0.0)}; + + + printf("\n>>>> Column variancef Double Complex Array Test\n"); + + + + scolumnvariancefa(table1 , 3 , 3 , coef1 , columnMeanmedTable1_3_3); + + for (i = 0 ; i < 3 ; ++i ) + { + printf("columnMeanmedTable_3_3[%d] = %e + %ei\n", i, zreals(columnMeanmedTable1_3_3[i]), zimags(columnMeanmedTable1_3_3[i])); + } + assert( ( fabs(zimags(columnMeanmedTable1_3_3[0]) ) - (138.0 / 33.0 ) ) / fabs ( zimags(columnMeanmedTable1_3_3[0]) ) < 1e-6 ); + assert( ( fabs(zreals(columnMeanmedTable1_3_3[0]) ) - ( 68.0 / 33.0 ) ) / fabs ( zreals(columnMeanmedTable1_3_3[0]) ) < 1e-6 ); + + assert( ( fabs(zimags(columnMeanmedTable1_3_3[1]) ) - ( 36.0 / 6.0 ) ) / fabs ( zimags(columnMeanmedTable1_3_3[1]) ) < 1e-6 ); + assert( ( fabs(zreals(columnMeanmedTable1_3_3[1]) ) - ( 32.0 / 6.0 ) ) / fabs ( zreals(columnMeanmedTable1_3_3[1]) ) < 1e-6 ); + + assert( ( fabs(zimags(columnMeanmedTable1_3_3[2]) ) - (114.0 / 18.0 ) ) / fabs ( zimags(columnMeanmedTable1_3_3[2]) ) < 1e-6 ); + assert( ( fabs(zreals(columnMeanmedTable1_3_3[2]) ) - (146.0 / 18.0 ) ) / fabs ( zreals(columnMeanmedTable1_3_3[2]) ) < 1e-6 ); + + + + + return 0; +} + +*/ + +static int testvariancef(void) { + + dvariancefsTest(); + dvariancefaTest(); + /*dcolumnvariancefaTest(); + srowvariancefaTest();*/ + zvariancefsTest(); + zvariancefaTest(); + /*crowvariancefaTest(); + scolumnvariancefaTest(); +*/ + return 0; +} + +int main(void) { + assert(testvariancef() == 0); + return 0; +} + diff --git a/src/c/statisticsFunctions/variancef/testFloatVariance.c b/src/c/statisticsFunctions/variancef/testFloatVariance.c new file mode 100644 index 0000000..97b56d4 --- /dev/null +++ b/src/c/statisticsFunctions/variancef/testFloatVariance.c @@ -0,0 +1,329 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2006-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <assert.h> +#include <stdio.h> + +#include "variance.h" + +#define SINGLE 1.323312455f +#define LINES 7 +#define COLUMNS 10 +#define MATRIX {0.102326436434f,0.939044147730f,0.638607255649f,0.059883427806f,0.311199211050f,\ + 0.377510951832f,0.909709410276f,0.928138985299f,0.855155082885f,0.308869514614f,\ +0.729239261709f,0.127006734256f,0.242402311414f,0.807912770193f,0.621117659844f,\ + 0.081452373881f,0.088844371960f,0.587072817143f,0.068080495112f,0.995457543526f,\ +0.835322400089f,0.656235548668f,0.767905956600f,0.706818781793f,0.187699332368f,\ + 0.568810169585f,0.401039466728f,0.397196868435f,0.483212330844f,0.161224133335f,\ +0.932864250615f,0.719208867755f,0.262409000657f,0.931377100293f,0.596724558622f,\ + 0.310327019077f,0.350161732174f,0.104841318447f,0.830732351169f,0.804621329065f,\ +0.050784428138f,0.551920620725f,0.125952405389f,0.083156193607f,0.420623748098f,\ + 0.168616071343f,0.707545555662f,0.104633864947f,0.465604968835f,0.489758284763f,\ +0.167727907188f,0.760689914692f,0.454900974408f,0.063926273491f,0.87152507063f,0.978668818716f,\ + 0.135898929089f,0.484713065904f,0.785042577423f,0.049412418623f,\ +0.947593610268f,0.884073690511f,0.212796610314f,0.654832502827f,0.007690255996f,\ + 0.031808692031f,0.706323316786f,0.008731670678f,0.270014822017f,0.153652121313f} + + +#define MATRIXROW {0.168824942350f,0.072908122527f,0.057987977092f,0.149998975703f,0.085086319404f,\ +0.108508638451f,0.096937985957f,0.107281660264f,0.091363871817f,0.128577818421f} + +#define MATRIXCOL { 0.123307827428f,0.123213594199f,0.054037725959f,0.092551230301f,0.055505564488f,\ +0.127629921958f,0.138516743375f } + + +#define IMATRIX {0.05826747464016080f,0.99946373142302036f,0.85600351681932807f,0.62329693790525198f,\ + 0.49792320514097810f,0.44210509583353996f,0.55833499459549785f,0.09633230511099100f,\ + 0.80100952507928014f,0.34466254524886608f,\ +0.48831309471279383f,0.95087061496451497f,0.01332767866551876f,0.76261807000264525f,\ + 0.74346329551190138f,0.65157829830422997f,0.57006288319826126f,0.70580983115360141f,\ + 0.51323400903493166f,0.64977857517078519f,\ +0.80352442665025592f,0.69910932797938585f,0.69258948462083936f,0.91169391758739948f,\ + 0.92454590043053031f,0.27637310232967138f,0.31692579621449113f,0.86305770650506020f,\ + 0.20109100220724940f,0.01225362811237574f,\ +0.38199013099074364f,0.96006405679509044f,0.16440964583307505f,0.59608811559155583f,\ + 0.72101737372577190f,0.58661046391353011f,0.99326277803629637f,0.00761850038543344f,\ + 0.78608208894729614f,0.89965870184823871f,\ +0.43115562805905938f,0.81857266277074814f,0.83410377753898501f,0.55516970623284578f,\ + 0.51345925079658628f,0.04770902730524540f,0.80747798969969153f,0.80489510949701071f,\ + 0.78650354826822877f,0.30791273340582848f,\ +0.75731822755187750f,0.53423820668831468f,0.42618893459439278f,0.85448804078623652f,\ + 0.92601215932518244f,0.94169309409335256f,0.85547966323792934f,0.59637623047456145f,\ + 0.69515300076454878f,0.18359116325154901f,\ +0.01200280850753188f,0.2255702270194888f,0.34853330114856362f,0.55313225090503693f,\ + 0.63695094687864184f,0.96132039744406939f,0.50314606027677655f,0.11768362112343311f,\ + 0.42481321236118674f,0.52963322307914495f} + +#define RMATRIX {0.53868199465796351f,0.65326874051243067f,0.37497402401641011f,0.60422550700604916f,\ + 0.33622304117307067f,0.03531436901539564f,0.33213760564103723f,0.39493087679147720f,\ + 0.04170337272807956f,0.87363853026181459f,\ +0.65950810909271240f,0.31221040291711688f,0.15333442110568285f,0.66478573577478528f,\ + 0.44319023378193378f,0.40884594758972526f,0.94536898937076330f,0.67733758920803666f,\ + 0.18673646822571754f,0.92331133363768458f,\ +0.55921846115961671f,0.75012728199362755f,0.23257926432415843f,0.57102064136415720f,\ + 0.60969385923817754f,0.67336730472743511f,0.07624059682711959f,0.10437540244311094f,\ + 0.95672677317634225f,0.19771346449851990f,\ +0.05278092902153730f,0.75808868417516351f,0.17633479088544846f,0.01146994484588504f,\ + 0.36732212174683809f,0.19948644982650876f,0.52714426256716251f,0.21445603063330054f,\ + 0.94751045759767294f,0.04272260749712586f,\ +0.03257346292957664f,0.53217577841132879f,0.87635089689865708f,0.15471007302403450f,\ + 0.25448470888659358f,0.91815057490020990f,0.72509902389720082f,0.87545845471322536f,\ + 0.05635281419381499f,0.01432112138718367f,\ +0.57406943850219250f,0.80984140699729323f,0.01664119493216276f,0.93888836959376931f,\ + 0.11264799535274506f,0.66036546928808093f,0.76042845565825701f,0.25908330874517560f,\ + 0.88014078326523304f,0.70332178613170981f,\ +0.94614937948063016f,0.78529163636267185f,0.20241560926660895f,0.10981105919927359f,\ + 0.75415370846167207f,0.15320260450243950f,0.59521253732964396f,0.71318271104246378f,\ + 0.51107599260285497f,0.52125945501029491f} + + + + + + +#define IMATRIXROW {-0.0419293790250184f,-0.05416405376783551f,+0.11775191182077104f,+0.08015791690354153f,+0.00011032748454003f,\ +-0.10124210045965254f,0.06720614014223115f,+0.02470873836336094f,-0.07082037296251543f,-0.00621987869853545f} + +#define RMATRIXROW {0.01439621349781126f,-0.04697393442028135f,-0.03018604392150223f,0.09765990436118642f,0.01606884471097247f,\ +-0.00604250542333471f,0.02870576510687836f,-0.04985742926427023f,0.12356001472881707f,0.05909180726174274f} + +#define IMATRIXCOL {-0.01904810719805961f,+0.04121453132770223f,+0.00378553967089328f,\ ++0.10307670507342410f,+0.03497427750676810f,+0.01761849804019567f,-0.10182321471060848f} + +#define RMATRIXCOL {-0.02739893277693160f,0.01792852626358409f,-0.02205084134302381f,\ +-0.01012610864032573f,0.07317682977907164f,0.04762062457313784f,0.00849011627117621f} + + +static void svariancesTest (void ) { + + float toTest = svariances (SINGLE) ; + + assert ( fabs ( toTest - SINGLE ) / fabs( toTest) < 1e-06 ) ; +} + + +static void srowvariancesTest (void ) { + + float toTest = srowvariances (SINGLE) ; + + assert ( fabs ( toTest - SINGLE ) / fabs( toTest) < 1e-06 ) ; +} + +static void scolumnvariancesTest (void) { + + float toTest = scolumnvariances (SINGLE) ; + + assert ( fabs ( toTest - SINGLE ) / fabs( toTest) < 1e-06 ) ; +} + + +static void cvariancesTest (void ) { + + floatComplex toTest = cvariances ( FloatComplex ( SINGLE , SINGLE ) ); + + assert ( fabs ( creals( toTest) - SINGLE ) / fabs( creals( toTest)) < 1e-06 ) ; + assert ( fabs ( cimags( toTest) - SINGLE ) / fabs( cimags( toTest)) < 1e-06 ) ; +} + +static void crowvariancesTest (void ) { + + floatComplex toTest = crowvariances ( FloatComplex ( SINGLE , SINGLE ) ); + + assert ( fabs ( creals( toTest) - SINGLE ) / fabs( creals( toTest)) < 1e-06 ) ; + assert ( fabs ( cimags( toTest) - SINGLE ) / fabs( cimags( toTest)) < 1e-06 ) ; +} + +static void ccolumnvariancesTest (void ) { + + floatComplex toTest = crowvariances ( FloatComplex ( SINGLE , SINGLE ) ); + + assert ( fabs ( creals( toTest) - SINGLE ) / fabs( creals( toTest)) < 1e-06 ) ; + assert ( fabs ( cimags( toTest) - SINGLE ) / fabs( cimags( toTest)) < 1e-06 ) ; +} + + + + + + +static void svarianceaTest ( void){ + + float mtoTest[] = MATRIX ; + float result = 0.100753297434f; + float out = svariancea ( mtoTest , LINES*COLUMNS ); ; + + + + printf ( "out : %e\t result : %e\t\n" , out , result ) ; + + + + assert ( fabs ( out - result ) / fabs( out ) < 1e-06 ) ; + +} + + +static void srowvarianceaTest ( void ) +{ + int i = 0 ; + + float mtoTest[] = MATRIX ; + float result[COLUMNS] = MATRIXROW ; + float out[COLUMNS] ; + + srowvariancea ( mtoTest , LINES , COLUMNS , out ) ; + + for ( i = 0 ; i < COLUMNS ; i++) + { + printf ( "ROWout : %e\t result : %e\t\n" , out[i] , result [i] ) ; + assert ( fabs ( out[i] - result[i] ) / fabs( out[i] ) < 1e-06 ) ; + } + +} + +static void scolumnvarianceaTest ( void ) +{ + int i = 0 ; + + float mtoTest[] = MATRIX ; + float result[LINES] = MATRIXCOL ; + float out[ LINES] ; + + + + scolumnvariancea ( mtoTest , LINES , COLUMNS , out ) ; + + for ( i = 0 ; i < LINES ; i++) + { + printf ( "%dCOLout : %e\t result : %e\t\n" ,i, out[i] , result [i] ) ; + assert ( fabs ( out[i] - result[i] ) / fabs( out[i] ) < 1e-06 ) ; + } + +} + + + + +static void cvarianceaTest ( void){ + + float rmtoTest [] = RMATRIX ; + float imtoTest [] = IMATRIX ; + floatComplex Result = FloatComplex ( 0.01225832057910708f , 0.01071188208687752f ); + + floatComplex* mtoTest = FloatComplexMatrix ( rmtoTest , imtoTest , LINES*COLUMNS ) ; + floatComplex out = cvariancea ( mtoTest , LINES*COLUMNS ); ; + + assert ( fabs( creals(out) - creals (Result) ) / fabs (creals (out)) < 1e-06 ); + assert( fabs( cimags(out) - cimags (Result )) / fabs (cimags (out)) < 1e-06 ); + + +} + +static void crowvarianceaTest (void ) { + + int i = 0 ; + + float rmtoTest [] = RMATRIX ; + float imtoTest [] = IMATRIX ; + float rResult [] = RMATRIXROW; + float iResult [] = IMATRIXROW ; + + floatComplex out[COLUMNS]; + floatComplex* mtoTest = FloatComplexMatrix ( rmtoTest , imtoTest , LINES*COLUMNS ) ; + floatComplex* Result = FloatComplexMatrix ( rResult , iResult , COLUMNS ); + + crowvariancea ( mtoTest , LINES , COLUMNS , out ) ; + + /*FIXME test failed under 1-e04 precision */ + for ( i = 0 ; i < COLUMNS ; i++) + { + printf ( "%d out : %e %e \t result %e %e \n" , i , creals(out[i]) , cimags(out[i]), creals(Result[i]) ,cimags( Result[i])); + assert ( fabs( creals(out[i]) - creals (Result[i]) ) / fabs (creals (out[i])) < 3e-6 ); + assert( fabs( cimags(out[i]) - cimags (Result[i])) / fabs (cimags (out[i])) < 3e-6); + + } +} + + + +static void ccolumnvarianceaTest ( void) { + int i = 0 ; + + float rmtoTest [] = RMATRIX ; + float imtoTest [] = IMATRIX ; + float rResult [] = RMATRIXCOL; + float iResult [] = IMATRIXCOL ; + + floatComplex out[LINES]; + floatComplex* mtoTest = FloatComplexMatrix ( rmtoTest , imtoTest , LINES*COLUMNS ) ; + floatComplex* Result = FloatComplexMatrix ( rResult , iResult , LINES ); + + ccolumnvariancea ( mtoTest , LINES , COLUMNS , out ) ; + + + for ( i = 0 ; i < LINES ; i++) + { + printf ( "%d out : %e %e \t result %e %e \n" , i , creals(out[i]) , cimags(out[i]), creals(Result[i]) ,cimags( Result[i])); + assert ( fabs( creals(out[i]) - creals (Result[i]) ) / fabs (creals (out[i])) < 1e-06 ); + assert( fabs( cimags(out[i]) - cimags (Result[i])) / fabs (cimags (out[i])) < 1e-06); + + } + + + +} + + + + + +static int testFloatVariance (void) { + printf("\n\n\n\n*********************\n"); + printf("***** Float Tests ****\n"); + printf("*********************\n"); + + printf("\n\t>>>>singleton real Tests\n"); + scolumnvariancesTest () ; + svariancesTest () ; + srowvariancesTest () ; + + + printf("\n\t>>>>singleton complex Tests\n"); + + crowvariancesTest () ; + ccolumnvariancesTest () ; + cvariancesTest () ; + + + + printf("\n\t>>>>array real Tests\n"); + + svarianceaTest () ; + + scolumnvarianceaTest () ; + srowvarianceaTest ( ); + + + printf("\n\t>>>>array complex Tests\n"); + + cvarianceaTest () ; + crowvarianceaTest ( ); + ccolumnvarianceaTest () ; + + + return 0; +} + +int main(void) { + assert(testFloatVariance () == 0); + return 0; +} diff --git a/src/c/statisticsFunctions/variancef/testFloatVariancef.c b/src/c/statisticsFunctions/variancef/testFloatVariancef.c new file mode 100644 index 0000000..4363052 --- /dev/null +++ b/src/c/statisticsFunctions/variancef/testFloatVariancef.c @@ -0,0 +1,381 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include <assert.h> +#include <stdio.h> +#include <math.h> +#include "variancef.h" + + +/* #define LOCAL_DEBUG */ + +#define ERROR(x) printf("diff = %e\n", x) + + + #define VALUE1 3.0f + #define VALUE2 1.123456789f + #define COEF1 56.0f + #define COEF2 2.0f + + +static int svariancefsTest(void) { + + printf("\n>>>> variancef Float Scalar Test\n"); + printf("result : %e " ,svariancefs(VALUE1,COEF1)) ; + + assert( ( svariancefs(VALUE1,COEF1) ) == 0.0f ); + assert( ( svariancefs(VALUE2,COEF2) ) == 0.0f ); + + + + return 0; +} + +static int svariancefaTest(void) { + float table1[3] = {3.0f, 6.0f, 9.0f}; + float coef1[3] = {10.0f, 2.0f, 6.0f}; + + float table2[5] = {3.186784563f, + 4.186784563f, + 5.186784563f, + 6.186784563f, + 7.186784563f}; + + float coef2[5] = {3.0f, + 4.0f, + 5.0f, + 6.0f, + 7.0f}; + + printf("\n>>>> variancef Float Array Test\n"); + printf("result : %e " ,svariancefa(table1, 3, coef1)) ; + printf("result : %e " ,svariancefa(table2, 5, coef2)) ; + assert(svariancefa(table1, 3, coef1) == 8.0f); + assert((svariancefa(table2, 5, coef2) - 1.916666666 )/ svariancefa(table2, 5 ,coef2) < 1e-6); + return 0; +} + +/* +static int scolumnvariancefaTest(void) { + int i = 0; + float table1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float coef1[9] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f}; + float table2[10] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f}; + float coef2[10] = {11.0f, 12.0f, 13.0f, 14.0f , 15.0f, 16.0f, 17.0f, 18.0f, 19.0f, 20.0f}; + float columnMeanmedTable1_3_3[3] = {0}; + float columnMeanmedTable1_1_9[1] = {0}; + float columnMeanmedTable1_9_1[9] = {0}; + float columnMeanmedTable2_2_5[2] = {0}; + float columnMeanmedTable2_5_2[5] = {0}; + + printf("\n>>>> Column Variancef Float Array Test\n"); + + [ 1 2 3 ] [10 11 12 ] + [ 4 5 6 ].*[ 1 2 3 ] => [ 68 32 146 ] + [ 7 8 9 ] [ 5 6 7 ] + + scolumnvariancefa(table1, 3, 3, coef1 ,columnMeanmedTable1_3_3); + assert( ( fabs(columnMeanmedTable1_3_3[0] ) - ( 68.0f / 33.0f ) ) / fabs ( columnMeanmedTable1_3_3[0] ) < 1e-6 ); + assert( ( fabs(columnMeanmedTable1_3_3[1] ) - ( 32.0f / 6.0f ) ) / fabs ( columnMeanmedTable1_3_3[1] ) < 1e-6 ); + assert( ( fabs(columnMeanmedTable1_3_3[2] ) - ( 146.0f / 18.0f ) ) / fabs ( columnMeanmedTable1_3_3[2] ) < 1e-6 ); + + + [ 1 2 3 4 5 6 7 8 9 ] => [ 45 ] + + scolumnvariancefa(table1, 1, 9, coef1 ,columnMeanmedTable1_1_9); + printf("result qui foire : %e\n " ,columnMeanmedTable1_1_9[0]) ; + assert( ( fabs(columnMeanmedTable1_1_9[0] ) - ( 1.146666666f ) ) / fabs ( columnMeanmedTable1_1_9[0] ) < 1e-6 ); + + + [ 1 ] + [ 2 ] + [ 3 ] + [ 4 ] + [ 5 ] => [ 1 2 3 4 5 6 7 8 9 ] + [ 6 ] + [ 7 ] + [ 8 ] + [ 9 ] + + scolumnvariancefa(table1, 9, 1, coef1, columnMeanmedTable1_9_1); + for ( i = 0 ; i < 9 ; ++i) { + printf("columnMeanmedTable1_9_1[%d] = %e\n", i, columnMeanmedTable1_9_1[i]); + assert(columnMeanmedTable1_9_1[i] == table1[i]); + } + + + [ 1 3 5 7 9 ] .* [ 11 13 15 17 19 ] + [ 2 4 6 8 10 ] [ 12 14 16 18 20 ]=> [ 415 520 ] + + scolumnvariancefa(table2, 2, 5, coef2 , columnMeanmedTable2_2_5); + assert( ( fabs(columnMeanmedTable2_2_5[0] ) - ( 415.0f / 75.0f ) ) / fabs ( columnMeanmedTable2_2_5[0] ) < 1e-6 ); + assert( ( fabs(columnMeanmedTable2_2_5[1] ) - ( 520.0f / 80.0f ) ) / fabs ( columnMeanmedTable2_2_5[1] ) < 1e-6 ); + for ( i = 0 ; i < 2 ; ++i) { + printf("columnMeanmedTable2_2_5[%d] = %e\n", i, columnMeanmedTable2_2_5[i]); + } + + + [ 1 6 ] [ 11 16 ] + [ 2 7 ] [ 12 17 ] => [ 107 143 183 227 275 ] + [ 3 8 ].*[ 13 18 ] + [ 4 9 ] [ 14 19 ] + [ 5 10 ] [ 15 20 ] + + + scolumnvariancefa(table2, 5, 2, coef2 ,columnMeanmedTable2_5_2); + assert( ( fabs(columnMeanmedTable2_5_2[0] ) - ( 107.0f / 27.0f ) ) / fabs ( columnMeanmedTable2_5_2[0] ) < 1e-6 ); + assert( ( fabs(columnMeanmedTable2_5_2[1] ) - ( 143.0f / 29.0f ) ) / fabs ( columnMeanmedTable2_5_2[1] ) < 1e-6 ); + assert( ( fabs(columnMeanmedTable2_5_2[2] ) - ( 183.0f / 31.0f ) ) / fabs ( columnMeanmedTable2_5_2[2] ) < 1e-6 ); + assert( ( fabs(columnMeanmedTable2_5_2[3] ) - ( 227.0f / 33.0f ) ) / fabs ( columnMeanmedTable2_5_2[3] ) < 1e-6 ); + assert( ( fabs(columnMeanmedTable2_5_2[4] ) - ( 275.0f / 35.0f ) ) / fabs ( columnMeanmedTable2_5_2[4] ) < 1e-6 ); + for ( i = 0 ; i < 5 ; ++i) { + printf("columnMeanmedTable2_5_2[%d] = %e\n", i, columnMeanmedTable2_5_2[i]); + } + + return 0; +} +*/ +/* +static int srowvariancefaTest(void) { + int i = 0; + float table1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float coef1[9] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f}; + float table2[10] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f}; + float coef2[10] = {11.0f, 12.0f, 13.0f, 14.0f , 15.0f, 16.0f, 17.0f, 18.0f, 19.0f, 20.0f}; + float rowMeanmedTable1_3_3[3] = {0}; + float rowMeanmedTable1_1_9[9] = {0}; + float rowMeanmedTable1_9_1[1] = {0}; + float rowMeanmedTable2_2_5[5] = {0}; + float rowMeanmedTable2_5_2[2] = {0}; + + printf("\n>>>> Row Mean Float Array Test\n"); + + [ 1 2 3 ] [10 11 12 ] + [ 4 5 6 ].*[ 1 2 3 ] => [ 49 80 117 ] + [ 7 8 9 ] [ 5 6 7 ] + + srowvariancefa(table1, 3, 3, coef1 , rowMeanmedTable1_3_3); + for ( i = 0 ; i < 3 ; ++i) { + printf("rowMeanmedTable1_3_3[%d] = %e\n", i, rowMeanmedTable1_3_3[i]); + } + assert( ( fabs(rowMeanmedTable1_3_3[0] ) - ( 49.0f / 16.0f ) ) / fabs ( rowMeanmedTable1_3_3[0] ) < 1e-6 ); + assert( ( fabs(rowMeanmedTable1_3_3[1] ) - ( 80.0f / 19.0f ) ) / fabs ( rowMeanmedTable1_3_3[1] ) < 1e-6 ); + assert( ( fabs(rowMeanmedTable1_3_3[2] ) - ( 117.0f / 22.0f ) ) / fabs ( rowMeanmedTable1_3_3[2] ) < 1e-6 ); + + + [ 1 ] + [ 2 ] + [ 3 ] + [ 4 ] + [ 5 ] => [ 1 2 3 4 5 6 7 8 9 ] + [ 6 ] + [ 7 ] + [ 8 ] + [ 9 ] + + srowvariancefa(table1, 1, 9, coef1, rowMeanmedTable1_1_9); + for ( i = 0 ; i < 9 ; ++i) { + printf("rowMeanmedTable1_1_9[%d] = %e\n", i, rowMeanmedTable1_1_9[i]); + assert(rowMeanmedTable1_1_9[i] == table1[i]); + } + + + [ 1 2 3 4 5 6 7 8 9 ] => [ 246 ] + + srowvariancefa(table1, 9, 1, coef1, rowMeanmedTable1_9_1); + assert( ( fabs(rowMeanmedTable1_9_1[0] ) - ( 246.0f / 57.0f ) ) / fabs ( rowMeanmedTable1_9_1[0] ) < 1e-6 ); + + + [ 1 3 5 7 9 ] .* [ 11 13 15 17 19 ] + [ 2 4 6 8 10 ] [ 12 14 16 18 20 ] => [ 3 7 11 15 19 ] + + srowvariancefa(table2, 2, 5, coef2, rowMeanmedTable2_2_5); + for ( i = 0 ; i < 5 ; ++i) { + printf("rowMeanmedTable2_2_5[%d] = %e\n", i, rowMeanmedTable2_2_5[i]); + } + assert( ( fabs(rowMeanmedTable2_2_5[0] ) - ( 35.0f / 23.0f ) ) / fabs ( rowMeanmedTable2_2_5[0] ) < 1e-6 ); + assert( ( fabs(rowMeanmedTable2_2_5[1] ) - ( 95.0f / 27.0f ) ) / fabs ( rowMeanmedTable2_2_5[1] ) < 1e-6 ); + assert( ( fabs(rowMeanmedTable2_2_5[2] ) - ( 171.0f / 31.0f ) ) / fabs ( rowMeanmedTable2_2_5[2] ) < 1e-6 ); + assert( ( fabs(rowMeanmedTable2_2_5[3] ) - ( 263.0f / 35.0f ) ) / fabs ( rowMeanmedTable2_2_5[3] ) < 1e-6 ); + assert( ( fabs(rowMeanmedTable2_2_5[4] ) - ( 371.0f / 39.0f ) ) / fabs ( rowMeanmedTable2_2_5[4] ) < 1e-6 ); + + + return 0; +} +*/ + +static int cvariancefsTest(void) { + + + printf("\n>>>> Mean Float Complex Scalar Test\n"); + assert( creals(cvariancefs(FloatComplex(3.0f, 3.0f),FloatComplex(3.0f, 0.0f);)) == 0.0f ); + assert( cimags(cvariancefs(FloatComplex(3.0f, 3.0f),FloatComplex(3.0f, 0.0f);)) == 0.0f ); + assert( creals(cvariancefs(FloatComplex(1.123456789f, 1.123456789f),FloatComplex(1.123456789f, 1.123456789f))) == 0.0f ); + assert( cimags(cvariancefs(FloatComplex(1.123456789f, 1.123456789f),FloatComplex(1.123456789f, 1.123456789f))) == 0.0f ); + + return 0; +} + + + +static int cvariancefaTest(void) { + + float tableR1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float tableI1[9] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f}; + float coefR1[9] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f}; + float coefI1[9] = { 0.0f, 0.0f, 0.0f, 0.0f , 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; + + floatComplex* table1 = FloatComplexMatrix (tableR1, tableI1, 9); + floatComplex* coef1 = FloatComplexMatrix (coefR1, coefI1, 9); + floatComplex result =FloatComplex(0.0f , 0.0f); + + printf("\n>>>> Mean Float Complex Array Test\n"); + result = cvariancefa(table1, 9, coef1); + /*printf("\nresult : %lf \t+ %lf i " ,creals(result) ,cimags(result)) ;*/ + + assert( fabs(creals(result) - ( 1.3834586f ) ) / fabs ( creals(result) ) < 1e-6 ); + assert( fabs(cimags(result) - ( 9.6090226f ) ) / fabs ( cimags(result) ) < 1e-6 ); + + return 0; +} + +/* +static int crowvariancefaTest(void) { + + int i = 0 ; + + float tableR1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float tableI1[9] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f}; + float coefR1[9] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f}; + float coefI1[9] = { 0.0f, 0.0f, 0.0f, 0.0f , 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; + + float tableR2[10] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f, 10.0f}; + float tableI2[10] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 15.0f}; + float coefR2[10] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f, 19.0f}; + float coefI2[10] = { 0.0f, 0.0f, 0.0f, 0.0f , 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; + + floatComplex* table1 = FloatComplexMatrix (tableR1, tableI1, 9); + floatComplex* coef1 = FloatComplexMatrix (coefR1, coefI1, 9); + + floatComplex* table2 = FloatComplexMatrix (tableR2, tableI2, 9); + floatComplex* coef2 = FloatComplexMatrix (coefR2, coefI2, 9); + + floatComplex rowMeanmedTable1_3_3[3] = {FloatComplex(0.0f, 0.0f)}; + + floatComplex rowMeanmedTable1_1_9[9] = {FloatComplex(0.0f, 0.0f)}; + floatComplex rowMeanmedTable1_9_1[1] = {FloatComplex(0.0f, 0.0f)}; + floatComplex rowMeanmedTable2_2_5[5] = {FloatComplex(0.0f, 0.0f)}; + floatComplex rowMeanmedTable2_5_2[2] = {FloatComplex(0.0f, 0.0f)}; + + printf("\n>>>> Row variancef Float Complex Array Test\n"); + + + + crowvariancefa(table1 , 3 , 3 , coef1 , rowMeanmedTable1_3_3); + + for (i = 0 ; i < 3 ; ++i ) + { + + printf("rowMeanmedTable_3_3[%d] = %e + %ei\n", i, creals(rowMeanmedTable1_3_3[i]), cimags(rowMeanmedTable1_3_3[i])); + } + assert( ( fabs(cimags(rowMeanmedTable1_3_3[0]) ) - ( 27.0f / 16.0f ) ) / fabs ( cimags(rowMeanmedTable1_3_3[0]) ) < 1e-6 ); + assert( ( fabs(creals(rowMeanmedTable1_3_3[0]) ) - ( 49.0f / 16.0f ) ) / fabs ( creals(rowMeanmedTable1_3_3[0]) ) < 1e-6 ); + + assert( ( fabs(cimags(rowMeanmedTable1_3_3[1]) ) - ( 90.0f / 19.0f ) ) / fabs ( cimags(rowMeanmedTable1_3_3[1]) ) < 1e-6 ); + assert( ( fabs(creals(rowMeanmedTable1_3_3[1]) ) - ( 80.0f / 19.0f ) ) / fabs ( creals(rowMeanmedTable1_3_3[1]) ) < 1e-6 ); + + assert( ( fabs(cimags(rowMeanmedTable1_3_3[2]) ) - (171.0f / 22.0f ) ) / fabs ( cimags(rowMeanmedTable1_3_3[2]) ) < 1e-6 ); + assert( ( fabs(creals(rowMeanmedTable1_3_3[2]) ) - (117.0f / 22.0f ) ) / fabs ( creals(rowMeanmedTable1_3_3[2]) ) < 1e-6 ); + + + + + return 0; +} +*/ + + +/* +static int ccolumnvariancefaTest(void) { + + int i = 0 ; + + float tableR1[9] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f}; + float tableI1[9] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f}; + float coefR1[9] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f}; + float coefI1[9] = { 0.0f, 0.0f, 0.0f, 0.0f , 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; + + float tableR2[10] = {1.0f, 4.0f, 7.0f, 2.0f , 5.0f, 8.0f, 3.0f, 6.0f, 9.0f, 10.0f}; + float tableI2[10] = {1.0f, 2.0f, 3.0f, 4.0f , 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 15.0f}; + float coefR2[10] = {10.0f, 1.0f, 5.0f,11.0f , 2.0f, 6.0f,12.0f, 3.0f, 7.0f, 19.0f}; + float coefI2[10] = { 0.0f, 0.0f, 0.0f, 0.0f , 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; + + floatComplex* table1 = FloatComplexMatrix (tableR1, tableI1, 9); + floatComplex* coef1 = FloatComplexMatrix (coefR1, coefI1, 9); + + floatComplex* table2 = FloatComplexMatrix (tableR2, tableI2, 9); + floatComplex* coef2 = FloatComplexMatrix (coefR2, coefI2, 9); + + floatComplex columnMeanmedTable1_3_3[3] = {FloatComplex(0.0f, 0.0f)}; + + floatComplex rowMeanmedTable1_1_9[9] = {FloatComplex(0.0f, 0.0f)}; + floatComplex rowMeanmedTable1_9_1[1] = {FloatComplex(0.0f, 0.0f)}; + floatComplex rowMeanmedTable2_2_5[5] = {FloatComplex(0.0f, 0.0f)}; + floatComplex rowMeanmedTable2_5_2[2] = {FloatComplex(0.0f, 0.0f)}; + + + printf("\n>>>> Column variancef Float Complex Array Test\n"); + + + + ccolumnvariancefa(table1 , 3 , 3 , coef1 , columnMeanmedTable1_3_3); + + for (i = 0 ; i < 3 ; ++i ) + { + printf("columnMeanmedTable_3_3[%d] = %e + %ei\n", i, creals(columnMeanmedTable1_3_3[i]), cimags(columnMeanmedTable1_3_3[i])); + } + assert( ( fabs(cimags(columnMeanmedTable1_3_3[0]) ) - (138.0f / 33.0f ) ) / fabs ( cimags(columnMeanmedTable1_3_3[0]) ) < 1e-6 ); + assert( ( fabs(creals(columnMeanmedTable1_3_3[0]) ) - ( 68.0f / 33.0f ) ) / fabs ( creals(columnMeanmedTable1_3_3[0]) ) < 1e-6 ); + + assert( ( fabs(cimags(columnMeanmedTable1_3_3[1]) ) - ( 36.0f / 6.0f ) ) / fabs ( cimags(columnMeanmedTable1_3_3[1]) ) < 1e-6 ); + assert( ( fabs(creals(columnMeanmedTable1_3_3[1]) ) - ( 32.0f / 6.0f ) ) / fabs ( creals(columnMeanmedTable1_3_3[1]) ) < 1e-6 ); + + assert( ( fabs(cimags(columnMeanmedTable1_3_3[2]) ) - (114.0f / 18.0f ) ) / fabs ( cimags(columnMeanmedTable1_3_3[2]) ) < 1e-6 ); + assert( ( fabs(creals(columnMeanmedTable1_3_3[2]) ) - (146.0f / 18.0f ) ) / fabs ( creals(columnMeanmedTable1_3_3[2]) ) < 1e-6 ); + + + + + return 0; +} + +*/ + +static int testvariancef(void) { + + svariancefsTest(); + svariancefaTest(); + /*scolumnvariancefaTest(); + srowvariancefaTest();*/ + cvariancefsTest(); + cvariancefaTest(); + /*crowvariancefaTest(); + ccolumnvariancefaTest(); +*/ + return 0; +} + +int main(void) { + assert(testvariancef() == 0); + return 0; +} + diff --git a/src/c/statisticsFunctions/variancef/zcolumnvariancefa.c b/src/c/statisticsFunctions/variancef/zcolumnvariancefa.c new file mode 100644 index 0000000..47fee75 --- /dev/null +++ b/src/c/statisticsFunctions/variancef/zcolumnvariancefa.c @@ -0,0 +1,35 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + + +#include "variancef.h" +#include "matrixTranspose.h" + +void zcolumnvariancefa(doubleComplex *in1, int lines, int columns,doubleComplex *in2 , doubleComplex* out){ + + int i = 0 ; + + doubleComplex* transp = (doubleComplex*) malloc ( sizeof (doubleComplex) *(unsigned int) (lines*columns)); + + + + ztransposea ( in1 , lines , columns , transp ) ; + + + for ( i = 0; i < lines ; i++) + out[i] = zvariancefa ( transp + i*columns , columns, in2 ) ; + + + free (transp); + +} + diff --git a/src/c/statisticsFunctions/variancef/zrowvariancefa.c b/src/c/statisticsFunctions/variancef/zrowvariancefa.c new file mode 100644 index 0000000..b39b2ee --- /dev/null +++ b/src/c/statisticsFunctions/variancef/zrowvariancefa.c @@ -0,0 +1,21 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "variancef.h" + +void zrowvariancefa(doubleComplex *in1, int lines, int columns,doubleComplex *in2, doubleComplex* out){ + + int i = 0 ; + + for ( i = 0; i < columns ; i++) + out[i] = zvariancefa ( in1 + i*lines , lines , in2 ) ; +} diff --git a/src/c/statisticsFunctions/variancef/zvariancefa.c b/src/c/statisticsFunctions/variancef/zvariancefa.c new file mode 100644 index 0000000..6de6f11 --- /dev/null +++ b/src/c/statisticsFunctions/variancef/zvariancefa.c @@ -0,0 +1,35 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2008-2008 - INRIA - Allan SIMON + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "variancef.h" +#include "division.h" + +doubleComplex zvariancefa(doubleComplex *in1, int size, doubleComplex *in2) + +{ + int i = 0 ; + doubleComplex temp = DoubleComplex (0.0, 0.0 ); + doubleComplex accumulate =DoubleComplex (0.0, 0.0 ); + doubleComplex accumulateFre = DoubleComplex (0.0, 0.0 ); + + doubleComplex meanf = zmeanfa (in1 , size , in2); + for(i = 0 ; i < size ; ++i) + { + temp = zpows ( zdiffs (in1[i] , meanf ) ,DoubleComplex (2.0, 0.0 ) ); + temp = zmuls( in2[i] , temp); + + accumulate = zadds( temp , accumulate); + accumulateFre = zadds(in2[i ] ,accumulateFre ); + } + + return zrdivs(accumulate, zdiffs(accumulateFre ,DoubleComplex(1.0,0.0) )); +} |