    

 ## On this page

  

 

 # test\_dvs\_python\_reader\_api

 Last update: 16.07.2025 

[Go to the documentation of this file.](test__dvs__python__reader__api_8py.xhtml)<a id="l00001" name="l00001"></a>[ 1](namespacetest__dvs__python__reader__api.xhtml) 

<a id="l00002" name="l00002"></a> 2 

<a id="l00003" name="l00003"></a> 3 

<a id="l00006" name="l00006"></a> 6 

<a id="l00007" name="l00007"></a> 7\# @cond Suppress Doxygen Warnings

<a id="l00008" name="l00008"></a> 8 

<a id="l00009" name="l00009"></a> 9 

<a id="l00010" name="l00010"></a> 10import dynamic_visualization_store as dvs

<a id="l00011" name="l00011"></a> 11import argparse

<a id="l00012" name="l00012"></a> 12 

<a id="l00013" name="l00013"></a> 13parser = argparse.ArgumentParser()

<a id="l00014" name="l00014"></a> 14parser.add_argument("-c", "--cache\_uri", help="Provide valid cache uri to read")

<a id="l00015" name="l00015"></a> 15 

<a id="l00016" name="l00016"></a> 16args = parser.parse_args()

<a id="l00017" name="l00017"></a> 17cache_uri = args.cache_uri 

<a id="l00018" name="l00018"></a> 18 

<a id="l00019" name="l00019"></a> 19 

<a id="l00020" name="l00020"></a> 20query = dvs.create_query_instance()

<a id="l00021" name="l00021"></a> 21 

<a id="l00022" name="l00022"></a> 22 

<a id="l00024" name="l00024"></a> 24 

<a id="l00025" name="l00025"></a> 25 

<a id="l00027" name="l00027"></a> 27 

<a id="l00028" name="l00028"></a> 28 

<a id="l00029" name="l00029"></a> 29 

<a id="l00030" name="l00030"></a> 30print("\\n\*\*\*\\n cache\_uri = ", cache_uri, "\\n\*\*\*")

<a id="l00031" name="l00031"></a> 31query.add_uri(cache_uri)

<a id="l00032" name="l00032"></a> 32 

<a id="l00033" name="l00033"></a> 33dataset_query = query.filter("/dataset.name/eq/dvsnode")

<a id="l00034" name="l00034"></a> 34print("\\n\*\*\*\\nSub Query Test\\n\*\*\*")

<a id="l00035" name="l00035"></a> 35numdatasets = dataset_query.get_num_datasets()

<a id="l00036" name="l00036"></a> 36print("\\n Number of datasets = ", numdatasets)

<a id="l00037" name="l00037"></a> 37for d in range(numdatasets):

<a id="l00038" name="l00038"></a> 38 dataset = query.get_dataset(d)

<a id="l00039" name="l00039"></a> 39 \#print(dir(datasetobj))

<a id="l00040" name="l00040"></a> 40 dataset_name = dataset.get_name()

<a id="l00041" name="l00041"></a> 41 dataset_unit_system = dataset.get_unit_system()

<a id="l00042" name="l00042"></a> 42 print(" Dataset Name: ", dataset_name)

<a id="l00043" name="l00043"></a> 43 print(" Unit System: ", dataset_unit_system)

<a id="l00044" name="l00044"></a> 44 num_ranks = dataset.get_num_ranks()

<a id="l00045" name="l00045"></a> 45 print(" Number of ranks: ", num_ranks)

<a id="l00046" name="l00046"></a> 46 ranks = dataset.get_ranks()

<a id="l00047" name="l00047"></a> 47 for r in range(num_ranks):

<a id="l00048" name="l00048"></a> 48 print(" Rank: ", ranks[r])

<a id="l00049" name="l00049"></a> 49 num_chunks = dataset.get_num_chunks_per_rank()

<a id="l00050" name="l00050"></a> 50 print(" Number of chunks per rank: ", num_chunks)

<a id="l00051" name="l00051"></a> 51 chunks = dataset.get_chunks_per_rank()

<a id="l00052" name="l00052"></a> 52 for c in range(num_chunks):

<a id="l00053" name="l00053"></a> 53 print(" Chunk: ", chunks[c])

<a id="l00054" name="l00054"></a> 54 num_parts = dataset.get_num_parts()

<a id="l00055" name="l00055"></a> 55 print(" Num Parts: ", num_parts)

<a id="l00056" name="l00056"></a> 56 for p in range(num_parts):

<a id="l00057" name="l00057"></a> 57 part = dataset.get_part(p)

<a id="l00058" name="l00058"></a> 58 print(" Part Name: ", part.get_name())

<a id="l00059" name="l00059"></a> 59 num_plots = dataset.get_num_plots()

<a id="l00060" name="l00060"></a> 60 print(" Number of plots: ", num_plots)

<a id="l00061" name="l00061"></a> 61 for p in range(num_plots):

<a id="l00062" name="l00062"></a> 62 plot = dataset.get_plot(p)

<a id="l00063" name="l00063"></a> 63 print(" Plot: ", plot.get_name())

<a id="l00064" name="l00064"></a> 64 num_vars = dataset.get_num_variables()

<a id="l00065" name="l00065"></a> 65 print(" Num variables: ", num_vars)

<a id="l00066" name="l00066"></a> 66 for v in range(num_vars):

<a id="l00067" name="l00067"></a> 67 var = dataset.get_variable(v) 

<a id="l00068" name="l00068"></a> 68 print(" Var Name: ", var.get_name()) 

<a id="l00069" name="l00069"></a> 69part_query = dataset_query.filter("/part.name/eq/volume-volume")

<a id="l00070" name="l00070"></a> 70num_mesh_chunks = part_query.get_num_mesh_chunks()

<a id="l00071" name="l00071"></a> 71print(" Num mesh chunks = ", num_mesh_chunks)

<a id="l00072" name="l00072"></a> 72 

<a id="l00073" name="l00073"></a> 73for m in range(num_mesh_chunks):

<a id="l00074" name="l00074"></a> 74 mesh_chunk = part_query.get_mesh_chunk(m)

<a id="l00075" name="l00075"></a> 75 \#print(dir(mesh\_chunk))

<a id="l00076" name="l00076"></a> 76 if isinstance(mesh_chunk, dvs.IMeshChunkObject):

<a id="l00077" name="l00077"></a> 77 mesh_type = mesh_chunk.get_type()

<a id="l00078" name="l00078"></a> 78 part = mesh_chunk.get_object()

<a id="l00079" name="l00079"></a> 79 time = mesh_chunk.get_time()

<a id="l00080" name="l00080"></a> 80 rank = mesh_chunk.get_rank()

<a id="l00081" name="l00081"></a> 81 chunk = mesh_chunk.get_chunk()

<a id="l00082" name="l00082"></a> 82 coord_hash = mesh_chunk.get_hash()

<a id="l00083" name="l00083"></a> 83 coord_size = 0

<a id="l00084" name="l00084"></a> 84 coord_interleaved = list()

<a id="l00085" name="l00085"></a> 85 x_coords = list()

<a id="l00086" name="l00086"></a> 86 y_coords = list()

<a id="l00087" name="l00087"></a> 87 z_coords = list()

<a id="l00088" name="l00088"></a> 88 local_ijk_min = list()

<a id="l00089" name="l00089"></a> 89 local_ijk_max = list()

<a id="l00090" name="l00090"></a> 90 global_ijk_max = list()

<a id="l00091" name="l00091"></a> 91 \# Parallele MeshType

<a id="l00092" name="l00092"></a> 92 origin = list()

<a id="l00093" name="l00093"></a> 93 dir_vec_i = list()

<a id="l00094" name="l00094"></a> 94 dir_vec_j = list()

<a id="l00095" name="l00095"></a> 95 dir_vec_k = list()

<a id="l00096" name="l00096"></a> 96 ivals = list()

<a id="l00097" name="l00097"></a> 97 jvals = list()

<a id="l00098" name="l00098"></a> 98 kvals = list()

<a id="l00099" name="l00099"></a> 99 print("\\n\*\*\*\\n Mesh Chunk: ", m, "\\n\*\*\*") 

<a id="l00100" name="l00100"></a> 100 print(" Type:{0}, Part:{1}, Rank:{2}, Chunk:{3}, Time:{4}, Hash:{5}".format(mesh_type, part.get_name(), rank, chunk, time, coord_hash))

<a id="l00101" name="l00101"></a> 101 if mesh_type == dvs.MESHCHUNK_UNSTRUCTURED:

<a id="l00102" name="l00102"></a> 102 \# Get tuple containing x,y,z coords list

<a id="l00103" name="l00103"></a> 103 result = mesh_chunk.get_coords()

<a id="l00104" name="l00104"></a> 104 coord_size, x_list, y_list, z_list = result

<a id="l00105" name="l00105"></a> 105 x_coords = list(x_list)

<a id="l00106" name="l00106"></a> 106 y_coords = list(y_list)

<a id="l00107" name="l00107"></a> 107 z_coords = list(z_list)

<a id="l00108" name="l00108"></a> 108 print(" \\nFirst 3 coordinates out of : ", coord_size)

<a id="l00109" name="l00109"></a> 109 for c in range(3):

<a id="l00110" name="l00110"></a> 110 print(" X: {0}, Y: {1}, Z: {2}".format(x_coords[c], y_coords[c], z_coords[c]))

<a id="l00111" name="l00111"></a> 111 \# Get interleaved coords

<a id="l00112" name="l00112"></a> 112 coord_interleaved = mesh_chunk.get_coords_interleaved()

<a id="l00113" name="l00113"></a> 113 coord_size, coords = coord_interleaved

<a id="l00114" name="l00114"></a> 114 print(" \\n No. Interleaved coordinates :", coord_size)

<a id="l00115" name="l00115"></a> 115 elif mesh_type == dvs.MESHCHUNK_CURVILIEAR:

<a id="l00116" name="l00116"></a> 116 \# Get Tuple containing localIJKMin, localIJKMax, globalIJKMax, x\_coords, y\_coords, z\_coords

<a id="l00117" name="l00117"></a> 117 coords = mesh_chunk.get_coords_curv()

<a id="l00118" name="l00118"></a> 118 coord_size, local_ijk_min_list, local_ijk_max_list, global_ijk_max_list, x_coords_list, y_coords_list, z_coords_list = coords

<a id="l00119" name="l00119"></a> 119 print(" \\nCurvilinear coordinates component size :", coord_size)

<a id="l00120" name="l00120"></a> 120 local_ijk_min = list(local_ijk_min_list)

<a id="l00121" name="l00121"></a> 121 local_ijk_max = list(local_ijk_max_list)

<a id="l00122" name="l00122"></a> 122 global_ijk_max = list(global_ijk_max)

<a id="l00123" name="l00123"></a> 123 x_coords = list(x_coords_list)

<a id="l00124" name="l00124"></a> 124 y_coords = list(y_coords_list)

<a id="l00125" name="l00125"></a> 125 z_coords = list(z_coords_list)

<a id="l00126" name="l00126"></a> 126 \# Get Interleaved Coordinates

<a id="l00127" name="l00127"></a> 127 coords = mesh_chunk.get_coords_curv_interleaved()

<a id="l00128" name="l00128"></a> 128 coord_size, local_ijk_min_list, local_ijk_max_list, global_ijk_max_list, coords_interleaved_list = coords

<a id="l00129" name="l00129"></a> 129 print(" \\nNo. cuvilinear coordinates : ", coord_size)

<a id="l00130" name="l00130"></a> 130 local_ijk_min = list(local_ijk_min_list)

<a id="l00131" name="l00131"></a> 131 local_ijk_max = list(local_ijk_max_list)

<a id="l00132" name="l00132"></a> 132 global_ijk_max = list(global_ijk_max)

<a id="l00133" name="l00133"></a> 133 coord_interleaved = list(coords_interleaved_list)

<a id="l00134" name="l00134"></a> 134 elif mesh_type == dvs.MESHCHUNK_PARALLELEPIPED:

<a id="l00135" name="l00135"></a> 135 \# Get Tuple

<a id="l00136" name="l00136"></a> 136 \# origin, dir\_vec\_i, dir\_vec\_j, dir\_vec\_k, local\_ijk\_max, local\_ijk\_min, global\_ijk\_max, ivals, jvals, kvals 

<a id="l00137" name="l00137"></a> 137 coords = mesh_chunk.get_coords_parallele()

<a id="l00138" name="l00138"></a> 138 origin_list, dir_vec_i_list, dir_vec_j_list, dir_vec_k_list, local_ijk_max_list, local_ijk_min_list, global_ijk_max_list, ivals_list, jvals_list, kvals_list = coords

<a id="l00139" name="l00139"></a> 139 origin = list(origin_list)

<a id="l00140" name="l00140"></a> 140 dir_vec_i = list(dir_vec_i_list)

<a id="l00141" name="l00141"></a> 141 dir_vec_j = list(dir_vec_j_list)

<a id="l00142" name="l00142"></a> 142 dir_vec_k = list(dir_vec_k_list)

<a id="l00143" name="l00143"></a> 143 local_ijk_max = list(local_ijk_max_list)

<a id="l00144" name="l00144"></a> 144 local_ijk_min = list(local_ijk_min_list)

<a id="l00145" name="l00145"></a> 145 global_ijk_max = list(global_ijk_max_list)

<a id="l00146" name="l00146"></a> 146 ivals = list(ivals_list)

<a id="l00147" name="l00147"></a> 147 jvals = list(jvals_list)

<a id="l00148" name="l00148"></a> 148 kvals = list(kvals_list)

<a id="l00149" name="l00149"></a> 149 print(" Origin : ", origin)

<a id="l00150" name="l00150"></a> 150 print(" DirVecI: ", dir_vec_i)

<a id="l00151" name="l00151"></a> 151 print(" DirVecJ: ", dir_vec_j)

<a id="l00152" name="l00152"></a> 152 print(" DirVecK: ", dir_vec_k)

<a id="l00153" name="l00153"></a> 153 print(" LocalIJKMax : ", local_ijk_max)

<a id="l00154" name="l00154"></a> 154 print(" LocalIJKMin : ", local_ijk_min)

<a id="l00155" name="l00155"></a> 155 print(" GlobalIJKMax: ", global_ijk_max)

<a id="l00156" name="l00156"></a> 156 

<a id="l00157" name="l00157"></a> 157 num_nodal_vars = mesh_chunk.get_num_variables()

<a id="l00158" name="l00158"></a> 158 print("\\n Num Nodal Var: ", num_nodal_vars)

<a id="l00159" name="l00159"></a> 159 for nv in range(num_nodal_vars):

<a id="l00160" name="l00160"></a> 160 var = mesh_chunk.get_variable(nv)

<a id="l00161" name="l00161"></a> 161 \#print(dir(var))

<a id="l00162" name="l00162"></a> 162 if isinstance(var, dvs.IVarObject):

<a id="l00163" name="l00163"></a> 163 var_loc = var.get_var_location()

<a id="l00164" name="l00164"></a> 164 var_name = var.get_name()

<a id="l00165" name="l00165"></a> 165 if var_loc == dvs.LOCATION_NODE:

<a id="l00166" name="l00166"></a> 166 \# Get Hash by var\_index

<a id="l00167" name="l00167"></a> 167 \#nodal\_var\_hash\_size\_by\_index = mesh\_chunk.get\_var\_hash\_size\_by\_var\_index(nv)

<a id="l00168" name="l00168"></a> 168 \#nodal\_var\_hash\_size\_by\_def = mesh\_chunk.get\_var\_hash\_size\_by\_var\_def(var)

<a id="l00169" name="l00169"></a> 169 \#nodal\_var\_hash\_by\_index = mesh\_chunk.get\_var\_hash\_by\_var\_index(nv, nodal\_var\_hash\_size\_by\_index)

<a id="l00170" name="l00170"></a> 170 \#nodal\_var\_hash\_by\_def = mesh\_chunk.get\_var\_hash\_by\_var\_def(var, nodal\_var\_hash\_size\_by\_def)

<a id="l00171" name="l00171"></a> 171 \#if nodal\_var\_hash\_by\_index:

<a id="l00172" name="l00172"></a> 172 \# print("Nodal VAR Hash by Index: ", nodal\_var\_hash\_by\_index)

<a id="l00173" name="l00173"></a> 173 \#if nodal\_var\_hash\_by\_index != nodal\_var\_hash\_by\_def:

<a id="l00174" name="l00174"></a> 174 \# print("Nodal var hash by var index is different that Nodal var hash by def")

<a id="l00175" name="l00175"></a> 175 result = mesh_chunk.get_variable_data(nv)

<a id="l00176" name="l00176"></a> 176 num_values, var_values = result

<a id="l00177" name="l00177"></a> 177 print(" Var Name: {0}, Nodal values: {1}, Mesh Chunk: {2}".format(var_name, num_values, m))

<a id="l00178" name="l00178"></a> 178 print(" First 10 Values: ")

<a id="l00179" name="l00179"></a> 179 for n in range(10):

<a id="l00180" name="l00180"></a> 180 print(" ", var_values[n])

<a id="l00181" name="l00181"></a> 181 \# Element Blocks

<a id="l00182" name="l00182"></a> 182 num_elem_blocks = mesh_chunk.get_num_element_blocks()

<a id="l00183" name="l00183"></a> 183 print("\\n Num Element Blocks: ", num_elem_blocks)

<a id="l00184" name="l00184"></a> 184 

<a id="l00185" name="l00185"></a> 185 element_block_types = mesh_chunk.get_element_block_types()

<a id="l00186" name="l00186"></a> 186 for et in element_block_types:

<a id="l00187" name="l00187"></a> 187 elem_block = mesh_chunk.get_element_block_by_type(et)

<a id="l00188" name="l00188"></a> 188 num_elements = 0

<a id="l00189" name="l00189"></a> 189 conn_size = 0

<a id="l00190" name="l00190"></a> 190 faces_per_elem_size = 0

<a id="l00191" name="l00191"></a> 191 nodes_per_face_size = 0

<a id="l00192" name="l00192"></a> 192 indices_size = 0

<a id="l00193" name="l00193"></a> 193 if isinstance(elem_block, dvs.IElemBlockObject):

<a id="l00194" name="l00194"></a> 194 match elem_block.get_element_type():

<a id="l00195" name="l00195"></a> 195 case dvs.ELEMTYPE_TETRAHEDRON | dvs.ELEMTYPE_TRIANGLE | dvs.ELEMTYPE_QUADRANGLE | dvs.ELEMTYPE_HEXAHEDRON: 

<a id="l00196" name="l00196"></a> 196 num_elements = elem_block.get_num_elements()

<a id="l00197" name="l00197"></a> 197 result = elem_block.get_connectivity()

<a id="l00198" name="l00198"></a> 198 connsize, connectivity = result

<a id="l00199" name="l00199"></a> 199 print(" Element Type: Standard")

<a id="l00200" name="l00200"></a> 200 print(" Connectivity Size: ", connsize)

<a id="l00201" name="l00201"></a> 201 for s in range(10):

<a id="l00202" name="l00202"></a> 202 print(" ",connectivity[s])

<a id="l00203" name="l00203"></a> 203 case dvs.ELEMTYPE_N_SIDED_POLYGON | dvs.ELEMTYPE_N_SIDED_POLYGON_GHOST:

<a id="l00204" name="l00204"></a> 204 print(" Element Type : ", elem_block.get_element_type())

<a id="l00205" name="l00205"></a> 205 num_elements = elem_block.get_num_elements()

<a id="l00206" name="l00206"></a> 206 print(" Num Elements : ", num_elements)

<a id="l00207" name="l00207"></a> 207 connectivity = elem_block.get_connectivity_polygon()

<a id="l00208" name="l00208"></a> 208 nodes_per_polygon_size, nodes_per_polygon_list, indices_size, indices_list = connectivity

<a id="l00209" name="l00209"></a> 209 print(" Nodes per Polygon Size: ", nodes_per_polygon_size)

<a id="l00210" name="l00210"></a> 210 print(" Polygon Indices Size : ", indices_size)

<a id="l00211" name="l00211"></a> 211 nodes_per_polygon = list(nodes_per_polygon_list)

<a id="l00212" name="l00212"></a> 212 polygon_indices = list(indices_list)

<a id="l00213" name="l00213"></a> 213 \#print(" Nodes Per Polygon: ")

<a id="l00214" name="l00214"></a> 214 \#for np in nodes\_per\_polygon:

<a id="l00215" name="l00215"></a> 215 \# print(" ", np)

<a id="l00216" name="l00216"></a> 216 \#print(" Polygon Indices : ")

<a id="l00217" name="l00217"></a> 217 \#for pi in polygon\_indices:

<a id="l00218" name="l00218"></a> 218 \# print(" ", pi)

<a id="l00219" name="l00219"></a> 219 case dvs.ELEMTYPE_CONVEX_POLYHEDRON | dvs.ELEMTYPE_CONVEX_POLYHEDRON_GHOST:

<a id="l00220" name="l00220"></a> 220 num_element = elem_block.get_num_elements()

<a id="l00221" name="l00221"></a> 221 print(" Element Type: POLYHEDRON", "Number of elements: ", num_element)

<a id="l00222" name="l00222"></a> 222 \# Get connectivity Polyhedral

<a id="l00223" name="l00223"></a> 223 conn_polyhedral = elem_block.get_connectivity_polyhedral()

<a id="l00224" name="l00224"></a> 224 faces_per_elem_size, faces_per_elem_list, nodes_per_face_size, nodes_per_face_list, indices_size, conn_indices_list = conn_polyhedral

<a id="l00225" name="l00225"></a> 225 print(" Faces Per Elem Size :",faces_per_elem_size)

<a id="l00226" name="l00226"></a> 226 print(" Nodes Per Face Size :",nodes_per_face_size)

<a id="l00227" name="l00227"></a> 227 print(" Conn Indices Size :",indices_size)

<a id="l00228" name="l00228"></a> 228 faces_per_elem = list(faces_per_elem_list)

<a id="l00229" name="l00229"></a> 229 nodes_per_face = list(nodes_per_face_list)

<a id="l00230" name="l00230"></a> 230 conn_indices = list(conn_indices_list)

<a id="l00231" name="l00231"></a> 231 \#print(" Faces Per Elem: ")

<a id="l00232" name="l00232"></a> 232 \#for fp in faces\_per\_elem:

<a id="l00233" name="l00233"></a> 233 \# print(" ", fp)

<a id="l00234" name="l00234"></a> 234 \#print(" Nodes Per Face: ")

<a id="l00235" name="l00235"></a> 235 \#for nf in nodes\_per\_face:

<a id="l00236" name="l00236"></a> 236 \# print(" ", nf) 

<a id="l00237" name="l00237"></a> 237 \#print(" Conn Indices : ")

<a id="l00238" name="l00238"></a> 238 \#for ci in conn\_indices:

<a id="l00239" name="l00239"></a> 239 \# print(" ", ci)

<a id="l00240" name="l00240"></a> 240 case dvs.ELEMTYPE_STRUCTURED:

<a id="l00241" name="l00241"></a> 241 num_elements = elem_block.get_num_elements()

<a id="l00242" name="l00242"></a> 242 nodes_per_elem = elem_block.get_nodes_per_element()

<a id="l00243" name="l00243"></a> 243 print(" Structured Element: Type:{0}, NPE:{1}".format(elem_block.get_element_type(), nodes_per_elem))

<a id="l00244" name="l00244"></a> 244 case dvs.ELEMTYPE_UNDEFINED | dvs.ELEMTYPE_UNDEFINED_PARALLELEPIPED | dvs.ELEMTYPE_UNDEFINED_CURVILINEAR:

<a id="l00245" name="l00245"></a> 245 print(" Undefined element type found")

<a id="l00246" name="l00246"></a> 246 case _:

<a id="l00247" name="l00247"></a> 247 print(" Default Element Type")

<a id="l00248" name="l00248"></a> 248 num_elements = elem_block.get_num_elements()

<a id="l00249" name="l00249"></a> 249 nodes_per_elem = elem_block.get_nodes_per_elem()

<a id="l00250" name="l00250"></a> 250 \# Get Connectivity List

<a id="l00251" name="l00251"></a> 251 result = elem_block.get_connectivity()

<a id="l00252" name="l00252"></a> 252 connsize, connectivity = result

<a id="l00253" name="l00253"></a> 253 \#print(" Print Connectivity: ")

<a id="l00254" name="l00254"></a> 254 \#for i in connectivity:

<a id="l00255" name="l00255"></a> 255 \# print(" ", i)

<a id="l00256" name="l00256"></a> 256print("\\n\*\*\*\\nSub Queries Finished\\n\*\*\*")

<a id="l00257" name="l00257"></a> 257 

<a id="l00258" name="l00258"></a> 258 

<a id="l00259" name="l00259"></a> 259numtimesteps = query.get_num_timesteps()

<a id="l00260" name="l00260"></a> 260print("\\n\*\*\*\\n Num timesteps = ", numtimesteps, "\\n\*\*\*")

<a id="l00261" name="l00261"></a> 261\# Get timestep objects

<a id="l00262" name="l00262"></a> 262timesteps = query.get_timesteps()

<a id="l00263" name="l00263"></a> 263for time in timesteps:

<a id="l00264" name="l00264"></a> 264 print(" Time = ", time)

<a id="l00265" name="l00265"></a> 265 

<a id="l00266" name="l00266"></a> 266 

<a id="l00267" name="l00267"></a> 267numranks = query.get_num_ranks()

<a id="l00268" name="l00268"></a> 268print("\\n\*\*\*\\n Number of Ranks: ", numranks, "\\n\*\*\*")

<a id="l00269" name="l00269"></a> 269\#Get the unique ranks

<a id="l00270" name="l00270"></a> 270ranks = query.get_ranks()

<a id="l00271" name="l00271"></a> 271for rank in ranks:

<a id="l00272" name="l00272"></a> 272 print(" Rank : ", rank) 

<a id="l00273" name="l00273"></a> 273 

<a id="l00274" name="l00274"></a> 274 

<a id="l00275" name="l00275"></a> 275numchunks_per_rank = query.get_num_chunks_per_rank()

<a id="l00276" name="l00276"></a> 276print("\\n\*\*\*\\n Num Chunks Per Rank = ", numchunks_per_rank, "\\n\*\*\*")

<a id="l00277" name="l00277"></a> 277\#Get chunks per rank

<a id="l00278" name="l00278"></a> 278\#global\_chunk\_max = \[None\]\*numchunks\_per\_rank

<a id="l00279" name="l00279"></a> 279global_chunks = query.get_chunks_per_rank()

<a id="l00280" name="l00280"></a> 280for chunk in global_chunks:

<a id="l00281" name="l00281"></a> 281 print(" Chunk: ", chunk)

<a id="l00282" name="l00282"></a> 282 

<a id="l00283" name="l00283"></a> 283 

<a id="l00284" name="l00284"></a> 284numparts = query.get_num_parts()

<a id="l00285" name="l00285"></a> 285print("\\n\*\*\*\\n Number of parts = ", numparts, "\\n\*\*\*")

<a id="l00286" name="l00286"></a> 286for np in range(numparts):

<a id="l00287" name="l00287"></a> 287 part = query.get_part(np)

<a id="l00288" name="l00288"></a> 288 print(" Part {0}:{1} ".format(np+1, part.get_name()))

<a id="l00289" name="l00289"></a> 289 

<a id="l00290" name="l00290"></a> 290 

<a id="l00291" name="l00291"></a> 291numplots = query.get_num_plots()

<a id="l00292" name="l00292"></a> 292print("\\n\*\*\*\\n NumPlots = ", numplots, "\\n\*\*\*")

<a id="l00293" name="l00293"></a> 293for pl in range(numplots):

<a id="l00294" name="l00294"></a> 294 plot = query.get_plot(pl)

<a id="l00295" name="l00295"></a> 295 print(" Plot {0}:{1}".format(pl+1, plot.get_name()))

<a id="l00296" name="l00296"></a> 296 

<a id="l00297" name="l00297"></a> 297 

<a id="l00298" name="l00298"></a> 298num_vars = query.get_num_variables()

<a id="l00299" name="l00299"></a> 299if num_vars &gt; 0:

<a id="l00300" name="l00300"></a> 300 for nv in range(num_vars):

<a id="l00301" name="l00301"></a> 301 var = query.get_variable(nv)

<a id="l00302" name="l00302"></a> 302 var_name = var.get_name()

<a id="l00303" name="l00303"></a> 303 if isinstance(var, dvs.IVarObject) and var.get_var_location() == dvs.LOCATION_CASE:

<a id="l00304" name="l00304"></a> 304 print(" CASE Variable : ", var.get_name())

<a id="l00305" name="l00305"></a> 305 dataset = query.get_dataset()

<a id="l00306" name="l00306"></a> 306 dataset_name = dataset.get_name()

<a id="l00307" name="l00307"></a> 307 num_values = var.get_component_count_per_value()

<a id="l00308" name="l00308"></a> 308 for time in timesteps:

<a id="l00309" name="l00309"></a> 309 var_values = dataset.get_variable_data(dataset, var, time)

<a id="l00310" name="l00310"></a> 310 print("\\nDataset:{0}, Var{1}, Time:{2}, Value{3}".format(dataset_name, var_name, time, var_values(0)))

<a id="l00311" name="l00311"></a> 311 

<a id="l00312" name="l00312"></a> 312 

<a id="l00313" name="l00313"></a> 313numvars = query.get_num_variables()

<a id="l00314" name="l00314"></a> 314\#print("\\n\*\*\*\\n Number of vars = ", numvars, "\\n\*\*\*")

<a id="l00315" name="l00315"></a> 315for v in range(numvars):

<a id="l00316" name="l00316"></a> 316 \#Get IVar Object

<a id="l00317" name="l00317"></a> 317 varobj = query.get_variable(v)

<a id="l00318" name="l00318"></a> 318 \#print(dir(varobj))

<a id="l00319" name="l00319"></a> 319 var_name = varobj.get_name()

<a id="l00320" name="l00320"></a> 320 var_location = varobj.get_var_location()

<a id="l00321" name="l00321"></a> 321 if isinstance(var, dvs.IVarObject) and var_location == dvs.LOCATION_PART:

<a id="l00322" name="l00322"></a> 322 dataset = varobj.get_dataset()

<a id="l00323" name="l00323"></a> 323 dataset_name = dataset.get_name()

<a id="l00324" name="l00324"></a> 324 numparts = dataset.get_num_parts()

<a id="l00325" name="l00325"></a> 325 num_vals = varobj.get_component_count_per_value()

<a id="l00326" name="l00326"></a> 326 for time in timesteps:

<a id="l00327" name="l00327"></a> 327 for p in range(numparts):

<a id="l00328" name="l00328"></a> 328 part = dataset.get_part(p)

<a id="l00329" name="l00329"></a> 329 part_name = part.get_name()

<a id="l00330" name="l00330"></a> 330 var_values = query.get_variable_data(part, varobj, time)

<a id="l00331" name="l00331"></a> 331 print("\\n Dataset:{0}, Part{1}, Var{2}, Time:{3}, Value{4}".format(dataset_name, part_name, var_name, time, var_values(0)))

<a id="l00332" name="l00332"></a> 332 

<a id="l00333" name="l00333"></a> 333 

<a id="l00334" name="l00334"></a> 334print("\\n--------------------------------")

<a id="l00335" name="l00335"></a> 335print(" Listing All Datasets for Query")

<a id="l00336" name="l00336"></a> 336print("\\n--------------------------------")

<a id="l00337" name="l00337"></a> 337numdatasets = query.get_num_datasets()

<a id="l00338" name="l00338"></a> 338print("\\n Number of datasets = ", numdatasets)

<a id="l00339" name="l00339"></a> 339 

<a id="l00340" name="l00340"></a> 340for d in range(numdatasets):

<a id="l00341" name="l00341"></a> 341 dataset = query.get_dataset(d)

<a id="l00342" name="l00342"></a> 342 \#print(dir(datasetobj))

<a id="l00343" name="l00343"></a> 343 dataset_name = dataset.get_name()

<a id="l00344" name="l00344"></a> 344 dataset_unit_system = dataset.get_unit_system()

<a id="l00345" name="l00345"></a> 345 print(" Dataset Name: ", dataset_name)

<a id="l00346" name="l00346"></a> 346 print(" Unit System: ", dataset_unit_system)

<a id="l00347" name="l00347"></a> 347 num_ranks = dataset.get_num_ranks()

<a id="l00348" name="l00348"></a> 348 print(" Number of ranks: ", num_ranks)

<a id="l00349" name="l00349"></a> 349 ranks = dataset.get_ranks()

<a id="l00350" name="l00350"></a> 350 for r in range(num_ranks):

<a id="l00351" name="l00351"></a> 351 print(" Rank: ", ranks[r])

<a id="l00352" name="l00352"></a> 352 num_chunks = dataset.get_num_chunks_per_rank()

<a id="l00353" name="l00353"></a> 353 print(" Number of chunks per rank: ", num_chunks)

<a id="l00354" name="l00354"></a> 354 chunks = dataset.get_chunks_per_rank()

<a id="l00355" name="l00355"></a> 355 for c in range(num_chunks):

<a id="l00356" name="l00356"></a> 356 print(" Chunk: ", chunks[c])

<a id="l00357" name="l00357"></a> 357 num_parts = dataset.get_num_parts()

<a id="l00358" name="l00358"></a> 358 print(" Num Parts: ", num_parts)

<a id="l00359" name="l00359"></a> 359 for p in range(num_parts):

<a id="l00360" name="l00360"></a> 360 part = dataset.get_part(p)

<a id="l00361" name="l00361"></a> 361 metadata = part.get_metadata()

<a id="l00362" name="l00362"></a> 362 print(" Metadata:", metadata)

<a id="l00363" name="l00363"></a> 363 print(" Part Name: ", part.get_name())

<a id="l00364" name="l00364"></a> 364 num_plots = dataset.get_num_plots()

<a id="l00365" name="l00365"></a> 365 print(" Number of plots: ", num_plots)

<a id="l00366" name="l00366"></a> 366 for p in range(num_plots):

<a id="l00367" name="l00367"></a> 367 plot = dataset.get_plot(p)

<a id="l00368" name="l00368"></a> 368 metadata = plot.get_metadata()

<a id="l00369" name="l00369"></a> 369 print(" Metadata", metadata)

<a id="l00370" name="l00370"></a> 370 print(" Plot: ", plot.get_name())

<a id="l00371" name="l00371"></a> 371 num_vars = dataset.get_num_variables()

<a id="l00372" name="l00372"></a> 372 print(" Num variables: ", num_vars)

<a id="l00373" name="l00373"></a> 373 for v in range(num_vars):

<a id="l00374" name="l00374"></a> 374 var = dataset.get_variable(v) 

<a id="l00375" name="l00375"></a> 375 metadata = var.get_metadata()

<a id="l00376" name="l00376"></a> 376 print(" Metadata: ", metadata)

<a id="l00377" name="l00377"></a> 377 print(" Var Name: ", var.get_name()) 

<a id="l00378" name="l00378"></a> 378 

<a id="l00379" name="l00379"></a> 379 

<a id="l00380" name="l00380"></a> 380 

<a id="l00381" name="l00381"></a> 381 

<a id="l00382" name="l00382"></a> 382print("------------------------------------")

<a id="l00383" name="l00383"></a> 383print(" Listing All Mesh Chunks for Query")

<a id="l00384" name="l00384"></a> 384print("------------------------------------")

<a id="l00385" name="l00385"></a> 385num_mesh_chunks = query.get_num_mesh_chunks()

<a id="l00386" name="l00386"></a> 386print(" Num mesh chunks = ", num_mesh_chunks)

<a id="l00387" name="l00387"></a> 387 

<a id="l00388" name="l00388"></a> 388for m in range(num_mesh_chunks):

<a id="l00389" name="l00389"></a> 389 mesh_chunk = query.get_mesh_chunk(m)

<a id="l00390" name="l00390"></a> 390 \#print(dir(mesh\_chunk))

<a id="l00391" name="l00391"></a> 391 if isinstance(mesh_chunk, dvs.IMeshChunkObject):

<a id="l00392" name="l00392"></a> 392 mesh_type = mesh_chunk.get_type()

<a id="l00393" name="l00393"></a> 393 part = mesh_chunk.get_object()

<a id="l00394" name="l00394"></a> 394 time = mesh_chunk.get_time()

<a id="l00395" name="l00395"></a> 395 rank = mesh_chunk.get_rank()

<a id="l00396" name="l00396"></a> 396 chunk = mesh_chunk.get_chunk()

<a id="l00397" name="l00397"></a> 397 coord_hash = mesh_chunk.get_hash()

<a id="l00398" name="l00398"></a> 398 coord_size = 0

<a id="l00399" name="l00399"></a> 399 coord_interleaved = list()

<a id="l00400" name="l00400"></a> 400 x_coords = list()

<a id="l00401" name="l00401"></a> 401 y_coords = list()

<a id="l00402" name="l00402"></a> 402 z_coords = list()

<a id="l00403" name="l00403"></a> 403 local_ijk_min = list()

<a id="l00404" name="l00404"></a> 404 local_ijk_max = list()

<a id="l00405" name="l00405"></a> 405 global_ijk_max = list()

<a id="l00406" name="l00406"></a> 406 \# Parallele MeshType

<a id="l00407" name="l00407"></a> 407 origin = list()

<a id="l00408" name="l00408"></a> 408 dir_vec_i = list()

<a id="l00409" name="l00409"></a> 409 dir_vec_j = list()

<a id="l00410" name="l00410"></a> 410 dir_vec_k = list()

<a id="l00411" name="l00411"></a> 411 ivals = list()

<a id="l00412" name="l00412"></a> 412 jvals = list()

<a id="l00413" name="l00413"></a> 413 kvals = list()

<a id="l00414" name="l00414"></a> 414 print("\\n\*\*\*\\n Mesh Chunk: ", m, "\\n\*\*\*") 

<a id="l00415" name="l00415"></a> 415 print(" Type:{0}, Part:{1}, Rank:{2}, Chunk:{3}, Time:{4}, Hash:{5}".format(mesh_type, part.get_name(), rank, chunk, time, coord_hash))

<a id="l00416" name="l00416"></a> 416 if mesh_type == dvs.MESHCHUNK_UNSTRUCTURED:

<a id="l00417" name="l00417"></a> 417 \# Get tuple containing x,y,z coords list

<a id="l00418" name="l00418"></a> 418 result = mesh_chunk.get_coords()

<a id="l00419" name="l00419"></a> 419 coord_size, x_list, y_list, z_list = result

<a id="l00420" name="l00420"></a> 420 x_coords = list(x_list)

<a id="l00421" name="l00421"></a> 421 y_coords = list(y_list)

<a id="l00422" name="l00422"></a> 422 z_coords = list(z_list)

<a id="l00423" name="l00423"></a> 423 print(" \\nFirst 3 coordinates out of : ", coord_size)

<a id="l00424" name="l00424"></a> 424 for c in range(3):

<a id="l00425" name="l00425"></a> 425 print(" X: {0}, Y: {1}, Z: {2}".format(x_coords[c], y_coords[c], z_coords[c]))

<a id="l00426" name="l00426"></a> 426 \# Get interleaved coords

<a id="l00427" name="l00427"></a> 427 coord_interleaved = mesh_chunk.get_coords_interleaved()

<a id="l00428" name="l00428"></a> 428 coord_size, coords = coord_interleaved

<a id="l00429" name="l00429"></a> 429 print(" \\n No. Interleaved coordinates :", coord_size)

<a id="l00430" name="l00430"></a> 430 elif mesh_type == dvs.MESHCHUNK_CURVILIEAR:

<a id="l00431" name="l00431"></a> 431 \# Get Tuple containing localIJKMin, localIJKMax, globalIJKMax, x\_coords, y\_coords, z\_coords

<a id="l00432" name="l00432"></a> 432 coords = mesh_chunk.get_coords_curv()

<a id="l00433" name="l00433"></a> 433 coord_size, local_ijk_min_list, local_ijk_max_list, global_ijk_max_list, x_coords_list, y_coords_list, z_coords_list = coords

<a id="l00434" name="l00434"></a> 434 print(" \\nCurvilinear coordinates component size :", coord_size)

<a id="l00435" name="l00435"></a> 435 local_ijk_min = list(local_ijk_min_list)

<a id="l00436" name="l00436"></a> 436 local_ijk_max = list(local_ijk_max_list)

<a id="l00437" name="l00437"></a> 437 global_ijk_max = list(global_ijk_max)

<a id="l00438" name="l00438"></a> 438 x_coords = list(x_coords_list)

<a id="l00439" name="l00439"></a> 439 y_coords = list(y_coords_list)

<a id="l00440" name="l00440"></a> 440 z_coords = list(z_coords_list)

<a id="l00441" name="l00441"></a> 441 \# Get Interleaved Coordinates

<a id="l00442" name="l00442"></a> 442 coords = mesh_chunk.get_coords_curv()

<a id="l00443" name="l00443"></a> 443 print(" \\nNo. cuvilinear coordinates : ", coord_size)

<a id="l00444" name="l00444"></a> 444 coord_size, local_ijk_min_list, local_ijk_max_list, global_ijk_max_list, coords_interleaved_list = coords

<a id="l00445" name="l00445"></a> 445 local_ijk_min = list(local_ijk_min_list)

<a id="l00446" name="l00446"></a> 446 local_ijk_max = list(local_ijk_max_list)

<a id="l00447" name="l00447"></a> 447 global_ijk_max = list(global_ijk_max)

<a id="l00448" name="l00448"></a> 448 coord_interleaved = list(coords_interleaved_list)

<a id="l00449" name="l00449"></a> 449 elif mesh_type == dvs.MESHCHUNK_PARALLELEPIPED:

<a id="l00450" name="l00450"></a> 450 \# Get Tuple

<a id="l00451" name="l00451"></a> 451 \# origin, dir\_vec\_i, dir\_vec\_j, dir\_vec\_k, local\_ijk\_max, local\_ijk\_min, global\_ijk\_max, ivals, jvals, kvals 

<a id="l00452" name="l00452"></a> 452 coords = mesh_chunk.get_coords_parallele()

<a id="l00453" name="l00453"></a> 453 origin_list, dir_vec_i_list, dir_vec_j_list, dir_vec_k_list, local_ijk_max_list, local_ijk_min_list, global_ijk_max_list, ivals_list, jvals_list, kvals_list = coords

<a id="l00454" name="l00454"></a> 454 origin = list(origin_list)

<a id="l00455" name="l00455"></a> 455 dir_vec_i = list(dir_vec_i_list)

<a id="l00456" name="l00456"></a> 456 dir_vec_j = list(dir_vec_j_list)

<a id="l00457" name="l00457"></a> 457 dir_vec_k = list(dir_vec_k_list)

<a id="l00458" name="l00458"></a> 458 local_ijk_max = list(local_ijk_max_list)

<a id="l00459" name="l00459"></a> 459 local_ijk_min = list(local_ijk_min_list)

<a id="l00460" name="l00460"></a> 460 global_ijk_max = list(global_ijk_max_list)

<a id="l00461" name="l00461"></a> 461 ivals = list(ivals_list)

<a id="l00462" name="l00462"></a> 462 jvals = list(jvals_list)

<a id="l00463" name="l00463"></a> 463 kvals = list()

<a id="l00464" name="l00464"></a> 464 print(" Origin : ", origin)

<a id="l00465" name="l00465"></a> 465 print(" DirVecI: ", dir_vec_i)

<a id="l00466" name="l00466"></a> 466 print(" DirVecJ: ", dir_vec_j)

<a id="l00467" name="l00467"></a> 467 print(" DirVecK: ", dir_vec_k)

<a id="l00468" name="l00468"></a> 468 print(" LocalIJKMax : ", local_ijk_max)

<a id="l00469" name="l00469"></a> 469 print(" LocalIJKMin : ", local_ijk_min)

<a id="l00470" name="l00470"></a> 470 print(" GlobalIJKMax: ", global_ijk_max)

<a id="l00471" name="l00471"></a> 471 

<a id="l00472" name="l00472"></a> 472 num_nodal_vars = mesh_chunk.get_num_variables()

<a id="l00473" name="l00473"></a> 473 print("\\n Num Nodal Var: ", num_nodal_vars)

<a id="l00474" name="l00474"></a> 474 for nv in range(num_nodal_vars):

<a id="l00475" name="l00475"></a> 475 var = mesh_chunk.get_variable(nv)

<a id="l00476" name="l00476"></a> 476 \#print(dir(var))

<a id="l00477" name="l00477"></a> 477 if isinstance(var, dvs.IVarObject):

<a id="l00478" name="l00478"></a> 478 var_loc = var.get_var_location()

<a id="l00479" name="l00479"></a> 479 var_name = var.get_name()

<a id="l00480" name="l00480"></a> 480 if var_loc == dvs.LOCATION_NODE:

<a id="l00481" name="l00481"></a> 481 \# Get Hash by var\_index

<a id="l00482" name="l00482"></a> 482 \#nodal\_var\_hash\_size\_by\_def = mesh\_chunk.get\_var\_hash(var)

<a id="l00483" name="l00483"></a> 483 \#if nodal\_var\_hash\_size\_by\_def:

<a id="l00484" name="l00484"></a> 484 \# print("Nodal VAR Hash by Def: ", nodal\_var\_hash\_size\_by\_def)

<a id="l00485" name="l00485"></a> 485 result = mesh_chunk.get_variable_data(nv)

<a id="l00486" name="l00486"></a> 486 num_values, var_values = result

<a id="l00487" name="l00487"></a> 487 print(" Var Name: {0}, Nodal values: {1}, Mesh Chunk: {2}".format(var_name, num_values, m))

<a id="l00488" name="l00488"></a> 488 print(" First 10 Values: ")

<a id="l00489" name="l00489"></a> 489 for n in range(10):

<a id="l00490" name="l00490"></a> 490 print(" ", var_values[n])

<a id="l00491" name="l00491"></a> 491 \# Element Blocks

<a id="l00492" name="l00492"></a> 492 num_elem_blocks = mesh_chunk.get_num_element_blocks()

<a id="l00493" name="l00493"></a> 493 print("\\n Num Element Blocks: ", num_elem_blocks)

<a id="l00494" name="l00494"></a> 494 

<a id="l00495" name="l00495"></a> 495 element_block_types = mesh_chunk.get_element_block_types()

<a id="l00496" name="l00496"></a> 496 for et in element_block_types:

<a id="l00497" name="l00497"></a> 497 elem_block = mesh_chunk.get_element_block_by_type(et)

<a id="l00498" name="l00498"></a> 498 num_elements = 0

<a id="l00499" name="l00499"></a> 499 conn_size = 0

<a id="l00500" name="l00500"></a> 500 faces_per_elem_size = 0

<a id="l00501" name="l00501"></a> 501 nodes_per_face_size = 0

<a id="l00502" name="l00502"></a> 502 indices_size = 0

<a id="l00503" name="l00503"></a> 503 if isinstance(elem_block, dvs.IElemBlockObject):

<a id="l00504" name="l00504"></a> 504 match elem_block.get_element_type():

<a id="l00505" name="l00505"></a> 505 case dvs.ELEMTYPE_TETRAHEDRON | dvs.ELEMTYPE_TRIANGLE | dvs.ELEMTYPE_QUADRANGLE | dvs.ELEMTYPE_HEXAHEDRON: 

<a id="l00506" name="l00506"></a> 506 num_elements = elem_block.get_num_elements()

<a id="l00507" name="l00507"></a> 507 result = elem_block.get_connectivity()

<a id="l00508" name="l00508"></a> 508 connsize, connectivity = result

<a id="l00509" name="l00509"></a> 509 print(" Element Type: ", elem_block.get_element_type())

<a id="l00510" name="l00510"></a> 510 print(" Connectivity Size: ", connsize)

<a id="l00511" name="l00511"></a> 511 for s in range(10):

<a id="l00512" name="l00512"></a> 512 print(" ",connectivity[s])

<a id="l00513" name="l00513"></a> 513 case dvs.ELEMTYPE_N_SIDED_POLYGON | dvs.ELEMTYPE_N_SIDED_POLYGON_GHOST:

<a id="l00514" name="l00514"></a> 514 print(" Element Type : ", elem_block.get_element_type())

<a id="l00515" name="l00515"></a> 515 num_elements = elem_block.get_num_elements()

<a id="l00516" name="l00516"></a> 516 print(" Num Elements : ", num_elements)

<a id="l00517" name="l00517"></a> 517 connectivity = elem_block.get_connectivity_polygon()

<a id="l00518" name="l00518"></a> 518 nodes_per_polygon_size, nodes_per_polygon_list, indices_size, indices_list = connectivity

<a id="l00519" name="l00519"></a> 519 print(" Nodes per Polygon Size: ", nodes_per_polygon_size)

<a id="l00520" name="l00520"></a> 520 print(" Polygon Indices Size : ", indices_size)

<a id="l00521" name="l00521"></a> 521 nodes_per_polygon = list(nodes_per_polygon_list)

<a id="l00522" name="l00522"></a> 522 polygon_indices = list(indices_list)

<a id="l00523" name="l00523"></a> 523 \#print(" Nodes Per Polygon: ")

<a id="l00524" name="l00524"></a> 524 \#for np in nodes\_per\_polygon:

<a id="l00525" name="l00525"></a> 525 \# print(" ", np)

<a id="l00526" name="l00526"></a> 526 \#print(" Polygon Indices : ")

<a id="l00527" name="l00527"></a> 527 \#for pi in polygon\_indices:

<a id="l00528" name="l00528"></a> 528 \# print(" ", pi)

<a id="l00529" name="l00529"></a> 529 case dvs.ELEMTYPE_CONVEX_POLYHEDRON | dvs.ELEMTYPE_CONVEX_POLYHEDRON_GHOST:

<a id="l00530" name="l00530"></a> 530 num_element = elem_block.get_num_elements()

<a id="l00531" name="l00531"></a> 531 print(" Element Type: ",elem_block.get_element_type()) 

<a id="l00532" name="l00532"></a> 532 print(" Number of elements: ", num_element)

<a id="l00533" name="l00533"></a> 533 \# Get connectivity Polyhedral

<a id="l00534" name="l00534"></a> 534 conn_polyhedral = elem_block.get_connectivity_polyhedral()

<a id="l00535" name="l00535"></a> 535 faces_per_elem_size, faces_per_elem_list, nodes_per_face_size, nodes_per_face_list, indices_size, conn_indices_list = conn_polyhedral

<a id="l00536" name="l00536"></a> 536 print(" Faces Per Elem Size :",faces_per_elem_size)

<a id="l00537" name="l00537"></a> 537 print(" Nodes Per Face Size :",nodes_per_face_size)

<a id="l00538" name="l00538"></a> 538 print(" Conn Indices Size :",indices_size)

<a id="l00539" name="l00539"></a> 539 faces_per_elem = list(faces_per_elem_list)

<a id="l00540" name="l00540"></a> 540 nodes_per_face = list(nodes_per_face_list)

<a id="l00541" name="l00541"></a> 541 conn_indices = list(conn_indices_list)

<a id="l00542" name="l00542"></a> 542 \#print(" Faces Per Elem: ")

<a id="l00543" name="l00543"></a> 543 \#for fp in faces\_per\_elem:

<a id="l00544" name="l00544"></a> 544 \# print(" ", fp)

<a id="l00545" name="l00545"></a> 545 \#print(" Nodes Per Face: ")

<a id="l00546" name="l00546"></a> 546 \#for nf in nodes\_per\_face:

<a id="l00547" name="l00547"></a> 547 \# print(" ", nf) 

<a id="l00548" name="l00548"></a> 548 \#print(" Conn Indices : ")

<a id="l00549" name="l00549"></a> 549 \#for ci in conn\_indices:

<a id="l00550" name="l00550"></a> 550 \# print(" ", ci)

<a id="l00551" name="l00551"></a> 551 case dvs.ELEMTYPE_STRUCTURED:

<a id="l00552" name="l00552"></a> 552 num_elements = elem_block.get_num_elements()

<a id="l00553" name="l00553"></a> 553 nodes_per_elem = elem_block.get_nodes_per_element()

<a id="l00554" name="l00554"></a> 554 print(" Structured Element: Type:{0}, NPE:{1}".format(elem_block.get_element_type(), nodes_per_elem))

<a id="l00555" name="l00555"></a> 555 case dvs.ELEMTYPE_UNDEFINED | dvs.ELEMTYPE_UNDEFINED_PARALLELEPIPED | dvs.ELEMTYPE_UNDEFINED_CURVILINEAR:

<a id="l00556" name="l00556"></a> 556 print(" Undefined element type found")

<a id="l00557" name="l00557"></a> 557 case _:

<a id="l00558" name="l00558"></a> 558 print(" Default Element Type")

<a id="l00559" name="l00559"></a> 559 num_elements = elem_block.get_num_elements()

<a id="l00560" name="l00560"></a> 560 nodes_per_elem = elem_block.get_nodes_per_elem()

<a id="l00561" name="l00561"></a> 561 \# Get Connectivity List

<a id="l00562" name="l00562"></a> 562 result = elem_block.get_connectivity()

<a id="l00563" name="l00563"></a> 563 connsize, connectivity = result

<a id="l00564" name="l00564"></a> 564 \#print(" Print Connectivity: ")

<a id="l00565" name="l00565"></a> 565 \#for i in connectivity:

<a id="l00566" name="l00566"></a> 566 \# print(" ", i)

<a id="l00567" name="l00567"></a> 567 

<a id="l00568" name="l00568"></a> 568print("\\n-----------------------------------")

<a id="l00569" name="l00569"></a> 569print(" Listing All Plot Chunks for Query")

<a id="l00570" name="l00570"></a> 570print("-------------------------------------")

<a id="l00571" name="l00571"></a> 571num_plot_chunks = query.get_num_plot_chunks()

<a id="l00572" name="l00572"></a> 572for np in range(num_plot_chunks):

<a id="l00573" name="l00573"></a> 573 plot = query.get_plot_chunk(np)

<a id="l00574" name="l00574"></a> 574 if isinstance(plot, dvs.IPlotChunkObject):

<a id="l00575" name="l00575"></a> 575 plot_def = plot.get_object()

<a id="l00576" name="l00576"></a> 576 plot_name = plot_def.get_name()

<a id="l00577" name="l00577"></a> 577 time = plot.get_time()

<a id="l00578" name="l00578"></a> 578 rank = plot.get_rank()

<a id="l00579" name="l00579"></a> 579 plot_hash = plot.get_hash()

<a id="l00580" name="l00580"></a> 580 print(" Plot Name: ", plot_name)

<a id="l00581" name="l00581"></a> 581 plot_data = plot.get_data()

<a id="l00582" name="l00582"></a> 582 x_values, y_values = plot_data

<a id="l00583" name="l00583"></a> 583 print(" Plot Hash: ", plot_hash)

<a id="l00584" name="l00584"></a> 584 print(" X Values: ")

<a id="l00585" name="l00585"></a> 585 for x in x_values:

<a id="l00586" name="l00586"></a> 586 print(" ", x)

<a id="l00587" name="l00587"></a> 587 print(" Y Values: ")

<a id="l00588" name="l00588"></a> 588 for y in y_values:

<a id="l00589" name="l00589"></a> 589 print(" ", y)

<a id="l00590" name="l00590"></a> 590 

<a id="l00591" name="l00591"></a> 591 

<a id="l00592" name="l00592"></a> 592 

<a id="l00593" name="l00593"></a> 593 

<a id="l00594" name="l00594"></a> 594 

<a id="l00595" name="l00595"></a> 595 

<a id="l00596" name="l00596"></a> 596 

<a id="l00597" name="l00597"></a> 597 

<a id="l00598" name="l00598"></a> 598 

<a id="l00599" name="l00599"></a> 599 

<a id="l00600" name="l00600"></a> 600 

<a id="l00601" name="l00601"></a> 601 

<a id="l00602" name="l00602"></a> 602 

<a id="l00603" name="l00603"></a> 603 

<a id="l00604" name="l00604"></a> 604 

<a id="l00605" name="l00605"></a> 605