Compare the Conjugate Gradient that has been implemented with the minimizer provided by SCIPY
"""
importargparse
importnumpyasnp
fromconjugate_gradientimportconjugate_gradient
fromoptimizerimportoptimizer
importplot
# Initiate and describe parser
parser=argparse.ArgumentParser(description='Find the minimizer of symmetric definite systems of linear equations by using the conjugate gradient method')
# Define type of arguments to be received
# Receive a list of elements to build matrix A and vector b
help='enter 6 numbers: first 4 for matrix A in the order (1,1) (1,2) (2,1) (2,2), and last 2 for vector b. NOTE: matrix A in exercise 2 is equal to 2 * matrix of size 2x2 defined in exercise 1')
# Receive the type of minimizer
parser.add_argument('--method',default='scipy',
help='choose method to perform minimization, options are: "ourCG" or "scipy", if you do not define method then by default is "scipy"')
# Receive instruction whether plor or not
parser.add_argument('--plot',default='not',
help='indicate if you want to plot, options are: "yes" or "not", if you do not indicate any option then by default is "not"')