def test_DLLM_wrapper_TCl(self): config_dict = self.__get_base_config_dict() config_dict['test.DLLM.type']='TargetCl' config_dict['test.DLLM.target_Cl']=0.5 DLLMWrap = DLLMWrapper('test', verbose=0) DLLMWrap.configure(config_dict) DLLMWrap.set_out_format('numpy') DLLMWrap.set_grad_format('numpy') DLLMWrap.analysis() Cl=DLLMWrap.get_F_value('Cl') assert((Cl-0.5)<1.e-8)
def test_DLLM_wrapper_TLift(self): config_dict = self.__get_base_config_dict() config_dict['test.DLLM.type']='TargetLift' config_dict['test.DLLM.target_Lift']=769200. DLLMWrap = DLLMWrapper('test', verbose=0) DLLMWrap.configure(config_dict) DLLMWrap.set_out_format('numpy') DLLMWrap.set_grad_format('numpy') DLLMWrap.analysis() Lift=DLLMWrap.get_F_value('Lift') assert((Lift-769200.)<1.e-2)
config_dict['cond1.DLLM.max_iterations']=100 config_dict['cond1.DLLM.gamma_file_name']='gamma.dat' config_dict['cond1.DLLM.target_Cl']=0.5 DLLMcond1=DLLMWrapper('cond1', verbose=0) DLLMcond1.configure(config_dict) DLLMcond1.set_out_format('numpy') DLLMcond1.set_grad_format('numpy') x0=DLLMcond1.get_x0() print 'dv array shape',x0.shape print 'dv_array=',x0 val_grad=FDValidGrad(2,DLLMcond1.run,DLLMcond1.run_grad,fd_step=1.e-8) ok,df_fd,df=val_grad.compare(x0,treshold=1.e-6,split_out=True,return_all=True) for j in xrange(len(df[:,0])): fid=open('gradient_file'+str(j)+'.dat','w') for i in xrange(len(x0)): fid.write(str(i)+' '+str(df_fd[j,i])+' '+str(df[j,i])+'\n') fid.close() print 'Cl = ',DLLMcond1.get_F_value('Cl'), 'target =',0.5 print '\n****************************************************' if ok: print 'DLLMWrapper TargetCl gradients are valid.' else: print 'DLLMWrapper TargetCl gradients are not valid!' print '****************************************************'