Traceback (most recent call last): File "D:\pythonProject\main.py", line 43, in <module> for i in range(strainZX.shape[0]): AttributeError: 'dvector' object has no attribute 'shape'
时间: 2024-03-18 13:41:54 浏览: 179
linux 下 pip3 报错“ File “/usr/bin/pip3”, line 9, in from pip import mainImportError: canno”处理
5星 · 资源好评率100%
这个错误提示表示在`strainZX`这个`dvector`对象上无法使用`shape`属性,因为`dvector`对象并没有`shape`属性。
`dvector`是LS-DYNA Python接口中的一种数据类型,它表示一个包含双精度浮点数的向量。如果要获取`dvector`对象中的数据个数,可以使用`size()`方法。因此,你可以使用以下代码将`strainZX`中的每一个值打印出来:
```python
strainZX = br.get_data(bdt.BINOUT_ELOUT_STRAIN_ZX, idtype=bit.BINOUT_ELOUT_ID_SHELL, id=100, datatype_option=bdto.BINOUT_DATATYPE_ELOUT_LOWER)
n_steps = strainZX.size() // num_integration_points
for i in range(n_steps):
for j in range(num_integration_points):
print("Time step: {}, Integration point: {}, Value: {}".format(i+1, j+1, strainZX[i * num_integration_points + j]))
```
其中,`num_integration_points`表示该壳单元的积分点数。`strainZX.size()`方法返回`dvector`对象中包含的浮点数个数,因此可以通过`strainZX.size() // num_integration_points`计算出时间步数,进而遍历所有的时间步和积分点,将每一个值打印出来。
阅读全文