Iber model

Monday, September 16, 2024     [ login ]

Forums

Borrar elementos secos

Enrique Escolano
01/02/2024 16:09:00
Borrar elementos secos
Ese fichero delete_dry_elements.bch efectivamente lo escribe el programa de cálculo, decidiendo según el resultado calculado que elementos (de preproceso) 'se pueden borrar'

No tengo claro que elementos considera 'secos' el cálculo, pero creo que podrían determinarse esos elementos
en postproceso a partir del resultado con un proc como este: (por si es util lo añado para la próxima version de Iber en Iber.tcl)

proc Iber::GetDryElementIds { {threshold 0.01}} {
  set result_name {Depth (m)}
  set analysis Hydraulic
  set result_component 0
  set all_steps [GiD_Info postprocess get all_steps $analysis]
  foreach result_step $all_steps {
    set data [GiD_Result get -ignore_no_result -array [list $result_name $analysis $result_step]]
    set ids [lindex [lindex $data 3] 0]
    set values_component [lindex [lindex [lindex $data 3] 1] $result_component]
    foreach id $ids value $values_component {
      if { $value>$threshold } {
        incr wet_counter($id)
      }
    }
  }
  set element_ids_wet [objarray new intarray -values [lsort -integer [array names wet_counter]]]
  set element_ids_dry [objarray substraction -sorted [GiD_Mesh list element] $element_ids_wet]
  return $element_ids_dry
}

y se podrían destruir esos elementos con algo como esto escrito en la línea inferior
-np- GiD_Mesh delete element [Iber::GetDryElementIds 0.01]

 Borrar elementos secos   Pascual Lite Martínez 25/01/2024 10:12
         Borrar elementos secos   Pascual Lite Martínez 26/01/2024 10:39
         Borrar elementos secos   Enrique Escolano 01/02/2024 16:09
                 Borrar elementos secos   Pascual Lite Martínez 05/02/2024 08:40