From 4322862c65a00e78ce2193d0c05d864845ded2bb Mon Sep 17 00:00:00 2001
From: Gildas Cambon <gildas.cambon@ird.fr>
Date: Thu, 18 Jan 2024 09:52:31 +0000
Subject: [PATCH] Rivers : still correct runoff positionning. Thanks to G.
 Charria

---
 Rivers/locate_runoff.m | 78 ++++++++++++++++++++++++------------------
 1 file changed, 44 insertions(+), 34 deletions(-)

diff --git a/Rivers/locate_runoff.m b/Rivers/locate_runoff.m
index dae3efdd..6394fc25 100644
--- a/Rivers/locate_runoff.m
+++ b/Rivers/locate_runoff.m
@@ -53,39 +53,42 @@ if dir(1)==0
         if dir(2)==1          % >> : west - east => TESTED
             while mask(j,i) == 1
                 i=i-1;
-                disp(['MASK:',num2str(mask(j,i))])
+                % disp(['MASK:',num2str(mask(j,i))])
             end  
             %in this case add +1 in i to get back into last wet cell
             i=i+1;
-            disp(['--'])
-            disp(['MASK:',num2str(mask(j,i))])
-            disp(['MASKU:',num2str(masku(j,i))])
+            %disp(['--'])
+            %disp(['MASK:',num2str(mask(j,i))])
+            %disp(['MASKU:',num2str(masku(j,i))])
         elseif dir(2)==-1     % << : east - west => TESTED
             while mask(j,i) == 1
                 i=i+1;
-                disp(['MASK:',num2str(mask(j,i))])
+                %disp(['MASK:',num2str(mask(j,i))])
             end
-            disp(['--'])
-            disp(['MASK:',num2str(mask(j,i))])
-            disp(['MASKU:',num2str(masku(j,i))])
+            %disp(['--'])
+            %disp(['MASK:',num2str(mask(j,i))])
+            %disp(['MASKU:',num2str(masku(j,i))])
         end
     else %inland
         if dir(2) == 1         % >> :  west-est  => TESTED
             while mask(j,i) ~= 1
                 i=i+1;
-                disp(['MASK:',num2str(mask(j,i))])
+                %disp(['MASK:',num2str(mask(j,i))])
             end
-            disp(['--'])
-            disp(['MASK:',num2str(mask(j,i))])
-            disp(['MASKU:',num2str(masku(j,i))])
+            %disp(['--'])
+            %disp(['MASK:',num2str(mask(j,i))])
+            %disp(['MASKU:',num2str(masku(j,i))])
         elseif dir(2) == -1    % << : east-west => TESTED
             while mask(j,i) ~= 1
                 i=i-1;
-                disp(['MASK:',num2str(mask(j,i))])
+                %disp(['MASK:',num2str(mask(j,i))])
             end
-        disp(['--'])
-        disp(['MASK:',num2str(mask(j,i))])
-        disp(['MASKU:',num2str(masku(j,i))])
+            % Modif GC 01/2024
+            %in this case add +1 in i to get back into last wet cell
+            i=i+1
+        %disp(['--'])
+        %disp(['MASK:',num2str(mask(j,i))])
+        %disp(['MASKU:',num2str(masku(j,i))])
         end
     end
 else %dir(k,1)=1
@@ -93,43 +96,46 @@ else %dir(k,1)=1
         if dir(2) == 1 %  ^ : sud - nord => TESTED
             while mask(j,i) == 1
                 j=j-1;
-                disp(['MASK:',num2str(mask(j,i))])
+                %disp(['MASK:',num2str(mask(j,i))])
             end
             %in this case add +1 in j to get back into last wet cell
             j=j+1;
             %   
-            disp(['-- ^^ start insea'])
-            disp(['MASK:',num2str(mask(j,i))])
-            disp(['MASKV:',num2str(maskv(j,i))])
+            %disp(['-- ^^ start insea'])
+            %disp(['MASK:',num2str(mask(j,i))])
+            %disp(['MASKV:',num2str(maskv(j,i))])
             
         elseif dir(2) == -1     % v : nord - sud  => TESTED
             while mask(j,i) == 1
                 j=j+1;
-                disp(['MASK:',num2str(mask(j,i))])
+                %disp(['MASK:',num2str(mask(j,i))])
             end
-            disp(['--'])
-            disp(['MASK:',num2str(mask(j,i))])
-            disp(['MASKV:',num2str(maskv(j,i))])
+            %disp(['--'])
+            %disp(['MASK:',num2str(mask(j,i))])
+            %disp(['MASKV:',num2str(maskv(j,i))])
 
         end
     else %inland  
         if dir(2) == 1      % ^: sud-nord  => TESTED          
             while mask(j,i) ~= 1
                 j=j+1;
-                disp(['MASK:',num2str(mask(j,i))])
+                %disp(['MASK:',num2str(mask(j,i))])
             end
-            disp(['--^^ start inland'])
-            disp(['MASK:',num2str(mask(j,i))])
-            disp(['MASKV:',num2str(maskv(j,i))])
+            %disp(['--^^ start inland'])
+            %disp(['MASK:',num2str(mask(j,i))])
+            %disp(['MASKV:',num2str(maskv(j,i))])
 
         elseif dir(2) == -1 % v : nord-sud => TESTED
             while mask(j,i) ~= 1
                 j=j-1;
-                disp(['MASK:',num2str(mask(j,i))])
+                %disp(['MASK:',num2str(mask(j,i))])
             end
-            disp(['--'])
-            disp(['MASK:',num2str(mask(j,i))])
-            disp(['MASKV:',num2str(maskv(j,i))])
+            % Modif GC 01/2024
+            %in this case add +1 in j to get back into last wet cell
+            j=j+1;
+            %disp(['--'])
+            %disp(['MASK:',num2str(mask(j,i))])
+            %disp(['MASKV:',num2str(maskv(j,i))])
         end
     end
 end
@@ -147,7 +153,9 @@ end
 % -- toward west <<
 if ( dir(1) == 0 & dir(2) == -1 );  
     j2for_out = j2for ;
-    i2for_out = i2for + 1 ;
+    % Modif GC 01/2024
+    % i2for_out = i2for + 1 ;
+    i2for_out = i2for ;
 end
 % -- toward north ^^
 if ( dir(1) == 1 & dir(2) == 1 );  
@@ -156,7 +164,9 @@ if ( dir(1) == 1 & dir(2) == 1 );
 end
 % -- toward south vv
 if ( dir(1) == 1 & dir(2) == -1 ); 
-    j2for_out = j2for + 1 ;
+    % Modif GC 01/2024
+    % j2for_out = j2for + 1 ;
+    j2for_out = j2for ;
     i2for_out = i2for ;
 end
 
-- 
GitLab