首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在mathematica中组合两个函数

在mathematica中组合两个函数
EN

Stack Overflow用户
提问于 2013-01-10 23:32:10
回答 2查看 672关注 0票数 0

我是个数学新手,在定义函数的某个组合时遇到了麻烦。

m1m2是这样的映射,即m1: R^2 -> R^2m2:R^2->R^1,其中R是实线

代码语言:javascript
复制
m1[eta_, zeta_] = {eta^3, zeta^3} 
m2[x_, y_] = x^2 + y^2

m3[eta_, zeta_]  = Composition[m2, m1][eta, zeta]

在计算最后一行时,即shift+enter,我得到了输出

代码语言:javascript
复制
m2[{eta^3, zeta^3}]

但是解决这个问题的方法应该是m3[eta,zeta]=eta^6 + zeta^6

我该怎么做呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-10 23:49:09

函数m1返回一个包含2个元素的列表,而函数m2需要2个参数。更改m1返回的内容或m2期望的内容。在这种情况下,将m2重新定义为

代码语言:javascript
复制
m2[{x_, y_}] = x^2 + y^2

线索是,当您为函数提供错误的参数排序时,m2[{eta^3, zeta^3}]就是Mathematica给出的那种输出--它返回未经计算的输入表达式。在学习的过程中,您会看到很多这方面的内容。

哦,您可能希望在函数定义中使用SetDelayed (通常编写为:=),而不是Set (或=)。请参阅文档,了解您可能需要此功能的原因。

票数 1
EN

Stack Overflow用户

发布于 2013-01-11 21:05:59

写: m3eta_,zeta_ = m2@@m1eta,zeta

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14261421

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档