@@ -474,7 +474,8 @@ def dynamic(t,iceb_vel, water_vel, wind_vel, wave_height, wave_direction, Ao,
474
474
hwall = draft - water_depth
475
475
grounded = np .logical_and (hwall >= 0 , grounding )
476
476
if any (grounded ) and grounding :
477
- logger .info (f"Grounding condition : Icebergs grounded = { len (hwall [hwall > 0 ])} , hwall={ np .round (hwall [hwall > 0 ],3 )} meters" )
477
+ logger .debug (f"Grounding condition : Icebergs grounded = { len (hwall [hwall > 0 ])} , hwall={ np .round (hwall [hwall > 0 ],3 )} meters" )
478
+ self .elements .moving [grounded ] = 0 # Grounded icebergs shall not move, also not with diffusivity
478
479
479
480
sol = solve_ivp (dynamic , [0 , self .time_step .total_seconds ()], V0 ,
480
481
args = (water_vel , wind_vel , wave_height , wave_direction , Ao , Aa , rho_water ,
@@ -537,7 +538,7 @@ def roll_over(self):
537
538
W , L = np .min ([L , W ], axis = 0 ), np .max ([L , W ], axis = 0 )
538
539
mask = (W / H ) < crit
539
540
if any (mask ):
540
- logger .info (f"Rolling over : { np .sum (mask )} icebergs ..." )
541
+ logger .debug (f"Rolling over : { np .sum (mask )} icebergs ..." )
541
542
nL , nW , nH = (np .max ([L [mask ], H [mask ]], axis = 0 ), np .min ([L [mask ], H [mask ]], axis = 0 ), W [mask ])
542
543
L [mask ], W [mask ], H [mask ] = nL , nW , nH
543
544
depthib = H * alpha
0 commit comments