数値(!)関数から領域を取得する方法

Nov 24 2020

Region純粋に数値的に定義された関数からを実現したいと思います。このように:

f[r_?NumericQ, th_] := {r Cos[th], r Sin[th]};

分析的に、これは次の方法で非常に簡単に達成できます。

Region[ParametricRegion[{r Cos[th], r Sin[th]}, {{th, 0, 2 Pi}, {r, 0, 1}}]]

しかし、数値的に定義されたものでこれをどのように行うのでしょうfか?

回答

6 CarlWoll Nov 24 2020 at 02:20

ParametricRegion最初の引数としてリストを指定する必要があります。また、BoundaryDiscretizeRegion数値関数を視覚化するためのより良い選択です。

Clear[f]
f[r_?NumericQ, th_] := {r Cos[th], r Sin[th]}

BoundaryDiscretizeRegion @ ParametricRegion[
    {Indexed[f[r, th], 1], Indexed[f[r, th], 2]},
    {{th, 0, 2 Pi}, {r, 0, 1}}
]