我有一个Maple中的符号矩阵(18乘18),我想导出到Matlab。 我使用with(CodeGeneration)
,然后Matlab(...)
为了将其转换为Matlab语法,但它不响应,因为矩阵太大。有没有其他的方式来做到这一点,并将其保存到文本文件。如何将Maple的符号变量导出为文本文件(Matlab格式)?
PS:H是这样的:
H = [0.750e1 0 0 -0.170400e1 * cos(q04) * cos(q05) * cos(q06) + 0.335e-1 * sin(q06) * cos(q05) * cos(q04) * cos(q11) + 0.335e-1 * sin(q11) * cos(q04) * cos(q05) * cos(q06) - 0.168e-1 * sin(q25) * sin(q24) * cos(q21) * sin(q04) * sin(q06) - 0.168e-1 * cos(q04) * sin(q05) * cos(q25) * cos(q23) * cos(q22) + 0.168e-1 * cos(q04) * sin(q05) * cos(q25) * sin(q23) * sin(q22) + 0.170400e1 * sin(q04) * sin(q06) + 0.176150e1 * cos(q06) * cos(q22) * sin(q04) * cos(q21) + 0.735e-1 * cos(q06) * sin(q22) * sin(q04) * cos(q21) + 0.176150e1 * sin(q21) * cos(q22) * sin(q04) * sin(q06) + 0.735e-1 * sin(q21) * sin(q22) * sin(q04) * sin(q06) + 0.176150e1 * sin(q06) * cos(q05) * cos(q22) * cos(q04) * cos(q21) + 0.735e-1 * sin(q06) * cos(q05) * sin(q22) * cos(q04) * cos(q21) - 0.176150e1 * sin(q21) * cos(q22) * cos(q04) * cos(q05) * cos(q06) - 0.735e-1 * sin(q21) * sin(q22) * cos(q04) * cos(q05) * cos(q06) - 0.168e-1 * sin(q25) * cos(q24) * cos(q23) * cos(q22) * sin(q21) * cos(q04) * cos(q05) * cos(q06) + 0.168e-1 * sin(q25) * cos(q24) * sin(q23) * sin(q22) * sin(q21) * cos(q04) * cos(q05) * cos(q06) + 0.168e-1 * cos(q11) * sin(q15) * sin(q14) * sin(q04) * sin(q06) + 0.168e-1 * cos(q04) * sin(q05) * cos(q13) * cos(q12) * cos(q15) - 0.168e-1 * cos(q04) * sin(q05) * sin(q13) * sin(q12) * cos(q15) + 0.168e-1 * cos(q06) * sin(q25) * sin(q24) * sin(q04) * sin(q21) + 0.168e-1 * cos(q06) * sin(q15) * sin(q04) * sin(q11) * sin(q14) + 0.168e-1 * cos(q13) * sin(q12) * sin(q11) * cos(q15) * sin(q04) * sin(q06) + 0.168e-1 * sin(q13) * cos(q12) * sin(q11) * cos(q15) * sin(q04) * sin(q06) - 0.168e-1 * cos(q11) * sin(q15) * sin(q14) * cos(q04) * cos(q05) * cos(q06) - 0.168e-1 * cos(q04) * sin(q05) * cos(q13) * sin(q12) * sin(q15) * cos(q14) - 0.168e-1 * cos(q04) * sin(q05) * sin(q13) * cos(q12) * sin(q15) * cos(q14) - 0.168e-1 * cos(q06) * cos(q15) * sin(q04) * cos(q11) * sin(q12) * cos(q13) - 0.168e-1 * cos(q06) * cos(q15) * sin(q04) * cos(q11) * cos(q12) * sin(q13) + 0.168e-1 * sin(q06) * cos(q05) * sin(q15) * cos(q04) * sin(q11) * sin(q14) - 0.11040e0 * sin(q06) * cos(q05) * cos(q04) * cos(q11) * cos(q12) * sin(q13) - 0.11040e0 * sin(q06) * cos(q05) * cos(q04) * cos(q11) * sin(q12) * cos(q13) - 0.9320e-1 * cos(q06) * sin(q04) * cos(q11) * cos(q12) * sin(q14) * cos(q13) + 0.9320e-1 * cos(q06) * sin(q04) * cos(q11) * sin(q12) * sin(q14) * sin(q13) - 0.11040e0 * sin(q11) * cos(q12) * sin(q13) * cos(q04) * cos(q05) * cos(q06) - 0.11040e0 * sin(q11) * sin(q12) * cos(q13) * cos(q04) * cos(q05) * cos(q06) + 0.9320e-1 * cos(q13) * cos(q12) * sin(q11) * sin(q14) * sin(q04) * sin(q06) - 0.9320e-1 * sin(q13) * sin(q12) * sin(q11) * sin(q14) * sin(q04) * sin(q06) + 0.176150e1 * cos(q04) * sin(q05) * sin(q12) - 0.735e-1 * cos(q04) * sin(q05) * cos(q12) + 0.335e-1 * cos(q06) * sin(q04) * cos(q11) - 0.335e-1 * sin(q11) * sin(q04) * sin(q06) + 0.176150e1 * cos(q06) * sin(q04) * cos(q11) * cos(q12) + 0.735e-1 * cos(q06) * sin(q04) * cos(q11) * sin(q12) - 0.176150e1 * sin(q11) * cos(q12) * sin(q04) * sin(q06) - 0.735e-1 * sin(q11) * sin(q12) * sin(q04) * sin(q06) - 0.168e-1 * sin(q06) * cos(q05) * sin(q15) * cos(q04) * cos(q11) * cos(q12) * cos(q14) * cos(q13) + 0.168e-1 * sin(q06) * cos(q05) * sin(q15) * cos(q04) * cos(q11) * sin(q12) * cos(q14) * sin(q13) - 0.168e-1 * cos(q13) * cos(q12) * sin(q11) * sin(q15) * cos(q14) * cos(q04) * cos(q05) * cos(q06) + 0.168e-1 * sin(q13) * sin(q12) * sin(q11) * sin(q15) * cos(q14) * cos(q04) * cos(q05) * cos(q06) - 0.3500e0 * cos(q04) * sin(q05) * sin(q12) * cos(q13) - 0.3500e0 * cos(q04) * sin(q05) * cos(q12) * sin(q13) - 0.9320e-1 * cos(q06) * sin(q04) * sin(q11) * cos(q14) - 0.9320e-1 * cos(q11) * cos(q14) * sin(q04) * sin(q06) - 0.11040e0 * cos(q04) * sin(q05) * sin(q12) * sin(q13) + 0.11040e0 * cos(q04) * sin(q05) * cos(q12) * cos(q13) + 0.168e-1 * sin(q06) * cos(q05) * sin(q25) * cos(q24) * cos(q22) * cos(q23) * cos(q04) * cos(q21) - 0.168e-1 * sin(q06) * cos(q05) * sin(q25) * cos(q24) * sin(q22) * sin(q23) * cos(q04) * cos(q21) - 0.3500e0 * sin(q06) * cos(q05) * cos(q04) * cos(q11) * cos(q12) * cos(q13) + 0.3500e0 * sin(q06) * cos(q05) * cos(q04) * cos(q11) * sin(q12) * sin(q13) - 0.3500e0 * sin(q11) * cos(q12) * cos(q13) * cos(q04) * cos(q05) * cos(q06) + 0.3500e0 * sin(q11) * sin(q12) * sin(q13) * cos(q04) * cos(q05) * cos(q06) + 0.168e-1 * cos(q06) * sin(q25) * cos(q24) * cos(q22) * cos(q23) * sin(q04) * cos(q21) - 0.168e-1 * cos(q06) * sin(q25) * cos(q24) * sin(q22) * sin(q23) * sin(q04) * cos(q21) + 0.168e-1 * sin(q06) * cos(q05) * cos(q25) * sin(q22) * cos(q23) * cos(q04) * cos(q21) + 0.168e-1 * sin(q06) * cos(q05) * cos(q25) * cos(q22) * sin(q23) * cos(q04) * cos(q21) + 0.168e-1 * sin(q25) * cos(q24) * cos(q23) * cos(q22) * sin(q21) * sin(q04) * sin(q06) - 0.168e-1 * sin(q25) * cos(q24) * sin(q23) * sin(q22) * sin(q21) * sin(q04) * sin(q06) - 0.168e-1 * cos(q25) * cos(q23) * sin(q22) * sin(q21) * cos(q04) * cos(q05) * cos(q06) - 0.168e-1 * cos(q25) * sin(q23) * cos(q22) * sin(q21) * cos(q04) * cos(q05) * cos(q06) - 0.43660e0 * cos(q04) * sin(q05) * sin(q22) * sin(q23) + 0.43660e0 * cos(q04) * sin(q05) * cos(q22) * cos(q23) + 0.176150e1 * cos(q04) ...]
但要长得多
您可以导出较小的矩阵吗?这有点破解,但如何将矩阵分成行或列? [[ExportMatrix]](http://www.maplesoft.com/support/help/Maple/view.aspx?path=ExportMatrix)是否可以工作,还是仅用于数字数据?除非你的矩阵元素依赖于自定义或专门的函数,否则代码生成对于这个看起来似乎有点过分你真的只需要一种方法将矩阵转换为Matlab可以处理的文本格式。 – horchler
@horchler:'ExportMatrix'仅用于数字数据。 “专业功能”是什么意思? – milad
如果您可以更具体地了解矩阵的内容并提供演示代码,它可能会帮助人们提供帮助。它是否包含您编写的自定义函数或可能特定于Maple的专用函数?如果它是像多项式,触发器,指数等任何数学环境所具有的通用东西,那么您可以直接将它们作为文本输出,并自己对Matlab进行任何额外的转换(或在Matlab中)。我没有枫叶,所以我无法帮助你。看起来这个网站上没有很多Maple用户。 – horchler