summaryrefslogtreecommitdiffstats
path: root/SD-VBS/common/c/randnWrapper.c
diff options
context:
space:
mode:
authorLeo Chan <leochanj@live.unc.edu>2020-10-22 01:53:21 -0400
committerJoshua Bakita <jbakita@cs.unc.edu>2020-10-22 01:56:35 -0400
commitd17b33131c14864bd1eae275f49a3f148e21cf29 (patch)
tree0d8f77922e8d193cb0f6edab83018f057aad64a0 /SD-VBS/common/c/randnWrapper.c
parent601ed25a4c5b66cb75315832c15613a727db2c26 (diff)
Squashed commit of the sb-vbs branch.
Includes the SD-VBS benchmarks modified to: - Use libextra to loop as realtime jobs - Preallocate memory before starting their main computation - Accept input via stdin instead of via argc Does not include the SD-VBS matlab code. Fixes libextra execution in LITMUS^RT.
Diffstat (limited to 'SD-VBS/common/c/randnWrapper.c')
-rw-r--r--SD-VBS/common/c/randnWrapper.c40
1 files changed, 40 insertions, 0 deletions
diff --git a/SD-VBS/common/c/randnWrapper.c b/SD-VBS/common/c/randnWrapper.c
new file mode 100644
index 0000000..4701b0e
--- /dev/null
+++ b/SD-VBS/common/c/randnWrapper.c
@@ -0,0 +1,40 @@
1/********************************
2Author: Sravanthi Kota Venkata
3********************************/
4
5#include "sdvbs_common.h"
6#include <math.h>
7F2D* randnWrapper(int m, int n)
8{
9 F2D *out;
10 float seed;
11 int i,j;
12
13 out = fSetArray(m, n, 0);
14 seed = 0.9;
15
16 for(i=0; i<m; i++)
17 {
18 for(j=0; j<n; j++)
19 {
20 if(i<j)
21 subsref(out,i,j) = seed * ((i+1.0)/(j+1.0));
22 else
23 subsref(out,i,j) = seed * ((j+1.0)/(i+1.0));
24 }
25 }
26
27 for(i=0; i<m ;i++)
28 {
29 for(j=0; j<n; j++)
30 {
31 float w;
32 w = subsref(out,i,j);
33 w = ((-2.0 * log(w))/w);
34 subsref(out,i,j) = w;
35 }
36 }
37
38 return out;
39}
40