从区域采集点样本
RandomPoint 均匀采集分布在给定区域的伪随机点样本.
In[1]:=
Graphics[{Polygon[CirclePoints[5]], White,
Point[RandomPoint[Polygon[CirclePoints[5]], 200]]},
ImageSize -> Medium]
Out[1]=
在一个利萨茹(Lissajous)区域采集样本点.
In[2]:=
\[ScriptCapitalR] =
ImplicitRegion[-1 + (-1 + 18 x^2 - 48 x^4 + 32 x^6)^2 + (-1 +
18 y^2 - 48 y^4 + 32 y^6)^2 <= 0, {x, y}];
In[3]:=
Graphics[{PointSize[Tiny],
Point[RandomPoint[\[ScriptCapitalR], 10^4]]}, ImageSize -> Medium]
Out[3]=
从 Text 图元中的采集样本点.
In[4]:=
mr = DiscretizeGraphics[Text[Style["\[CapitalSigma]", Bold]], _Text,
MaxCellMeasure -> 0.1];
In[5]:=
Graphics[{PointSize[Tiny], Point[RandomPoint[mr, 10000]]},
ImageSize -> Medium]
Out[5]=
使用蒙特卡洛方法近似一个积分域在一个参数区域的积分.
In[6]:=
region = ParametricRegion[{{s, s t}, s^2 + t^2 <= 1}, {s, t}];
显示完整的 Wolfram 语言输入
Out[7]=
函数在该区域上积分.
In[8]:=
f[{x_, y_}] := x^3 - 2 x^2 y + 4 x^6 - y^5;
val = NIntegrate[f[{x, y}], {x, y} \[Element] region]
Out[8]=
可视化在样本大小增加时,蒙特卡洛统计的收敛.
显示完整的 Wolfram 语言输入
Out[9]=