Skip to content
Snippets Groups Projects
Commit a9ebda34 authored by KyleKlenk's avatar KyleKlenk
Browse files

Add Error for when snow is set to grow above 5 layers

parent 81dd0905
No related branches found
No related tags found
1 merge request!5add in compiler def ACTORS_ACTIVE to turn on some stuff so can move...
...@@ -17,6 +17,7 @@ enum class hru_error : uint8_t { ...@@ -17,6 +17,7 @@ enum class hru_error : uint8_t {
enum class file_access_error : uint8_t { enum class file_access_error : uint8_t {
writing_error = 1, writing_error = 1,
unhandleable_error = 2, unhandleable_error = 2,
mDecisions_error = 100,
}; };
// HRU Errors // HRU Errors
......
...@@ -43,8 +43,13 @@ behavior file_access_actor(stateful_actor<file_access_state>* self, int start_gr ...@@ -43,8 +43,13 @@ behavior file_access_actor(stateful_actor<file_access_state>* self, int start_gr
&self->state.err); &self->state.err);
if (self->state.err != 0) { if (self->state.err != 0) {
aout(self) << "ERROR: File Access Actor - File_Access_init_Fortran\n"; aout(self) << "ERROR: File Access Actor - File_Access_init_Fortran\n";
self->send(self->state.parent, file_access_error::unhandleable_error, self); if (self->state.err == 100) {
self->send(self->state.parent, file_access_error::mDecisions_error, self);
} else {
self->send(self->state.parent, file_access_error::unhandleable_error, self);
}
return {}; return {};
} }
aout(self) << "Simluations Steps: " << self->state.num_steps << "\n"; aout(self) << "Simluations Steps: " << self->state.num_steps << "\n";
......
...@@ -131,7 +131,7 @@ subroutine fileAccessActor_init_fortran(& ! Variables for forcing ...@@ -131,7 +131,7 @@ subroutine fileAccessActor_init_fortran(& ! Variables for forcing
! get the maximum number of snow layers ! get the maximum number of snow layers
select case(model_decisions(iLookDECISIONS%snowLayers)%iDecision) select case(model_decisions(iLookDECISIONS%snowLayers)%iDecision)
case(sameRulesAllLayers); maxSnowLayers = 100 case(sameRulesAllLayers); err=100; message=trim(message)//'sameRulesAllLayers not implemented';print*,message;return
case(rulesDependLayerIndex); maxSnowLayers = 5 case(rulesDependLayerIndex); maxSnowLayers = 5
case default; err=20; message=trim(message)//'unable to identify option to combine/sub-divide snow layers';print*,message;return case default; err=20; message=trim(message)//'unable to identify option to combine/sub-divide snow layers';print*,message;return
end select ! (option to combine/sub-divide snow layers) end select ! (option to combine/sub-divide snow layers)
......
...@@ -243,7 +243,11 @@ behavior job_actor(stateful_actor<job_state>* self, ...@@ -243,7 +243,11 @@ behavior job_actor(stateful_actor<job_state>* self,
break; break;
case type_id_v<file_access_error>: case type_id_v<file_access_error>:
aout(self) << "File Access Error: " << to_string(err) << "No Handling Implemented\n"; if (err == file_access_error::mDecisions_error) {
aout(self) << "Check mDecisions File For Correctness";
} else {
aout(self) << "File Access Error: " << to_string(err) << "No Handling Implemented\n";
}
for (auto GRU : self->state.gru_container.gru_list) { for (auto GRU : self->state.gru_container.gru_list) {
self->send_exit(GRU->getGRUActor(), exit_reason::user_shutdown); self->send_exit(GRU->getGRUActor(), exit_reason::user_shutdown);
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment