예제 #1
0
파일: obs_vector.c 프로젝트: Ensembles/ert
static bool obs_vector_has_vector_data( const obs_vector_type * obs_vector , const bool_vector_type * active_mask , enkf_fs_type * fs) {
  int vec_size = bool_vector_size( active_mask );

  for (int iens = 0; iens < vec_size; iens++) {
    const enkf_config_node_type * data_config = obs_vector->config_node;
    if (bool_vector_iget( active_mask , iens )) {
      if (!enkf_config_node_has_vector(data_config , fs , iens)) {
        return false;
      }
    }
  }

  return true;
}
예제 #2
0
static bool obs_vector_has_vector_data( const obs_vector_type * obs_vector , const bool_vector_type * active_mask , enkf_fs_type * fs) {
  bool has_data = true;
  int iens = 0;

  while (true) {
    const enkf_config_node_type * data_config = obs_vector->config_node;
    if (bool_vector_iget( active_mask , iens )) {
      if (!enkf_config_node_has_vector(data_config , fs , iens , FORECAST)) {
        has_data = false;
        break;
      }
    }
    iens++;
    if (iens >= bool_vector_size( active_mask ))
      break;
  }

  return has_data;
}