Skip to content

Commit b825eb0

Browse files
committed
add properties to run_simple_C_example.
1 parent 3a9d7b2 commit b825eb0

File tree

3 files changed

+107
-8
lines changed

3 files changed

+107
-8
lines changed

tests/C/example.c

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11

22
#include "world_builder/wrapper_c.h"
33
#include <stdio.h>
4+
#include <stdlib.h>
45

56
int main(int argc, char *argv[]) {
67
// Declare the types which will be needed.
@@ -52,14 +53,25 @@ int main(int argc, char *argv[]) {
5253
{1,0,0}, // temmperature
5354
{2,0,0}, // composition 0
5455
{2,1,0}, // composition 1
55-
{3,0,10}, // grain compositon 0, 10 grains
56+
{3,0,3}, // grain composition 0, 10 grains
5657
{4,0,0}, // tag
5758
{5,0,0} // velocity (3 values)
5859
};
59-
double values[1];
60-
printf("2d temperature: \n");
61-
properties_2d(ptr_world,x,z,depth,properties,1,values);
62-
printf("temperature in C = %f \n", values[0]);
60+
unsigned int n_properties_outputs = properties_output_size(ptr_world, properties, 6);
61+
printf("\nn_properties_outputs = %i \n",n_properties_outputs);
62+
double *values = (double*)malloc(sizeof(double)*n_properties_outputs);
63+
printf("2d properties: \n");
64+
65+
properties_2d(ptr_world,x,z,depth,properties,6,values);
66+
for(unsigned int i = 0; i < n_properties_outputs; ++i){
67+
printf("properties output %i = %f \n", i, values[i]);
68+
}
69+
70+
printf("3d properties: \n");
71+
properties_3d(ptr_world,x,y,z,depth,properties,6,values);
72+
for(unsigned int i = 0; i < n_properties_outputs; ++i){
73+
printf("properties output %i = %f \n", i, values[i]);
74+
}
6375

6476
release_world(ptr_world);
6577

tests/C/run_simple_C_example.log

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,81 @@ temperature in C = 150.000000
77
composition in C = 0.000000
88
3d composition:
99
composition in C = 1.000000
10+
11+
n_properties_outputs = 37
12+
2d properties:
13+
properties output 0 = 1600.000000
14+
properties output 1 = 0.000000
15+
properties output 2 = 0.000000
16+
properties output 3 = 0.000000
17+
properties output 4 = 0.000000
18+
properties output 5 = 0.000000
19+
properties output 6 = 0.000000
20+
properties output 7 = 0.000000
21+
properties output 8 = 0.000000
22+
properties output 9 = 0.000000
23+
properties output 10 = 0.000000
24+
properties output 11 = 0.000000
25+
properties output 12 = 0.000000
26+
properties output 13 = 0.000000
27+
properties output 14 = 0.000000
28+
properties output 15 = 0.000000
29+
properties output 16 = 0.000000
30+
properties output 17 = 0.000000
31+
properties output 18 = 0.000000
32+
properties output 19 = 0.000000
33+
properties output 20 = 0.000000
34+
properties output 21 = 0.000000
35+
properties output 22 = 0.000000
36+
properties output 23 = 0.000000
37+
properties output 24 = 0.000000
38+
properties output 25 = 0.000000
39+
properties output 26 = 0.000000
40+
properties output 27 = 0.000000
41+
properties output 28 = 0.000000
42+
properties output 29 = 0.000000
43+
properties output 30 = 0.000000
44+
properties output 31 = 0.000000
45+
properties output 32 = 0.000000
46+
properties output 33 = -1.000000
47+
properties output 34 = 0.000000
48+
properties output 35 = 0.000000
49+
properties output 36 = 0.000000
50+
3d properties:
51+
properties output 0 = 150.000000
52+
properties output 1 = 0.000000
53+
properties output 2 = 0.000000
54+
properties output 3 = 0.333333
55+
properties output 4 = 0.333333
56+
properties output 5 = 0.333333
57+
properties output 6 = 1.000000
58+
properties output 7 = 2.000000
59+
properties output 8 = 3.000000
60+
properties output 9 = 4.000000
61+
properties output 10 = 5.000000
62+
properties output 11 = 6.000000
63+
properties output 12 = 7.000000
64+
properties output 13 = 8.000000
65+
properties output 14 = 9.000000
66+
properties output 15 = 1.000000
67+
properties output 16 = 2.000000
68+
properties output 17 = 3.000000
69+
properties output 18 = 4.000000
70+
properties output 19 = 5.000000
71+
properties output 20 = 6.000000
72+
properties output 21 = 7.000000
73+
properties output 22 = 8.000000
74+
properties output 23 = 9.000000
75+
properties output 24 = 1.000000
76+
properties output 25 = 2.000000
77+
properties output 26 = 3.000000
78+
properties output 27 = 4.000000
79+
properties output 28 = 5.000000
80+
properties output 29 = 6.000000
81+
properties output 30 = 7.000000
82+
properties output 31 = 8.000000
83+
properties output 32 = 9.000000
84+
properties output 33 = 0.000000
85+
properties output 34 = 1.200000
86+
properties output 35 = 2.300000
87+
properties output 36 = 3.400000

tests/data/continental_plate.wb

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,14 @@
88
{"model":"continental plate", "name":"First continental plate", "max depth":250e3, "coordinates":[[-1e3,500e3],[500e3,500e3],[500e3,1000e3],[-1e3,1000e3]],
99
"temperature models":[{"model":"uniform", "max depth":75e3, "temperature":150},
1010
{"model":"uniform", "min depth":75e3, "max depth":150e3, "temperature":100},
11-
{"model":"uniform", "min depth":150e3, "max depth":225e3, "temperature":50}]},
11+
{"model":"uniform", "min depth":150e3, "max depth":225e3, "temperature":50}],
12+
"grains models":[
13+
{"model":"uniform", "compositions":[0,1], // olivine and enstatie
14+
"rotation matrices":[[[11,21,31],[41,51,61],[71,81,91]],[[101,111,121],[131,141,151],[161,171,181]]],
15+
"grain sizes":[0.3,-1]}
16+
],
17+
"velocity models": [{"model": "uniform raw", "velocity": [1.1,2.2,3.3]}]
18+
},
1219

1320
{"model":"continental plate", "name":"Second continental plate", "max depth":250e3, "coordinates":[[2000e3,2000e3],[1000e3,2000e3],[1000e3,1000e3],[2000e3,1000e3]],
1421
"temperature models":[{"model":"adiabatic", "potential mantle temperature":20}],
@@ -17,15 +24,17 @@
1724
{"model":"uniform", "compositions":[0,1], // olivine and enstatie
1825
"rotation matrices":[[[10,20,30],[40,50,60],[70,80,90]],[[100,110,120],[130,140,150],[160,170,180]]],
1926
"grain sizes":[0.3,-1]}
20-
]},
27+
]
28+
},
2129

2230
{"model":"continental plate", "name":"Third continental plate", "max depth":250e3, "coordinates":[[-1e3,500e3],[500e3,500e3],[500e3,1000e3],[-1e3,1000e3]],
2331
"composition models":[{"model":"uniform", "compositions":[3]}],
2432
"grains models":[
2533
{"model":"uniform", "compositions":[0,1], // olivine and enstatie
2634
"rotation matrices":[[[1,2,3],[4,5,6],[7,8,9]],[[10,11,12],[13,14,15],[16,17,18]]],
2735
"grain sizes":[-1,0.2]}
28-
]},
36+
],
37+
"velocity models": [{"model": "uniform raw", "velocity": [1.2,2.3,3.4]}]},
2938

3039
{"model":"continental plate", "name":"Fourth continental plate", "max depth":250e3, "coordinates":[[-1e3,1500e3],[500e3,1500e3],[500e3,2000e3],[-1e3,2000e3]],
3140
"temperature models":[{"model":"linear", "max depth":250e3}],

0 commit comments

Comments
 (0)