summaryrefslogtreecommitdiff
path: root/src/c/elementaryFunctions
diff options
context:
space:
mode:
Diffstat (limited to 'src/c/elementaryFunctions')
-rw-r--r--src/c/elementaryFunctions/includes/nanmin.h3
-rw-r--r--src/c/elementaryFunctions/interfaces/int_nanmin.h2
-rw-r--r--src/c/elementaryFunctions/nanmin/dnanmincola.c27
-rw-r--r--src/c/elementaryFunctions/nanmin/dnanminrowa.c11
4 files changed, 20 insertions, 23 deletions
diff --git a/src/c/elementaryFunctions/includes/nanmin.h b/src/c/elementaryFunctions/includes/nanmin.h
index adeff6b5..34bbfefd 100644
--- a/src/c/elementaryFunctions/includes/nanmin.h
+++ b/src/c/elementaryFunctions/includes/nanmin.h
@@ -30,7 +30,8 @@ double dnanminnps(double in);
void dnanminrownpa(double *in, int row, int col, double* out);
void dnanmincolnpa(double *in, int row, int col, double* out);
-
+void dnanminrowa(double *in, int row, int col, double *out, double *p);
+void dnanmincola(double *in, int row, int col, double *out, double *p);
diff --git a/src/c/elementaryFunctions/interfaces/int_nanmin.h b/src/c/elementaryFunctions/interfaces/int_nanmin.h
index 408dac65..e351a240 100644
--- a/src/c/elementaryFunctions/interfaces/int_nanmin.h
+++ b/src/c/elementaryFunctions/interfaces/int_nanmin.h
@@ -22,7 +22,7 @@ extern "C" {
#define d0nanmind0(in1) dnanminnps(in1)
#define d2g2nanmind2(in1, size1, in2, size2, out) (in2[0]=='r') ? dnanminrownpa(in1, size1[0], size1[1], out) : dnanmincolnpa(in1, size1[0] , size1[1], out)
-//#define d2g2nanmind2d2(in1, size1, in2, size2, p, out) (in2[0]=='r') ? dnanminrowa(in1, size1[0], size1[1], p, out) : dnanmincola(in1, size1[0] , size1[1], p, out)
+#define d2g2nanmind2d2(in1, size1, in2, size2, out, p) (in2[0]=='r') ? dnanminrowa(in1, size1[0], size1[1], p, out) : dnanmincola(in1, size1[0] , size1[1], out, p)
#ifdef __cplusplus
} /* extern "C" */
diff --git a/src/c/elementaryFunctions/nanmin/dnanmincola.c b/src/c/elementaryFunctions/nanmin/dnanmincola.c
index 0c4d202f..35b94c08 100644
--- a/src/c/elementaryFunctions/nanmin/dnanmincola.c
+++ b/src/c/elementaryFunctions/nanmin/dnanmincola.c
@@ -15,22 +15,19 @@
#include <math.h>
#include "nanmin.h"
-void dnanmincola(double *in, int row, int col, double *p, double *out)
+void dnanmincola(double *in, int row, int col, double *out, double *p)
{
- double inter[col];
-
-
-for(int i=0; i< row; i++)
+ double inter[col];
+ double position[col];
+
+ for(int i=0; i < row; i++)
+ {
+ for(int j=0; j < col; i++)
{
- for(int j=0 ; j< col; j++)
- {
- inter[j]= in[i+ (j*row)];
-
- }
- out[i]= dnanmina( inter, 1, col, p);
-
+ inter[j]= in[i+ (j*row)];
}
-
-
+
+ out[i]= dnanmina(inter, 1, col, position);
+
+ }
}
-
diff --git a/src/c/elementaryFunctions/nanmin/dnanminrowa.c b/src/c/elementaryFunctions/nanmin/dnanminrowa.c
index d255ef14..0909fc2c 100644
--- a/src/c/elementaryFunctions/nanmin/dnanminrowa.c
+++ b/src/c/elementaryFunctions/nanmin/dnanminrowa.c
@@ -15,22 +15,21 @@
#include <math.h>
#include "nanmin.h"
-void dnanminrowa(double *in, int row, int col, double *p, double *out)
+void dnanminrowa(double *in, int row, int col, double *out, double *p)
{
- double inter[row];
+ double inter[row], *position;
-for(int i=0; i< col; i++)
+ for(int i=0; i< col; i++)
{
for(int j=0 ; j< row; j++)
{
inter[j]= in[j+ (i*row)];
}
- out[i]= dnanmina( inter, row, 1, p);
-
+ out[i]= dnanmina( inter, row, 1, position);
}
-
+ //p = position;
}