改变坐标系统
CoordinateTransformData[transf,"Mapping"] | 以纯函数在坐标系统之间进行映射 |
CoordinateTransformData[transf,"Mapping",pt] | pt 的新坐标值 |
CoordinateTransform[transf,pt] | pt 的新坐标值 |
映射函数可以从 CoordinateTransformData 中索要,并且存储起来将来使用:
使用 Map,它可以一次性用于几个点:
函数 CoordinateTransform 提供了方便的机制,用于对一个或者几个点进行变换.
当在两个坐标系统之间变换场时,以旧系统中的变量给出的场用新系统中的变量重新表示. 除了系统之间的映射,需要某些额外步骤:使用新变量求解旧变量,在这些表达式中替换,并且在向量和张量场的情况中,考虑两个坐标系统之间的基向量之间的不同. 所有这些步骤都由命令 TransformedField 执行.
TransformedField[transf,f,{x1,x2,…,xn}->{y1,y2,…,yn}] | 将一个标量、向量或者张量场 f 从坐标 xi 转化为坐标 yi |
由于需要考虑基向量的改变,向量和张量情况更加复杂. 所以,向量的变换不是分量的变换. 对于被解释为标准正交基中的分量的数组,联系两个基的旋转矩阵由 CoordinateTransformData 属性 "OrthonormalBasisRotation" 给出.
使用 Map,标量场列表可以在坐标之间变换. 结果与使用相同分量的向量场的变换相当不同:
坐标系统的参数可以在 TransformedField 中指定. 这将向量场 从直角坐标 转化为参数为 的椭球坐标 :
使用 Map,可能将矩阵转化为两个向量组成的列表,或者四个标量场的矩阵. 结果在每种情况下相当不同:
CoordinateTransformData[transf,prop,pt] | 计算点 pt 处变换的属性 |
CoordinateChartData[chart,prop,pt] | 计算点 pt 处图表的属性 |
若要计算旋转矩阵,需要定义正交系统中的标准正交基的比例因子. 注意, CoordinateTransform 用于确保两个比例因子集合在相同点计算: