Skip to content

Commit

Permalink
Working standalone version - apart from non-python samplers
Browse files Browse the repository at this point in the history
  • Loading branch information
joezuntz committed Dec 14, 2017
1 parent cd1bb17 commit 7809da8
Show file tree
Hide file tree
Showing 71 changed files with 176 additions and 2,957 deletions.
3 changes: 0 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,7 @@
*.a
*.dSYM
cosmosis/datablock/fortran_test
cosmosis/datablock/cosmosis_f90/cosmosis_section_names.F90
cosmosis/datablock/cosmosis_py/section_names.py
cosmosis/datablock/cosmosis_section_names.mod
cosmosis/datablock/section_names.h
cosmosis-standard-library/
cosmosis/names.py
*.mod
Expand Down
13 changes: 8 additions & 5 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -1,18 +1,21 @@
include cosmosis/datablock/libcosmosis.so
include cosmosis/datablock/clamp.hh
include cosmosis/datablock/entry.hh
include cosmosis/datablock/fakearray.hh
include cosmosis/datablock/ndarray.hh
include cosmosis/datablock/datablock.hh
include cosmosis/datablock/exceptions.hh
include cosmosis/datablock/mdarraygen.hh
include cosmosis/datablock/section.
include cosmosis/datablock/section.hh
include cosmosis/datablock/c_datablock.h
include cosmosis/datablock/datablock_logging.h
include cosmosis/datablock/datablock_types.h
include cosmosis/datablock/cosmosis_constants.h
include cosmosis/datablock/datablock_status.h
include cosmosis/datablock/section_names.h
include cosmosis/datablock/cosmosis_f90/cosmosis_section_names.mod
include cosmosis/datablock/cosmosis_f90/cosmosis_types.mod
include cosmosis/datablock/cosmosis_f90/cosmosis_wrappers.mod
include cosmosis/datablock/cosmosis_f90/cosmosis_modules.mod
include cosmosis/datablock/cosmosis_section_names.mod
include cosmosis/datablock/cosmosis_types.mod
include cosmosis/datablock/cosmosis_wrappers.mod
include cosmosis/datablock/cosmosis_modules.mod
include cosmosis/compilers.mk
include cosmosis/subdirs.mk
2 changes: 1 addition & 1 deletion bin/postprocess-py2
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/usr/bin/env python2
import cosmosis.postprocess
import sys
return cosmosis.postprocess.main(sys.argv[1:])
cosmosis.postprocess.main(sys.argv[1:])
2 changes: 1 addition & 1 deletion bin/postprocess-py3
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/usr/bin/env python3
import cosmosis.postprocess
import sys
return cosmosis.postprocess.main(sys.argv[1:])
cosmosis.postprocess.main(sys.argv[1:])
5 changes: 0 additions & 5 deletions cosmosis/Makefile.mine

This file was deleted.

File renamed without changes.
28 changes: 25 additions & 3 deletions cosmosis/configure.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,34 @@


commands = """
export COSMOSIS_SRC_DIR={cosmosis_src_dir}
export C_INCLUDE_PATH=$C_INCLUDE_PATH:{cosmosis_src_dir}
export LIBRARY_PATH=$LIBRARY_PATH:{cosmosis_src_dir}
export C_INCLUDE_PATH=$C_INCLUDE_PATH:{cosmosis_src_dir}/cosmosis/datablock
export CPLUS_INCLUDE_PATH=$C_INCLUDE_PATH:{cosmosis_src_dir}/cosmosis/datablock
export LIBRARY_PATH=$LIBRARY_PATH:{cosmosis_src_dir}/cosmosis/datablock
export COSMOSIS_ALT_COMPILERS=1
""".format(**locals())


if __name__ == '__main__':
print(commands)


# export GSL_LIB=/usr/local/lib
# export GSL_INC=/usr/local/include
# export FFTW_LIBRARY=/usr/local/lib
# export FFTW_INCLUDE_DIR=/usr/local/include
# export CPLUS_INCLUDE_PATH=$C_INCLUDE_PATH
# export LAPACK_LINK=-framework accelerate
# export LAPACK_LINK="-framework accelerate"
# export CFITSIO_INC=/usr/local/incldue
# export CFITSIO_INC=/usr/local/include
# export CFITSIO_LIB=/usr/local/lib
# export COSMOSIS_SRC_DIR=../../
# export COSMOSIS_SRC_DIR=../../cosmosis
# export COSMOSIS_SRC_DIR=../../../cosmosis
# export COSMOSIS_SRC_DIR=/Users/jaz/src/cosmosis-standalone/env-test/lib/python2.7/site-packages/cosmosis-0.0.0-py2.7.egg
# export C_INCLUDE_PATH=$C_INCLUDE_PATH:/Users/jaz/src/cosmosis-standalone/env-test/lib/python2.7/site-packages/cosmosis-0.0.0-py2.7.egg/cosmosis/datablock
# export LIBRARY_PATH=$LIBRARY_PATH:/Users/jaz/src/cosmosis-standalone/env-test/lib/python2.7/site-packages/cosmosis-0.0.0-py2.7.egg/cosmosis/datablock
# export COSMOSIS_ALT_COMPILERS=1
# export LIBRARY_PATH=""
# export C_INCLUDE_PATH=""
1 change: 0 additions & 1 deletion cosmosis/datablock/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ entry_t
*~
datablock_t
fortran_t
section_names.h
c_datablock_double_array_t
c_datablock_int_array_t
c_datablock_complex_array_t
Expand Down
27 changes: 14 additions & 13 deletions cosmosis/datablock/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ else
MEMCHECK_CMD=
endif

all: libcosmosis.so libcosmosis_fortran.so c_datablock_t datablock_t section_t entry_t \
all: libcosmosis.so c_datablock_t datablock_t section_t entry_t \
c_datablock_int_array_t c_datablock_double_array_t c_datablock_complex_array_t \
c_datablock_multidim_double_array_t \
c_datablock_multidim_int_array_t \
Expand All @@ -29,20 +29,19 @@ all: libcosmosis.so libcosmosis_fortran.so c_datablock_t datablock_t section_t e
fake_array_t \
fortran_t \
cosmosis_py/section_names.py \
cosmosis_f90/cosmosis_section_names.F90 \
cosmosis_section_names.F90 \
section_names.h

lib: libcosmosis.so cosmosis_py/section_names.py

clean:
rm -f *.o *.d *.so *.log *.mod cosmosis_f90/*.mod cosmosis_f90/*.o
rm -f *.o *.d *.so *.log *.mod *.mod
rm -f c_datablock_complex_array_t c_datablock_double_array_t c_datablock_int_array_t
rm -f c_datablock_t
rm -f c_datablock_multidim_double_array_t
rm -f c_datablock_multidim_int_array_t
rm -f c_datablock_multidim_complex_array_t
rm -f datablock_t entry_t fortran_t ndarray_t section_t
rm -f section_names.h cosmosis_py/section_names.py cosmosis_f90/cosmosis_section_names.F90
rm -rf *.dSYM/

verify_setup:
Expand Down Expand Up @@ -118,7 +117,7 @@ test_entry: entry_t
@LD_LIBRARY_PATH=.:${LD_LIBRARY_PATH} $(MEMCHECK_CMD) ./$< > $<.log
@/bin/echo ... passed

test_fortran: fortran_t libcosmosis_fortran.so
test_fortran: fortran_t libcosmosis.so
@/bin/echo -n "Running $< "
@LD_LIBRARY_PATH=.:${LD_LIBRARY_PATH} $(MEMCHECK_CMD) ./$< > $<.log
@/bin/echo ... passed
Expand All @@ -131,8 +130,8 @@ test_python:
section_names.h: section_names.txt generate_sections.py
python generate_sections.py section_names.txt c section_names.h

cosmosis_f90/cosmosis_section_names.F90: section_names.txt generate_sections.py
python generate_sections.py section_names.txt fortran cosmosis_f90/cosmosis_section_names.F90
cosmosis_section_names.F90: section_names.txt generate_sections.py
python generate_sections.py section_names.txt fortran cosmosis_section_names.F90

cosmosis_py/section_names.py: section_names.txt generate_sections.py
python generate_sections.py section_names.txt python cosmosis_py/section_names.py
Expand All @@ -147,14 +146,16 @@ cosmosis_py/section_names.py: section_names.txt generate_sections.py
# problem of generating dependencies for the Fortran modules within
# libcomsosis_fortran.so. The tradeoff is worthwhile, unless so many source
# files are added that the build time is excessive.
libcosmosis_fortran.so: cosmosis_f90/cosmosis_section_names.F90 cosmosis_f90/cosmosis_types.F90 cosmosis_f90/cosmosis_wrappers.F90 cosmosis_f90/cosmosis_modules.F90 libcosmosis.so
$(FC) $(FFLAGS) -shared -o $@ $+
libcosmosis.so: cosmosis_section_names.o cosmosis_types.o cosmosis_wrappers.o cosmosis_modules.o datablock.o entry.o section.o c_datablock.o datablock_logging.o
$(FC) $(FFLAGS) -shared -o $@ $+ -lstdc++ -lgfortran

fortran_t: libcosmosis.so cosmosis_test.F90
$(FC) $(FFLAGS) -o $@ cosmosis_test.F90 -L. -lcosmosis -lcosmosis

%.o : %.F90
$(FC) -c $(FFLAGS) $< -o $@

fortran_t: libcosmosis_fortran.so cosmosis_f90/cosmosis_test.F90
$(FC) $(FFLAGS) -o $@ cosmosis_f90/cosmosis_test.F90 -L. -lcosmosis_fortran -lcosmosis

libcosmosis.so: datablock.o entry.o section.o c_datablock.o datablock_logging.o
$(CXX) $(CXXFLAGS) -shared -o $@ $+

datablock_t: datablock_test.cc datablock.hh libcosmosis.so
$(CXX) $(CXXFLAGS) -o $@ datablock_test.cc -L . -lcosmosis
Expand Down
File renamed without changes.
2 changes: 1 addition & 1 deletion cosmosis/datablock/cosmosis_py/lib.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

import os
dirname = os.path.split(__file__)[0]
libpath = os.path.join(dirname, os.path.pardir, os.path.pardir, os.path.pardir, "libcosmosis.so")
libpath = os.path.join(dirname, os.path.pardir, "libcosmosis.so")
dll = ct.cdll.LoadLibrary(libpath)

# We export a symbol in the C code to tell us this
Expand Down
57 changes: 57 additions & 0 deletions cosmosis/datablock/cosmosis_section_names.F90
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@

! This module is auto-generated from the file cosmosis/datablock/section_names.txt.
! Edit that and then re-make to add your own pre-defined section names.

module cosmosis_section_names


implicit none
character(*), parameter :: likelihoods_section = "likelihoods"
character(*), parameter :: data_vector_section = "data_vector"
character(*), parameter :: cosmological_parameters_section = "cosmological_parameters"
character(*), parameter :: halo_model_parameters_section = "halo_model_parameters"
character(*), parameter :: baryon_parameters_section = "baryon_parameters"
character(*), parameter :: shear_calibration_parameters_section = "shear_calibration_parameters"
character(*), parameter :: number_density_params_section = "number_density_params"
character(*), parameter :: post_friedmann_parameters_section = "post_friedmann_parameters"
character(*), parameter :: intrinsic_alignment_parameters_section = "intrinsic_alignment_parameters"
character(*), parameter :: intrinsic_power_section = "intrinsic_power"
character(*), parameter :: galaxy_intrinsic_power_section = "galaxy_intrinsic_power"
character(*), parameter :: matter_intrinsic_power_section = "matter_intrinsic_power"
character(*), parameter :: wl_number_density_section = "wl_number_density"
character(*), parameter :: matter_power_nl_section = "matter_power_nl"
character(*), parameter :: matter_power_lin_section = "matter_power_lin"
character(*), parameter :: matter_galaxy_power_section = "matter_galaxy_power"
character(*), parameter :: galaxy_power_section = "galaxy_power"
character(*), parameter :: shear_xi_section = "shear_xi"
character(*), parameter :: shear_cl_section = "shear_cl"
character(*), parameter :: shear_cl_gg_section = "shear_cl_gg"
character(*), parameter :: shear_cl_gi_section = "shear_cl_gi"
character(*), parameter :: shear_cl_ii_section = "shear_cl_ii"
character(*), parameter :: galaxy_cl_section = "galaxy_cl"
character(*), parameter :: cmb_cl_section = "cmb_cl"
character(*), parameter :: lss_autocorrelation_section = "lss_autocorrelation"
character(*), parameter :: gal_matter_power_lin_section = "gal_matter_power_lin"
character(*), parameter :: linear_cdm_transfer_section = "linear_cdm_transfer"
character(*), parameter :: sigma_r_lin_section = "sigma_r_lin"
character(*), parameter :: sigma_r_nl_section = "sigma_r_nl"
character(*), parameter :: galaxy_xi_section = "galaxy_xi"
character(*), parameter :: galaxy_shear_xi_section = "galaxy_shear_xi"
character(*), parameter :: galaxy_intrinsic_xi_section = "galaxy_intrinsic_xi"
character(*), parameter :: planck_section = "planck"
character(*), parameter :: intrinsic_alignment_field_section = "intrinsic_alignment_field"
character(*), parameter :: fgas_parameters_section = "fgas_parameters"
character(*), parameter :: shear_calibration_section = "shear_calibration"
character(*), parameter :: supernova_params_section = "supernova_params"
character(*), parameter :: bias_field_section = "bias_field"
character(*), parameter :: galaxy_luminosity_function_section = "galaxy_luminosity_function"
character(*), parameter :: distances_section = "distances"
character(*), parameter :: de_equation_of_state_section = "de_equation_of_state"
character(*), parameter :: growth_parameters_section = "growth_parameters"
character(*), parameter :: test_parameters_section = "test_parameters"
character(*), parameter :: mass_function_section = "mass_function"
character(*), parameter :: evs_section = "evs"
character(*), parameter :: clusters_section = "clusters"

end module

File renamed without changes.
File renamed without changes.
File renamed without changes.
51 changes: 51 additions & 0 deletions cosmosis/datablock/section_names.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@

// This header file is auto-generated from the file cosmosis/datablock/section_names.txt.
// Edit that and then re-make to add your own pre-defined section names.

#define LIKELIHOODS_SECTION "likelihoods"
#define DATA_VECTOR_SECTION "data_vector"
#define COSMOLOGICAL_PARAMETERS_SECTION "cosmological_parameters"
#define HALO_MODEL_PARAMETERS_SECTION "halo_model_parameters"
#define BARYON_PARAMETERS_SECTION "baryon_parameters"
#define SHEAR_CALIBRATION_PARAMETERS_SECTION "shear_calibration_parameters"
#define NUMBER_DENSITY_PARAMS_SECTION "number_density_params"
#define POST_FRIEDMANN_PARAMETERS_SECTION "post_friedmann_parameters"
#define INTRINSIC_ALIGNMENT_PARAMETERS_SECTION "intrinsic_alignment_parameters"
#define INTRINSIC_POWER_SECTION "intrinsic_power"
#define GALAXY_INTRINSIC_POWER_SECTION "galaxy_intrinsic_power"
#define MATTER_INTRINSIC_POWER_SECTION "matter_intrinsic_power"
#define WL_NUMBER_DENSITY_SECTION "wl_number_density"
#define MATTER_POWER_NL_SECTION "matter_power_nl"
#define MATTER_POWER_LIN_SECTION "matter_power_lin"
#define MATTER_GALAXY_POWER_SECTION "matter_galaxy_power"
#define GALAXY_POWER_SECTION "galaxy_power"
#define SHEAR_XI_SECTION "shear_xi"
#define SHEAR_CL_SECTION "shear_cl"
#define SHEAR_CL_GG_SECTION "shear_cl_gg"
#define SHEAR_CL_GI_SECTION "shear_cl_gi"
#define SHEAR_CL_II_SECTION "shear_cl_ii"
#define GALAXY_CL_SECTION "galaxy_cl"
#define CMB_CL_SECTION "cmb_cl"
#define LSS_AUTOCORRELATION_SECTION "lss_autocorrelation"
#define GAL_MATTER_POWER_LIN_SECTION "gal_matter_power_lin"
#define LINEAR_CDM_TRANSFER_SECTION "linear_cdm_transfer"
#define SIGMA_R_LIN_SECTION "sigma_r_lin"
#define SIGMA_R_NL_SECTION "sigma_r_nl"
#define GALAXY_XI_SECTION "galaxy_xi"
#define GALAXY_SHEAR_XI_SECTION "galaxy_shear_xi"
#define GALAXY_INTRINSIC_XI_SECTION "galaxy_intrinsic_xi"
#define PLANCK_SECTION "planck"
#define INTRINSIC_ALIGNMENT_FIELD_SECTION "intrinsic_alignment_field"
#define FGAS_PARAMETERS_SECTION "fgas_parameters"
#define SHEAR_CALIBRATION_SECTION "shear_calibration"
#define SUPERNOVA_PARAMS_SECTION "supernova_params"
#define BIAS_FIELD_SECTION "bias_field"
#define GALAXY_LUMINOSITY_FUNCTION_SECTION "galaxy_luminosity_function"
#define DISTANCES_SECTION "distances"
#define DE_EQUATION_OF_STATE_SECTION "de_equation_of_state"
#define GROWTH_PARAMETERS_SECTION "growth_parameters"
#define TEST_PARAMETERS_SECTION "test_parameters"
#define MASS_FUNCTION_SECTION "mass_function"
#define EVS_SECTION "evs"
#define CLUSTERS_SECTION "clusters"

File renamed without changes.
Loading

0 comments on commit 7809da8

Please sign in to comment.