[問題] ToExpression的幾個問題
最近有需要做一些複雜冗長(但重複性高)的計算式
在想說先產生對應那些複雜計算式的字串相對比較容易操作 然後再轉成計算式計算
但我一開始做一些簡單的嘗試即遇到一些問題
以下有一些問題,希望有大大能幫我解惑 謝謝
問題1:
Input:
f[x_, y_, z_] := x <> y <> z;
Input:
f["\!\(\*SubscriptBox[\"\[PartialD]\", \"m\"]\)",
"\!\(\*SubscriptBox[\"\[PartialD]\", \"n\"]\)", "(m^2n^2)"]
Output:
"\!\(\*SubscriptBox[\"\[PartialD]\", \"m\"]\)\!\(\*SubscriptBox[\"\
\[PartialD]\", \"n\"]\)(m^2n^2)"
Input:
ToExpresion["\!\(\*SubscriptBox[\"\[PartialD]\", \
\"m\"]\)\!\(\*SubscriptBox[\"\[PartialD]\", \"n\"]\)m^2n^2"]
最後這步沒有給我預期的答案: 4 m n
想請問問題是出在哪裡,有沒有辦法修正?
(會這樣預期是因為如果
Input:
\!\(
\*SubscriptBox[\(\[PartialD]\), \(m\)]\(
\*SubscriptBox[\(\[PartialD]\), \(n\)]\ \((m^2*n^2)\)\)\))
Output:
4 m n
問題2: (有點類似問題1)
一樣是想要把字串換成Expresion來計算,但不是錯誤的原因是為何
Input:
ToExpression[
"\!\(\*SubscriptBox[\"\[PartialD]\", \"y\"]\)" <>
"\!\(\*SubscriptBox[\"\[PartialD]\", \"x\"]\)" <> "(x^3*y^5)"]
Output:
$Failed
想請問問題在哪裡 有沒有辦法修正?
問題3: (跟ToExpresion不相關 不過順便問一下)
Input:
\!\(
\*SubscriptBox[\(\[PartialD]\), \(y\)]\(
\*SubscriptBox[\(\[PartialD]\), \(x\)]\ z\)\) /. z -> (x^m*y^n)
為什麼OutPut是 0
而不是如同
Input:
\!\(
\*SubscriptBox[\(\[PartialD]\), \(y\)]\(
\*SubscriptBox[\(\[PartialD]\), \(x\)]\((x^m*y^n)\)\)\)
Output:
m n x^(-1 + m) y^(-1 + n)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.217.54
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):
Mathematica 近期熱門文章
PTT數位生活區 即時熱門文章