solstice-solver

Solver library of the solstice app
git clone git://git.meso-star.com/solstice-solver.git
Log | Files | Refs | README | LICENSE

commit f1235b6fa475d3b4e8c92bf116d7793c5f3c66a9
parent c5e9c450a0c4e72ea4477801476165b2133b265d
Author: Vincent Forest <vincent.forest@meso-star.com>
Date:   Thu, 28 Sep 2017 14:11:07 +0200

Merge branch 'release_0.6.1'

Diffstat:
MREADME.md | 5+++++
Mcmake/CMakeLists.txt | 2+-
Msrc/ssol.h | 4++--
Msrc/ssol_sun.c | 11++++-------
Msrc/ssol_sun_c.h | 2+-
Msrc/test_ssol_solver10.c | 2+-
Msrc/test_ssol_sun.c | 26+++++++++++++-------------
7 files changed, 27 insertions(+), 25 deletions(-)

diff --git a/README.md b/README.md @@ -26,6 +26,11 @@ variable the install directories of its dependencies. ## Release notes +### Version 0.6.1 + +- Rename the `ssol_sun_pillbox_set_theta_max` function in + `ssol_sun_pillbox_set_half_angle`. + ### Version 0.6 - Fix the integration for non parallel sun: the angle between the principal sun diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt @@ -51,7 +51,7 @@ rcmake_append_runtime_dirs(_runtime_dirs RSys Star3D Star3DUT StarCPR StarSF Sta ################################################################################ set(VERSION_MAJOR 0) set(VERSION_MINOR 6) -set(VERSION_PATCH 0) +set(VERSION_PATCH 1) set(VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}) set(SSOL_FILES_SRC diff --git a/src/ssol.h b/src/ssol.h @@ -1040,9 +1040,9 @@ ssol_sun_set_spectrum struct ssol_spectrum* spectrum); SSOL_API res_T -ssol_sun_pillbox_set_theta_max +ssol_sun_pillbox_set_half_angle (struct ssol_sun* sun, - const double theta_max); /* In radian */ + const double half_angle); /* In radian */ SSOL_API res_T ssol_sun_set_buie_param diff --git a/src/ssol_sun.c b/src/ssol_sun.c @@ -170,14 +170,11 @@ ssol_sun_set_spectrum(struct ssol_sun* sun, struct ssol_spectrum* spectrum) } res_T -ssol_sun_pillbox_set_theta_max(struct ssol_sun* sun, const double theta_max) +ssol_sun_pillbox_set_half_angle(struct ssol_sun* sun, const double half_angle) { - if(!sun - || theta_max <= 0 - || theta_max > PI - || sun->type != SUN_PILLBOX) + if(!sun || half_angle <= 0 || half_angle > PI || sun->type != SUN_PILLBOX) return RES_BAD_ARG; - sun->data.pillbox.theta_max = theta_max; + sun->data.pillbox.half_angle = half_angle; return RES_OK; } @@ -214,7 +211,7 @@ sun_create_direction_distribution break; case SUN_PILLBOX: res = ranst_sun_dir_pillbox_setup - (ran_dir, sun->data.pillbox.theta_max, sun->direction); + (ran_dir, sun->data.pillbox.half_angle, sun->direction); break; case SUN_BUIE: res = ranst_sun_dir_buie_setup diff --git a/src/ssol_sun_c.h b/src/ssol_sun_c.h @@ -31,7 +31,7 @@ enum sun_type { }; struct pillbox { - double theta_max; + double half_angle; }; struct buie { diff --git a/src/test_ssol_solver10.c b/src/test_ssol_solver10.c @@ -95,7 +95,7 @@ main(int argc, char** argv) CHECK(ssol_spectrum_create(dev, &spectrum), RES_OK); CHECK(ssol_spectrum_setup(spectrum, get_wlen, 3, NULL), RES_OK); CHECK(ssol_sun_create_pillbox(dev, &sun), RES_OK); - CHECK(ssol_sun_pillbox_set_theta_max(sun, 1), RES_OK); + CHECK(ssol_sun_pillbox_set_half_angle(sun, 1), RES_OK); CHECK(ssol_sun_set_direction(sun, d3(dir, 0, 0, -1)), RES_OK); CHECK(ssol_sun_set_spectrum(sun, spectrum), RES_OK); CHECK(ssol_sun_set_dni(sun, DNI), RES_OK); diff --git a/src/test_ssol_sun.c b/src/test_ssol_sun.c @@ -76,10 +76,10 @@ main(int argc, char** argv) CHECK(ssol_sun_get_dni(sun, &dni), RES_OK); CHECK(dni, 1000); - CHECK(ssol_sun_pillbox_set_theta_max(NULL, 0.1), RES_BAD_ARG); - CHECK(ssol_sun_pillbox_set_theta_max(sun, -0.1), RES_BAD_ARG); - CHECK(ssol_sun_pillbox_set_theta_max(sun, 999), RES_BAD_ARG); - CHECK(ssol_sun_pillbox_set_theta_max(sun, 0.1), RES_BAD_ARG); + CHECK(ssol_sun_pillbox_set_half_angle(NULL, 0.1), RES_BAD_ARG); + CHECK(ssol_sun_pillbox_set_half_angle(sun, -0.1), RES_BAD_ARG); + CHECK(ssol_sun_pillbox_set_half_angle(sun, 999), RES_BAD_ARG); + CHECK(ssol_sun_pillbox_set_half_angle(sun, 0.1), RES_BAD_ARG); CHECK(ssol_sun_set_buie_param(NULL, 0.1), RES_BAD_ARG); CHECK(ssol_sun_set_buie_param(sun, -0.1), RES_BAD_ARG); @@ -125,11 +125,11 @@ main(int argc, char** argv) CHECK(ssol_sun_get_dni(sun, &dni), RES_OK); CHECK(dni, 1000); - CHECK(ssol_sun_pillbox_set_theta_max(NULL, 0.1), RES_BAD_ARG); - CHECK(ssol_sun_pillbox_set_theta_max(sun, -0.1), RES_BAD_ARG); - CHECK(ssol_sun_pillbox_set_theta_max(sun, 999), RES_BAD_ARG); - CHECK(ssol_sun_pillbox_set_theta_max(sun, 0.1), RES_OK); - CHECK(ssol_sun_pillbox_set_theta_max(sun, 0.1), RES_OK); + CHECK(ssol_sun_pillbox_set_half_angle(NULL, 0.1), RES_BAD_ARG); + CHECK(ssol_sun_pillbox_set_half_angle(sun, -0.1), RES_BAD_ARG); + CHECK(ssol_sun_pillbox_set_half_angle(sun, 999), RES_BAD_ARG); + CHECK(ssol_sun_pillbox_set_half_angle(sun, 0.1), RES_OK); + CHECK(ssol_sun_pillbox_set_half_angle(sun, 0.1), RES_OK); CHECK(ssol_sun_set_buie_param(NULL, 0.1), RES_BAD_ARG); CHECK(ssol_sun_set_buie_param(sun, -0.1), RES_BAD_ARG); @@ -174,10 +174,10 @@ main(int argc, char** argv) CHECK(ssol_sun_get_dni(sun, &dni), RES_OK); CHECK(dni, 1000); - CHECK(ssol_sun_pillbox_set_theta_max(NULL, 0.1), RES_BAD_ARG); - CHECK(ssol_sun_pillbox_set_theta_max(sun, -0.1), RES_BAD_ARG); - CHECK(ssol_sun_pillbox_set_theta_max(sun, 999), RES_BAD_ARG); - CHECK(ssol_sun_pillbox_set_theta_max(sun, 0.1), RES_BAD_ARG); + CHECK(ssol_sun_pillbox_set_half_angle(NULL, 0.1), RES_BAD_ARG); + CHECK(ssol_sun_pillbox_set_half_angle(sun, -0.1), RES_BAD_ARG); + CHECK(ssol_sun_pillbox_set_half_angle(sun, 999), RES_BAD_ARG); + CHECK(ssol_sun_pillbox_set_half_angle(sun, 0.1), RES_BAD_ARG); CHECK(ssol_sun_set_buie_param(NULL, 0.1), RES_BAD_ARG); CHECK(ssol_sun_set_buie_param(sun, -0.1), RES_BAD_ARG);