#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Tue Sep 17 15:59:35 2024

@author: sam
"""

import matplotlib.pyplot as plt
from scipy.stats import qmc

sampler = qmc.Sobol(d=2) # generates quasi-random numbers
U = sampler.random_base2(10)

def region(x,y): # same as last question
    if (x**2 + y**2) <= 1:
        return True
    else:
        return False



for i in range(1024): 
    U[i][0] = 2*(U[i][0] - 0.5) # transforms uniform random numbers x range from [0,1] to [-1,1]
    U[i][1] = 2*(U[i][1] - 0.5) # transforms uniform random numbers y range from [0,1] to [-1,1]
    if region(U[i][0],U[i][1]) == True: # if within unit circle
        plt.plot(U[i][0],U[i][1],'.') # plot that number as a dot