gpt4 book ai didi

wolfram-mathematica - 如何在 Mathematica 中拥有可变参数列表

转载 作者:行者123 更新时间:2023-12-04 23:30:33 28 4
gpt4 key购买 nike

现在我有一些函数的代码 func当我在它的定义中给它特定的参数时,它按照我想要的方式执行(所以我使它成为 func[x1_,x2_]:=...,然后我使它成为 func[x1_,x2_,x3_]:=... 而不改变任何其他东西,它以我想要的方式工作)。有没有办法自动替换我为此函数指定的任何参数?

更新:

我还没有隔离出问题代码,但是这里的代码没有做我想要的:

(* Clear all stuff each time before running, just to be safe! *)
\
Clear["Global`*"]

data = {{238.2, 0.049}, {246.8, 0.055}, {255.8, 0.059}, {267.5,
0.063}, {280.5, 0.063}, {294.3, 0.066}, {307.7, 0.069}, {318.2,
0.069}};
errors = {{x1, 0.004}, {x2, 0.005}};

getX[x1_, x2_] := 1/x2^2

getY[x__] =
Evaluate[Simplify[
Sqrt[Sum[(D[getX[x], errors[[i]][[1]]] errors[[i]][[2]])^2, {i,
Length[errors]}]]]]

map[action_, list_] := action @@@ list

y = map[getY, data];
y

getY[2, 3]

这里的代码是:(为 y 提供 {67.9989, 48.0841, 38.9524, 31.994, 31.994, 27.8265, 24.3525, 24.3525})
(* Clear all stuff each time before running, just to be safe! *) \ Clear["Global`*"]

data = {{238.2, 0.049}, {246.8,
0.055}, {255.8, 0.059}, {267.5,
0.063}, {280.5, 0.063}, {294.3, 0.066}, {307.7, 0.069}, {318.2,
0.069}}; errors = {{x2, 0.004}, {x1, 0.005}};

getX[x1_, x2_] := 1/x2^2

getY[x1_, x2_] := Evaluate[Simplify[ Sqrt[Sum[(D[getX[x1, x2], errors[[i]][[1]]]
errors[[i]][[2]])^2, {i, Length[errors]}]]]]

map[action_, list_] := action @@@ list

y = map[getY, data]; y

getY[2, 3]

更新 2:

我的数学:

我打算取 getX的所有偏导数的平方和的平方根。功能。因此 getY的正文功能。然后我想针对 x1 的不同值评估该表达式和 x2 .因此我有 getY 的论据.

最佳答案

Use __ ,例如

In[4]:= f[x__] = {x}
Out[4]= {x}

In[5]:= f[1,2,3,4,5,6]
Out[5]= {1, 2, 3, 4, 5, 6}

In[6]:= f[a,b,c]
Out[6]= {a, b, c}

关于wolfram-mathematica - 如何在 Mathematica 中拥有可变参数列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5746939/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com