From d55bcc9533b958f06445bfb85be391a5a29c0e43 Mon Sep 17 00:00:00 2001
From: Evgeny Mortikov <evgeny.mortikov@gmail.com>
Date: Fri, 20 Sep 2024 23:23:07 +0300
Subject: [PATCH] configuration file setup

---
 srcF/sfx_main.f90 | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/srcF/sfx_main.f90 b/srcF/sfx_main.f90
index 41fb861..6af7d7d 100644
--- a/srcF/sfx_main.f90
+++ b/srcF/sfx_main.f90
@@ -343,16 +343,23 @@ program sfx_main
                     write(*, *) ' FAILURE! > unknown dataset [key]: ', trim(char_array2str(config_field))
                     stop
                 end if
+                !< save nmax if previously set
+                nmax = dataset%nmax
                 call set_dataset(dataset, id)
+                dataset%nmax = nmax
         
                 if (dataset%id == dataset_user) then
-                    call get_charf("dataset.filename"//C_NULL_CHAR, config_field)
-                    dataset%filename = char_array2str(config_field)
             
                     call get_float("dataset.h"//C_NULL_CHAR, dataset%h)
                     call get_float("dataset.z0_m"//C_NULL_CHAR, dataset%z0_m)
                     call get_float("dataset.z0_h"//C_NULL_CHAR, dataset%z0_h)
                 end if
+
+                call is_varname("dataset.filename"//C_NULL_CHAR, status)
+                if ((status /= 0).or.(dataset%id == dataset_user)) then
+                    call get_charf("dataset.filename"//C_NULL_CHAR, config_field)
+                    dataset%filename = char_array2str(config_field)
+                end if  
             end if
 
             call is_varname("dataset.nmax"//C_NULL_CHAR, status)
-- 
GitLab