I have a script in python that allows me to input values for ai and then it outputs Fmin. I have these 11 values which when input, should return an Fmin of about 0 (which it does):

Enter a value of a[0]: .09091

Enter a value of a[1]: .16529

Enter a value of a[2]: .14876

Enter a value of a[3]: .13223

Enter a value of a[4]: .11570

Enter a value of a[5]: .09917

Enter a value of a[6]: .08264

Enter a value of a[7]: .06612

Enter a value of a[8]: .04959

Enter a value of a[9]: .03306

Enter a value of a[10]: .01653

Question:I want to revise this script such that I can use something like Nedler Mead minimization in order to see what values of ai Minimize this function. Can someone help write this new script? This is the script I have so far, which correspnds to the equation circled in black which just allows me in input those ai values, however, I don’t want to input values of ai anymore, but it tell me which are the best. I’m thinking nedler mead is the routine I will try to use. Can someone help start me off on writing it? This is the code That basically lets me plug in ai values:

import math

m = 11

first = 0

second = 0

pi = math.pi

# delare an empty list to hold values of a

a = []

# getting input from user

for i in range(0,m):

a.append( float(input(‘Enter a value of a[‘ + str(i) + ‘]: ‘)) )

# calculation for summation

# in function range(1,m), 1 is included and m is excluded. So effectively we go from 1 to m-1.

first = 0.0

second = 0.0

for p in range(1, m):

temporary_sum_first = 0.0

temporary_sum_second = 0.0

for i in range(0, m):

# this is the summation inside the square brackets

temporary_sum_first += (a[i] * math.cos(2*pi*i*p/m))

temporary_sum_second += ((-a[i])*i* math.sin(2*pi*i*p/m))

# now square it and sum it

first = first + math.pow(temporary_sum_first, 2)

second = second + math.pow(temporary_sum_second, 2)

# at this point, we have finished summing i=0 to i=m-1 for one value of p, we continue this for m-1 values of p.

Fmin=first+second

print(“Summation value:”)

print(Fmin)

***I have posted this question twice, and the two responses were exactly the same and not particularly helpful.*

## Expert Answer

m = 11

first = 0

second = 0

pi = math.pi

# delare an empty list to hold values of a

a = []

# getting input from user

for i in range(0,m):

a.append( float(input(‘Enter a value of a[‘ + str(i) + ‘]: ‘)) )

# calculation for summation

# in function range(1,m), 1 is included and m is excluded. So effectively we go from 1 to m-1.

first = 0.0

second = 0.0

for p in range(1, m):

temporary_sum_first = 0.0

temporary_sum_second = 0.0

for i in range(0, m):

# this is the summation inside the square brackets

temporary_sum_first += (a[i] * math.cos(2*pi*i*p/m))

temporary_sum_second += ((-a[i])*i* math.sin(2*pi*i*p/m))

# now square it and sum it

first = first + math.pow(temporary_sum_first, 2)

second = second + math.pow(temporary_sum_second, 2)

# at this point, we have finished summing i=0 to i=m-1 for one value of p, we continue this for m-1 values of p.

Fmin=first+second

print(“Summation value:”)

print(Fmin)