From 3824f14ad3ce887ea2fb69087b3e69934cf0bb55 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=92=D0=B8=D0=BA=D1=82=D0=BE=D1=80=D0=B8=D1=8F=20=D0=A1?=
 =?UTF-8?q?=D1=83=D1=8F=D0=B7=D0=BE=D0=B2=D0=B0?=
 <viktoriasuazova@MacBook-Pro-Viktoria.local>
Date: Fri, 21 Feb 2025 19:18:34 +0300
Subject: [PATCH] coare in config,run, makefile

---
 makefile            |  2 +-
 srcF/sfx_config.f90 | 10 +++++++---
 srcF/sfx_run.f90    |  4 ++++
 3 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/makefile b/makefile
index 53e0c28..c43660f 100644
--- a/makefile
+++ b/makefile
@@ -10,7 +10,7 @@ ifeq ($(COMPILER),gnu)
   FC = gfortran
 endif 
 
-OBJ_F90 = sfx_phys_const.o sfx_common.o  sfx_io.o sfx_data.o sfx_z0t_all_surface.o sfx_z0m_all_surface.o sfx_z0m_all.o sfx_z0t_all.o sfx_surface.o sfx_config.o sfx_log_param.o sfx_log.o sfx_most_param.o sfx_most.o sfx_most_snow_param.o sfx_most_snow.o sfx_sheba_param.o sfx_sheba.o sfx_esm_param.o sfx_esm.o  sfx_sheba_noit_param.o sfx_sheba_noniterative.o sfx_run.o sfx_main.o
+OBJ_F90 = sfx_phys_const.o sfx_common.o  sfx_io.o sfx_data.o sfx_z0t_all_surface.o sfx_z0m_all_surface.o sfx_z0m_all.o sfx_z0t_all.o sfx_surface.o sfx_config.o sfx_log_param.o sfx_log.o sfx_most_param.o sfx_most.o sfx_most_snow_param.o sfx_most_snow.o sfx_sheba_param.o sfx_sheba.o sfx_esm_param.o sfx_esm.o  sfx_sheba_noit_param.o sfx_sheba_noniterative.o sfx_sheba_coare_param.o sfx_sheba_coare.o sfx_run.o sfx_main.o
 OBJ_F =
 OBJ = $(OBJ_F90) $(OBJ_F)
 
diff --git a/srcF/sfx_config.f90 b/srcF/sfx_config.f90
index d90c7b2..85da20d 100644
--- a/srcF/sfx_config.f90
+++ b/srcF/sfx_config.f90
@@ -20,17 +20,17 @@
     integer, parameter :: model_most = 2            !< MOST model
     integer, parameter :: model_sheba = 3           !< SHEBA model
     integer, parameter :: model_sheba_noit = 4           !< SHEBA model noniterative
-
     integer, parameter :: model_most_snow = 5       !< MOST_SNOW model
+    integer, parameter :: model_sheba_coare = 6       !< MOST_SNOW model
     
     character(len = 16), parameter :: model_esm_tag = 'esm'
     character(len = 16), parameter :: model_log_tag = 'log'
     character(len = 16), parameter :: model_most_tag = 'most'
     character(len = 16), parameter :: model_sheba_tag = 'sheba'
     character(len = 16), parameter :: model_sheba_noit_tag = 'sheba_noit'
-
     character(len = 16), parameter :: model_most_snow_tag = 'most_snow'
-    
+    character(len = 16), parameter :: model_sheba_coare_tag = 'sheba_coare'
+
     !> @brief dataset enum def.
     integer, parameter :: dataset_mosaic = 1        !< MOSAiC campaign
     integer, parameter :: dataset_irgason = 2       !< IRGASON data
@@ -78,6 +78,8 @@ contains
             id = model_sheba_noit
        else if (trim(tag) == trim(model_most_snow_tag)) then
             id = model_most_snow 
+        else if (trim(tag) == trim(model_sheba_coare_tag)) then
+            id = model_sheba_coare 
        end if
 
     end function
@@ -100,6 +102,8 @@ contains
             tag = model_sheba_noit_tag
         else if (id == model_most_snow) then
             tag = model_most_snow_tag
+        else if (id == model_sheba_coare) then
+            tag = model_sheba_coare_tag
         end if 
 
     end function
diff --git a/srcF/sfx_run.f90 b/srcF/sfx_run.f90
index 7f20b32..6304f7d 100644
--- a/srcF/sfx_run.f90
+++ b/srcF/sfx_run.f90
@@ -46,6 +46,9 @@ contains
         use sfx_most_snow, only: &
                 get_surface_fluxes_vec_most_snow => get_surface_fluxes_vec, &
                 numericsType_most_snow => numericsType
+        use sfx_sheba_coare, only: &
+                get_surface_fluxes_vec_sheba_coare => get_surface_fluxes_vec, &
+                numericsType_sheba_coare => numericsType
         ! --------------------------------------------------------------------------------
     
         character(len=*), intent(in) :: filename_out
@@ -67,6 +70,7 @@ contains
         type(numericsType_sheba) :: numerics_sheba  !< surface flux module (SHEBA) numerics parameters
         type(numericsType_sheba_noit) :: numerics_sheba_noit  !< surface flux module (SHEBA) numerics parameters
         type(numericsType_most_snow) :: numerics_most_snow    !< surface flux module (MOST_SNOW) numerics parameters
+        type(numericsType_most_snow) :: numerics_sheba_coare   !< surface flux module (MOST_SNOW) numerics parameters
 
         integer :: num                          !< number of 'cells' in input
         ! --------------------------------------------------------------------------------
-- 
GitLab