Skip to content

Commit

Permalink
add properties to run_simple_C_example.
Browse files Browse the repository at this point in the history
  • Loading branch information
MFraters committed Oct 26, 2024
1 parent 5e4144c commit 79f556a
Show file tree
Hide file tree
Showing 3 changed files with 107 additions and 8 deletions.
22 changes: 17 additions & 5 deletions tests/C/example.c
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@

#include "world_builder/wrapper_c.h"
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[]) {
// Declare the types which will be needed.
Expand Down Expand Up @@ -52,14 +53,25 @@ int main(int argc, char *argv[]) {
{1,0,0}, // temmperature
{2,0,0}, // composition 0
{2,1,0}, // composition 1
{3,0,10}, // grain compositon 0, 10 grains
{3,0,3}, // grain composition 0, 10 grains
{4,0,0}, // tag
{5,0,0} // velocity (3 values)
};
double values[1];
printf("2d temperature: \n");
properties_2d(ptr_world,x,z,depth,properties,1,values);
printf("temperature in C = %f \n", values[0]);
unsigned int n_properties_outputs = properties_output_size(ptr_world, properties, 6);
printf("\nn_properties_outputs = %i \n",n_properties_outputs);
double *values = (double*)malloc(sizeof(double)*n_properties_outputs);
printf("2d properties: \n");

properties_2d(ptr_world,x,z,depth,properties,6,values);
for(unsigned int i = 0; i < n_properties_outputs; ++i){
printf("properties output %i = %f \n", i, values[i]);
}

printf("3d properties: \n");
properties_3d(ptr_world,x,y,z,depth,properties,6,values);
for(unsigned int i = 0; i < n_properties_outputs; ++i){
printf("properties output %i = %f \n", i, values[i]);
}

release_world(ptr_world);

Expand Down
78 changes: 78 additions & 0 deletions tests/C/run_simple_C_example.log
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,81 @@ temperature in C = 150.000000
composition in C = 0.000000
3d composition:
composition in C = 1.000000

n_properties_outputs = 37
2d properties:
properties output 0 = 1600.000000
properties output 1 = 0.000000
properties output 2 = 0.000000
properties output 3 = 0.000000
properties output 4 = 0.000000
properties output 5 = 0.000000
properties output 6 = 0.000000
properties output 7 = 0.000000
properties output 8 = 0.000000
properties output 9 = 0.000000
properties output 10 = 0.000000
properties output 11 = 0.000000
properties output 12 = 0.000000
properties output 13 = 0.000000
properties output 14 = 0.000000
properties output 15 = 0.000000
properties output 16 = 0.000000
properties output 17 = 0.000000
properties output 18 = 0.000000
properties output 19 = 0.000000
properties output 20 = 0.000000
properties output 21 = 0.000000
properties output 22 = 0.000000
properties output 23 = 0.000000
properties output 24 = 0.000000
properties output 25 = 0.000000
properties output 26 = 0.000000
properties output 27 = 0.000000
properties output 28 = 0.000000
properties output 29 = 0.000000
properties output 30 = 0.000000
properties output 31 = 0.000000
properties output 32 = 0.000000
properties output 33 = -1.000000
properties output 34 = 0.000000
properties output 35 = 0.000000
properties output 36 = 0.000000
3d properties:
properties output 0 = 150.000000
properties output 1 = 0.000000
properties output 2 = 0.000000
properties output 3 = 0.333333
properties output 4 = 0.333333
properties output 5 = 0.333333
properties output 6 = 1.000000
properties output 7 = 2.000000
properties output 8 = 3.000000
properties output 9 = 4.000000
properties output 10 = 5.000000
properties output 11 = 6.000000
properties output 12 = 7.000000
properties output 13 = 8.000000
properties output 14 = 9.000000
properties output 15 = 1.000000
properties output 16 = 2.000000
properties output 17 = 3.000000
properties output 18 = 4.000000
properties output 19 = 5.000000
properties output 20 = 6.000000
properties output 21 = 7.000000
properties output 22 = 8.000000
properties output 23 = 9.000000
properties output 24 = 1.000000
properties output 25 = 2.000000
properties output 26 = 3.000000
properties output 27 = 4.000000
properties output 28 = 5.000000
properties output 29 = 6.000000
properties output 30 = 7.000000
properties output 31 = 8.000000
properties output 32 = 9.000000
properties output 33 = 0.000000
properties output 34 = 1.200000
properties output 35 = 2.300000
properties output 36 = 3.400000
15 changes: 12 additions & 3 deletions tests/data/continental_plate.wb
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,14 @@
{"model":"continental plate", "name":"First continental plate", "max depth":250e3, "coordinates":[[-1e3,500e3],[500e3,500e3],[500e3,1000e3],[-1e3,1000e3]],
"temperature models":[{"model":"uniform", "max depth":75e3, "temperature":150},
{"model":"uniform", "min depth":75e3, "max depth":150e3, "temperature":100},
{"model":"uniform", "min depth":150e3, "max depth":225e3, "temperature":50}]},
{"model":"uniform", "min depth":150e3, "max depth":225e3, "temperature":50}],
"grains models":[
{"model":"uniform", "compositions":[0,1], // olivine and enstatie
"rotation matrices":[[[11,21,31],[41,51,61],[71,81,91]],[[101,111,121],[131,141,151],[161,171,181]]],
"grain sizes":[0.3,-1]}
],
"velocity models": [{"model": "uniform raw", "velocity": [1.1,2.2,3.3]}]
},

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

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

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

0 comments on commit 79f556a

Please sign in to comment.