matlab读取avlcurise结果
时间: 2023-07-13 08:18:49 浏览: 138
在 MATLAB 中读取 AVL-Cruise 计算结果,您可以按照以下步骤进行操作:
1. 调用 `avlcurise` 方法进行计算,并将结果存储在一个结构体中。例如,以下是一个示例代码:
```
data = struct('Type', 'Aircraft', ...
'Name', 'MyAircraft', ...
'Sref', 50, ...
'bref', 10, ...
'Cref', 2, ...
'Xref', 0, ...
'Yref', 0, ...
'Zref', 0, ...
'CDp', 0.02, ...
'Mach', 0.2, ...
'IYsym', 0, ...
'IZsym', 0, ...
'IYsym', 0, ...
'Cg', [0, 0, 0], ...
'Surfaces', [ ...
struct('Name', 'Wing', ...
'Nchord', 15, ...
'Cspace', 'Cosine', ...
'Chord', [1, 0.9, 0.8, 0.7, 0.6, 0.5, 0.4, 0.3, 0.2, 0.1, 0, 0.1, 0.2, 0.3, 0.4, 0.5], ...
'Yle', [0, 0.3, 0.6, 0.9, 1.2, 1.5, 1.8, 2.1, 2.4, 2.7, 3, 2.7, 2.4, 2.1, 1.8, 1.5], ...
'Zle', [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1, 1, 1, 1, 1, 1], ...
'Angle', [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], ...
'Nspan', 10, ...
'Sspace', 'Cosine', ...
'Sweep', [0, 0, 0, 0, 0, 0, 0, 0, 0, 0], ...
'Nchordwise', 3, ...
'Cname', 'Wing', ...
'Cgain', 1, ...
'Xhinge', [0, 0, 0, 0, 0, 0, 0, 0, 0, 0], ...
'HingeVec', [0, 1, 0], ...
'SgnDup', 1, ...
'SgnDlw', 1, ...
'FlapType', 'Plain', ...
'FlapAngle', 0, ...
'SgnTwist', 1, ...
'Twist', [0, 0, 0, 0, 0, 0, 0, 0, 0, 0], ...
'SgnChord', 1) ...
]);
results = avlcurise(data);
```
在这个示例中,`results` 是一个包含 AVL-Cruise 的计算结果的结构体。
2. 使用 `fieldnames` 函数查看结果结构体的字段列表。例如,以下是一个示例代码:
```
fields = fieldnames(results);
```
其中,`fields` 是一个包含结果结构体的字段名称的字符串数组。
3. 使用点符号或括号运算符访问结果结构体中的字段。例如,以下是一个示例代码,可以访问结果结构体中的 `CL` 字段:
```
CL = results.CL;
```
在这个示例中,`CL` 是一个包含计算结果中的升力系数的数组。
注意:在访问结果结构体中的字段时,您需要确保字段名称与结果结构体中的字段名称完全匹配。否则,您可能会遇到未定义变量或结果不正确的问题。
阅读全文