1 def __select_data(reader, dataname=None):
3 keys = reader.GetProperty("FieldsTreeInfo")[::2]
4 # list all the names of arrays that can be seen (including their spatial discretization)
5 arr_name_with_dis = [elt.split("/")[-1] for elt in keys]
6 # list all the names of arrays (Equal to those in the MED File)
7 separator = reader.GetProperty("Separator").GetData()
8 arr_name = [elt.split(separator)[0] for elt in arr_name_with_dis]
9 for idx in range(len(keys)):
10 if arr_name[idx] == dataname:
11 reader.AllArrays = keys[idx]
17 def get_element_type(reader):
18 # Return 'P0', 'P1'...
19 separator = reader.GetProperty("Separator").GetData()
20 return reader.AllArrays[0].split(separator)[1]
23 def get_element_name(reader):
24 separator = reader.GetProperty("Separator").GetData()
25 return reader.AllArrays[0].split(separator)[0].split("/")[-1]
28 def load_mesh(med_filename, mesh_name=None):
30 reader = pvsimple.MEDReader(FileName=med_filename)
31 return __select_data(reader, mesh_name)
34 def load_field(med_filename, field_name=None):
36 reader = pvsimple.MEDReader(FileName=med_filename)
37 return __select_data(reader, field_name)