#include <stdlib.h> #include <stdio.h> #include "cxx_sfx_model_compute_flux.h" #include "sfx_esm.h" #include "sfx_sheba.h" #include <vector> // -------------------------------------------------------------------------- // void cxx_esm_compute_flux (sfxDataVecTypeC* sfx, meteoDataVecTypeC* meteo, const sfx_esm_param_C* model_param, const sfx_surface_param* surface_param, const sfx_esm_numericsType_C* numerics, const sfx_phys_constants* constants, const int grid_size) { #ifdef INCLUDE_CUDA static FluxEsm<float, MemType::CPU, MemType::CPU, MemType::GPU> F(sfx, meteo, *model_param, *surface_param, *numerics, *constants, grid_size); F.compute_flux(); #else static FluxEsm<float, MemType::CPU, MemType::CPU, MemType::CPU> F(sfx, meteo, *model_param, *surface_param, *numerics, *constants, grid_size); F.compute_flux(); #endif } void cxx_sheba_compute_flux (sfxDataVecTypeC* sfx, meteoDataVecTypeC* meteo, const sfx_sheba_param_C* model_param, const sfx_surface_param* surface_param, const sfx_sheba_numericsType_C* numerics, const sfx_phys_constants* constants, const int grid_size) { // #ifdef INCLUDE_CUDA // static FluxSheba<float, MemType::CPU, MemType::CPU, MemType::GPU> F(sfx, meteo, *model_param, *surface_param, *numerics, *constants, grid_size); // F.compute_flux(); // #else // static FluxSheba<float, MemType::CPU, MemType::CPU, MemType::CPU> F(sfx, meteo, *model_param, *surface_param, *numerics, *constants, grid_size); // F.compute_flux(); // #endif }