Hmm I think it may be embarassingly parallel, not sure. My code is a
RegionPlot3D with thousands of inequalities defining many small regions bounded by planes, shown below. I just tried parallelizing it and got :
Parallelize[
RegionPlot3D[
c1^2 x^2 + c1^2 y^2 - 2 c1^3 x y z + c1^2 z^2 < 1 \[And]
N[Sqrt[c1^2 x^2 + c1^2 y^2 + c1^2 z^2], 15] <=
N[Sqrt[3],
8] \[And] \[Not] (c2^2 x^2 + c2^2 y^2 - 2 c2^3 x y z + c2^2 z^2 <
1 \[And]
N[Sqrt[c2^2 x^2 + c2^2 y^2 + c2^2 z^2], 15] <=
N[Sqrt[3], 8]) \[And] \[Not] (otherregions), {x, -1.667,
1.667}, {y, -1.667, 1.667}, {z, -1.667, 1.667}, PlotPoints -> 20,
MaxRecursion -> 1, PlotStyle -> Opacity[0.5], Mesh -> False]]
" cannot be parallelized; proceeding with sequential evaluation." I'm not sure if this would be the proper way to make the code run in parallel.
otherregions has been defined in a previous evaluation as inequalities1 || inequalities2 || inequalities3 ..... inequalities1500 . It is also noteworty is that I want to use a high number of
PlotPoints (1000 or 1500), which seems to be the determining factor is slowing down evaluation. So I guess my question boils down to...
What's the best way to optimize computation speed for a
RegionPlot3D which is defined (mostly) by thousands of small regions bounded by planes (similar to a bunch of little cubes linked together) and uses
PlotPoints > 1000 ?