(n, num_samples, offset=(0, 0), remap=False)
| 20 | return [n / num_samples] + halton_sequence(dim - 1, n) |
| 21 | |
| 22 | def sphere_hammersley_sequence(n, num_samples, offset=(0, 0), remap=False): |
| 23 | u, v = hammersley_sequence(2, n, num_samples) |
| 24 | u += offset[0] / num_samples |
| 25 | v += offset[1] |
| 26 | if remap: |
| 27 | u = 2 * u if u < 0.25 else 2 / 3 * u + 1 / 3 |
| 28 | theta = np.arccos(1 - 2 * u) - np.pi / 2 |
| 29 | phi = v * 2 * np.pi |
| 30 | return [phi, theta] |
no test coverage detected