Skip to content

Commit 263da2d

Browse files
authored
Mnale/correction meshinfo (#1038)
* Update the mesh_info : making more pythonic functionnalities * Unable tests for older version of gate and gatebin with no implementation of Get_PinDerivedClassName API * Update the PR : reformat code * Update the PR : even more pythonic methods
1 parent 4c7f9b6 commit 263da2d

File tree

3 files changed

+33
-23
lines changed

3 files changed

+33
-23
lines changed

src/ansys/dpf/core/mesh_info.py

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ def set_property(self, property_name, prop):
131131
return self.generic_data_container.set_property(property_name, prop)
132132

133133
@property
134-
def get_number_nodes(self):
134+
def number_nodes(self):
135135
"""
136136
Returns
137137
-------
@@ -142,7 +142,7 @@ def get_number_nodes(self):
142142
return self.generic_data_container.get_property("num_nodes")
143143

144144
@property
145-
def get_number_elements(self):
145+
def number_elements(self):
146146
"""
147147
Returns
148148
-------
@@ -153,7 +153,7 @@ def get_number_elements(self):
153153
return self.generic_data_container.get_property("num_elements")
154154

155155
@property
156-
def get_splittable_by(self):
156+
def splittable_by(self):
157157
"""
158158
Returns
159159
-------
@@ -164,7 +164,7 @@ def get_splittable_by(self):
164164
return self.generic_data_container.get_property("splittable_by")
165165

166166
@property
167-
def get_available_elem_types(self):
167+
def available_elem_types(self):
168168
"""
169169
Returns
170170
-------
@@ -174,22 +174,26 @@ def get_available_elem_types(self):
174174

175175
return self.generic_data_container.get_property("avalaible_elem_type")
176176

177-
def set_number_nodes(self, number_of_nodes):
177+
@number_nodes.setter
178+
def number_nodes(self, value):
178179
"""Set the number of nodes in the mesh"""
179180

180-
return self.generic_data_container.set_property("num_nodes", number_of_nodes)
181+
self.generic_data_container.set_property("num_nodes", value)
181182

182-
def set_number_elements(self, number_of_elements):
183+
@number_elements.setter
184+
def number_elements(self, value):
183185
"""Set the number of elements in the mesh"""
184186

185-
return self.generic_data_container.set_property("num_elements", number_of_elements)
187+
self.generic_data_container.set_property("num_elements", value)
186188

187-
def set_splittable_by(self, split):
189+
@splittable_by.setter
190+
def splittable_by(self, value):
188191
"""Set name of the properties according to which the mesh can be split by"""
189192

190-
return self.generic_data_container.set_property("splittable_by", split)
193+
self.generic_data_container.set_property("splittable_by", value)
191194

192-
def set_available_elem_types(self, available_elem_types):
195+
@available_elem_types.setter
196+
def available_elem_types(self, value):
193197
"""Set the available element types"""
194198

195-
return self.generic_data_container.set_property("avalaible_elem_type", available_elem_types)
199+
self.generic_data_container.set_property("avalaible_elem_type", value)

src/ansys/dpf/core/operator_specification.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -383,7 +383,9 @@ def _fill_pins(self, binput, to_fill):
383383
]
384384

385385
pin_derived_class_type_name = ""
386-
if server_meet_version("7.0", self._server):
386+
if server_meet_version("7.0", self._server) and hasattr(
387+
self._api, "operator_specification_get_pin_derived_class_type_name"
388+
):
387389
pin_derived_class_type_name = (
388390
self._api.operator_specification_get_pin_derived_class_type_name(
389391
self, binput, i_pin
@@ -614,7 +616,9 @@ def inputs(self) -> dict:
614616
def inputs(self, val: dict):
615617
for key, value in val.items():
616618
list_types = integral_types.MutableListString(value.type_names)
617-
if server_meet_version("7.0", self._server):
619+
if server_meet_version("7.0", self._server) and hasattr(
620+
self._api, "operator_specification_set_pin_derived_class"
621+
):
618622
self._api.operator_specification_set_pin_derived_class(
619623
self,
620624
True,
@@ -655,7 +659,9 @@ def outputs(self) -> dict:
655659
def outputs(self, val: dict):
656660
for key, value in val.items():
657661
list_types = integral_types.MutableListString(value.type_names)
658-
if server_meet_version("7.0", self._server):
662+
if server_meet_version("7.0", self._server) and hasattr(
663+
self._api, "operator_specification_set_pin_derived_class"
664+
):
659665
self._api.operator_specification_set_pin_derived_class(
660666
self,
661667
False,

tests/test_mesh_info.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -84,12 +84,12 @@ def test_set_get_num_of(server_type):
8484
mesh_info = dpf.MeshInfo(server=server_type)
8585
# """Number of nodes"""
8686
num_nodes = 189
87-
mesh_info.set_number_nodes(189)
88-
assert mesh_info.get_number_nodes == num_nodes
87+
mesh_info.number_nodes = 189
88+
assert mesh_info.number_nodes == num_nodes
8989
# """ Number of elements """
9090
num_elements = 2
91-
mesh_info.set_number_elements(2)
92-
assert mesh_info.get_number_elements == num_elements
91+
mesh_info.number_elements = 2
92+
assert mesh_info.number_elements == num_elements
9393

9494

9595
@pytest.mark.skipif(
@@ -122,8 +122,8 @@ def test_set_get_splittable_by_mesh_info(server_type):
122122
splittable = dpf.StringField(server=server_type)
123123
expected_splittable = ["split_01", "split_02", "split_03"]
124124
splittable.append(expected_splittable, 1)
125-
mesh_info.set_splittable_by(splittable)
126-
result_splittable = mesh_info.get_splittable_by
125+
mesh_info.splittable_by = splittable
126+
result_splittable = mesh_info.splittable_by
127127
assert result_splittable.data[0] == expected_splittable[0]
128128
assert result_splittable.data[1] == expected_splittable[1]
129129
assert result_splittable.data[2] == expected_splittable[2]
@@ -138,8 +138,8 @@ def test_set_get_available_elem_types_mesh_info(server_type):
138138
available_results_ids = [1, 2, 3]
139139
available_results = dpf.Scoping(server=server_type)
140140
available_results._set_ids(available_results_ids)
141-
mesh_info.set_available_elem_types(available_results)
142-
result_available = mesh_info.get_available_elem_types
141+
mesh_info.available_elem_types = available_results
142+
result_available = mesh_info.available_elem_types
143143
for x in range(len(available_results)):
144144
assert result_available.id(x) == available_results.id(x)
145145

0 commit comments

Comments
 (0)