random values
[physik/morpheus.git] / random.c
diff --git a/random.c b/random.c
new file mode 100644 (file)
index 0000000..73e69f5
--- /dev/null
+++ b/random.c
@@ -0,0 +1,27 @@
+/*
+ * random.c - functions to get random values
+ *
+ */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include "defines.h"
+
+extern int sum_z_segments;
+
+/* return random integer between 0 - max */
+int rand_get(int max) {
+ return((int) (rand() * (max*1.0/RAND_MAX)) );
+}
+
+/* get z value (linear growth of probability with depths) */
+int rand_get_lgp(int slope_cc,int start_cc) {
+ int z,i;
+ z=rand_get(sum_z_segments);
+ for(i=0;;i++) {
+  z-=i*slope_cc;
+  if(z<=0) break;
+ }
+ return i;
+}
+