def test_init_from_python_with_add(self):
     # create the list of Fisher matrices:
     fisher_list = []
     matrix = np.identity(3)
     for j in range(3):
         for i in range(3):
             matrix[i, i] = i + j + 1
         param_names = ['pa' + str(i + j) for i in range(3)]
         param_names_latex = ['m' + str(i) for i in range(3)]
         fiducial = [float(i) for i in range(3)]
         fisher = fm.fisher_matrix(fisher_matrix=matrix,
                                   param_names=param_names,
                                   param_names_latex=param_names_latex,
                                   fiducial=fiducial)
         fisher.name = 'fisher' + str(j + 1)
         fisher_list.append(fisher)
     fisher_list_test = fpa.CosmicFish_FisherAnalysis()
     fisher_list_test.add_fisher_matrix(fisher_list)
     # quality check:
     assert fisher_list_test.fisher_name_list == [
         fish.name for fish in fisher_list_test.fisher_list
     ]
     assert fisher_list_test.fisher_name_list == [
         fish.name for fish in fisher_list
     ]
示例#2
0
 def setup(self):
     # create a list of fisher matrices:
     fisher_1 = fm.fisher_matrix(file_name=test_input +
                                 '/dummy_fisher_matrix.dat')
     fisher_1.name = 'realistic fisher'
     self.fisher_list_test = fpa.CosmicFish_FisherAnalysis(
         fisher_list=fisher_1)
 def test_init_from_path_search_true(self):
     # create the list of Fisher matrices:
     fisher_list_test = fpa.CosmicFish_FisherAnalysis(
         fisher_path=test_input, search_fisher_guess=True)
     # quality check:
     assert fisher_list_test.fisher_name_list == [
         fish.name for fish in fisher_list_test.fisher_list
     ]
 def test_init_search(self):
     # create the two list with different methods:
     fisher_list_test_1 = fpa.CosmicFish_FisherAnalysis(
         fisher_path=test_input, search_fisher_guess=False)
     fisher_list_test_2 = fpa.CosmicFish_FisherAnalysis(
         fisher_path=test_input, search_fisher_guess=True)
     fisher_list_test_3 = fpa.CosmicFish_FisherAnalysis(
         fisher_path=[
             test_input + '/dummy_fisher_matrix.dat',
             test_input + '/dummy_fisher_matrix_2.dat',
             test_input + '/dummy_fisher_matrix_derived.dat'
         ],
         search_fisher_guess=True)
     # check wether they catch the same fishers:
     for fish_1 in fisher_list_test_1.fisher_list:
         assert fish_1 in fisher_list_test_2.fisher_list
     for fish_2 in fisher_list_test_2.fisher_list:
         assert fish_2 in fisher_list_test_3.fisher_list
 def test_init_with_add_raises(self):
     # init the list:
     fisher_list_test = fpa.CosmicFish_FisherAnalysis()
     # check first raise:
     assert_raises(ValueError, fisher_list_test.add_fisher_matrix, [0.0])
     # check second raise:
     matrix = np.identity(3)
     for i in range(3):
         matrix[i, i] = i + 1
     fisher = fm.fisher_matrix(fisher_matrix=matrix)
     # add a fisher without a name:
     fisher_list_test.add_fisher_matrix(fisher)
     # add another fisher with the same (empty) name:
     assert_raises(ValueError, fisher_list_test.add_fisher_matrix, fisher)
 def setup(self):
     # create a list of fisher matrices:
     fisher_list = []
     matrix = np.identity(3)
     for j in range(3):
         for i in range(3):
             matrix[i, i] = i + j + 1
         param_names_latex = ['m' + str(i) for i in range(3)]
         fiducial = [float(i) for i in range(3)]
         fisher = fm.fisher_matrix(fisher_matrix=matrix,
                                   param_names_latex=param_names_latex,
                                   fiducial=fiducial)
         fisher.name = 'fisher' + str(j + 1)
         fisher_list.append(fisher)
     self.fisher_list_test = fpa.CosmicFish_FisherAnalysis(
         fisher_list=fisher_list)
 def setup(self):
     # create a list of fisher matrices:
     fisher_list = []
     num_param = 4
     num_fish  = 3
     matrix = np.identity(num_param)
     for j in xrange(num_fish):
         for i in xrange(num_param):
             #matrix[i,i] = i+j+1
             matrix[i,i] = (i+1)/float(j+1)
         param_names_latex = [ 'm'+str(i) for i in xrange(num_param) ] 
         fiducial = [ float(i) for i in xrange(num_param) ]
         fisher = fm.fisher_matrix( fisher_matrix=matrix, param_names_latex=param_names_latex, fiducial=fiducial )
         fisher.name = 'fisher'+str(j+1)
         fisher_list.append( fisher )
     self.fisher_list_test = fpa.CosmicFish_FisherAnalysis(fisher_list=fisher_list)
示例#8
0
        outroot = args.outroot
    else:
        outroot = os.path.join(os.path.splitext(files[0])[0])
    params = args.params

    output_format = args.format
    if output_format is None:
        output_format = 'pdf'

    # warning for the ini file:
    if args.ini_file is not None:
        raise ValueError('Not yet implemented')

    # import Fisher matrices:
    if args.derived:
        fishers = fpa.CosmicFish_FisherAnalysis(fisher_path=files,
                                                with_derived=True)
    else:
        fishers = fpa.CosmicFish_FisherAnalysis(fisher_path=files,
                                                with_derived=False)

    # manipulating Fisher:
    if args.sum_fish is not None:
        fishers_temp = fpa.CosmicFish_FisherAnalysis()
        fisher_list = fishers.get_fisher_matrix()
        for fish in fisher_list[1:]:
            fisher_list[0] = fisher_list[0] + fish
        fisher_list[0].name = args.sum_fish
        fishers_temp.add_fisher_matrix(fisher_list[0])
        fishers = fishers_temp

    if args.eliminate:
        else:
            files = []
            #for si in range(summax):
            #    if sum_fish[si][0]:
            #        print("entering extend")
            #        files.extend(sum_fish[si])
            print 'No single fishers to plot, using only the combined ones'

    print(fishnames)
    print("files")
    print(files)
    #MOD: too much putput here!
    summing = range(summax)

    if derived is not False:
        fishers = fpa.CosmicFish_FisherAnalysis(fisher_path=files,
                                                with_derived=True)
        for si in range(summax):
            if sum_fish[si][0]:
                print 'NOT HERE'
                summing[si] = fpa.CosmicFish_FisherAnalysis(
                    fisher_path=sum_fish[si], with_derived=True)
    else:
        fishers = fpa.CosmicFish_FisherAnalysis(fisher_path=files,
                                                with_derived=False)
        for si in range(summax):
            if sum_fish[si][0]:
                print("enter sum pair")
                summing[si] = fpa.CosmicFish_FisherAnalysis(
                    fisher_path=sum_fish[si], with_derived=False)

    fishers_temp = fpa.CosmicFish_FisherAnalysis()