stardis

Perform coupled heat transfer calculations
git clone git://git.meso-star.fr/stardis.git
Log | Files | Refs | README | LICENSE

commit 7e798ae83cdc5b98dac70fb79bd04fbdd42d0be3
parent 02bc98ff940b7eebde778c6e200041c2bf43743a
Author: Christophe Coustet <christophe.coustet@meso-star.com>
Date:   Wed, 24 Oct 2018 11:31:31 +0200

Windows build.

Diffstat:
Msrc/args.h | 12+++++++++---
Msrc/main.c | 3+++
Msrc/stardis-compute.c | 16++++++++--------
3 files changed, 20 insertions(+), 11 deletions(-)

diff --git a/src/args.h b/src/args.h @@ -19,14 +19,20 @@ struct args{ char* bc_filename; size_t N; unsigned nthreads; - double probe[4]; + union { + struct { double p[3]; uint64_t t; }; + double probe[4]; + }; enum stardis_mode mode; double scale_factor; double radiative_temp[2]; char* camera; }; -#define ARGS_DEFAULT__ {NULL, NULL, 10000, SDIS_NTHREADS_DEFAULT, {0,0,0,INF}, PROBE_COMPUTE, 1.0, {300,300}, NULL} -static const struct args ARGS_DEFAULT = ARGS_DEFAULT__; +#define ARGS_DEFAULT__ {\ + NULL, NULL, 10000, SDIS_NTHREADS_DEFAULT,\ + { .p={0.0, 0.0, 0.0}, .t=0x7FF0000000000000 /* probe[3]=INF */},\ + PROBE_COMPUTE, 1.0, {300.0, 300.0}, NULL} +static const struct args ARGS_DEFAULT = ARGS_DEFAULT__; static void print_help(char* prog) diff --git a/src/main.c b/src/main.c @@ -10,6 +10,9 @@ int main(int argc, char** argv){ int err = 0; res_T res = RES_OK; + /* Check proper init for ARGS_DEFAULT */ + ASSERT(ARGS_DEFAULT.probe[3] == INF); + res = parse_args(argc, argv, &args); if (res != RES_OK) goto error; diff --git a/src/stardis-compute.c b/src/stardis-compute.c @@ -198,7 +198,7 @@ solid_get_power /******************************************************************************* * Interface data ******************************************************************************/ -struct interface { +struct intface { double hc; /* Convection coefficient */ char* temperature; char* flux; @@ -210,7 +210,7 @@ static double interface_get_convection_coef (const struct sdis_interface_fragment* frag, struct sdis_data* data) { - const struct interface* interface_props = sdis_data_cget(data); + const struct intface* interface_props = sdis_data_cget(data); return interface_props->hc; } @@ -218,7 +218,7 @@ static double interface_get_temperature (const struct sdis_interface_fragment* frag, struct sdis_data* data) { - const struct interface* interface_props = sdis_data_cget(data); + const struct intface* interface_props = sdis_data_cget(data); if (interface_props->temperature == NULL) { return -1; @@ -247,7 +247,7 @@ static double interface_get_flux (const struct sdis_interface_fragment* frag, struct sdis_data* data) { - const struct interface* interface_props = sdis_data_cget(data); + const struct intface* interface_props = sdis_data_cget(data); if (interface_props->flux == NULL) { return SDIS_FLUX_NONE; @@ -276,7 +276,7 @@ static double interface_get_emissivity (const struct sdis_interface_fragment* frag, struct sdis_data* data) { - const struct interface* interface_props = sdis_data_cget(data); + const struct intface* interface_props = sdis_data_cget(data); return interface_props->emissivity; } @@ -285,7 +285,7 @@ static double interface_get_alpha (const struct sdis_interface_fragment* frag, struct sdis_data* data) { - const struct interface* interface_props = sdis_data_cget(data); + const struct intface* interface_props = sdis_data_cget(data); return interface_props->alpha; } @@ -386,7 +386,7 @@ stardis_compute(struct stardis* stardis, enum stardis_mode mode) SDIS_INTERFACE_SHADER_NULL; struct sdis_interface_shader interface_shader_connection = SDIS_INTERFACE_SHADER_NULL; - struct interface* interface_props = NULL; + struct intface* interface_props = NULL; struct sdis_interface** interfaces = NULL; struct sdis_scene* scn = NULL; @@ -477,7 +477,7 @@ stardis_compute(struct stardis* stardis, enum stardis_mode mode) double alpha = stardis->boundary[stardis->geometry.triangle[i].bound_id].specular_fraction; - SDIS(data_create(dev, sizeof(struct interface), ALIGNOF(struct interface), NULL, &data)); + SDIS(data_create(dev, sizeof(struct intface), ALIGNOF(struct intface), NULL, &data)); interface_props = sdis_data_get(data); if (hc > -1) { interface_props->hc = hc;