# theta = np.arccos( GetDot(dna, start, end) ) # print theta*se/(2*np.sin(.5*theta)) # Ecurr = FMC.Boltzmann_Energy(dna.params[start + unwrap]) print dna.params[start + unwrap] print Ecurr minimum = False # optimize the Bert/John parameters while minimum == False: a, Ecurr, minimum = FindMinimum(dna, nucl, a, dyads, start=start, end=end, unwrap=unwrap) Etemp = FMC.Boltzmann_Energy(dna.params[start + unwrap]) print Etemp dna.write2disk(str(file_name) + '_' + str(unwrap) + '_unwrap_optimized') np.savetxt(str(file_name) + '_' + str(unwrap) + '_unwrap_input_params_optimized.dat', a) E_res = np.array([]) for unwrap in range(min_unwrap,max_unwrap+1): unwrap = -unwrap E = [] j = 0 print start print end number_of_iterations = 1000
minimum = False # optimize the Bert/John parameters while minimum == False: a, Ecurr, minimum = FindMinimum(dna, nucl, a, dyads, start=start, end=end, unwrap=unwrap) Etemp = FMC.Boltzmann_Energy(dna.params[start + unwrap]) print Etemp dna.write2disk(str(file_name) + '_' + str(nld) + '_nld_optimized') np.savetxt( str(file_name) + '_' + str(nld) + '_nld_input_params_optimized.dat', a) ##############Optimize linker DNA using Metropolis-Hastings Monte Carlo############## nld_start = 100 nld_end = 17 n = 0 E_res = np.array([]) E_link_series = np.array([]) # for unwrap in range(min_unwrap,max_unwrap+1): for nld in range(int(nld_start), int(nld_end - 1), -1): n += 1