Skip to content
Merged
Show file tree
Hide file tree
Changes from 250 commits
Commits
Show all changes
1414 commits
Select commit Hold shift + click to select a range
9023458
Cover enumeration and class(...) return paths in the test script
claude May 3, 2026
a242ef1
Use short, scoped Fortran-local names to avoid 63-char limit
claude May 3, 2026
10fd55f
Support 1D deferred-shape numeric arrays as constructor/method args
claude May 3, 2026
8c2ccb2
Add outputTimesList to the test script — exercises 1D-array arg path
claude May 3, 2026
488589b
Skip output / allocatable array args; apply check to method args too
claude May 3, 2026
5142a32
fix: Correct indexing offset bug
abensonca May 3, 2026
b2b2b71
Support fixed-size 1D numeric arrays as args and return values
claude May 3, 2026
345b013
Test fixed-size 1D arrays end-to-end via radiativeTransferPhotonPacket
claude May 3, 2026
4460a78
Add libraryInterfacesAudit.py — survey class-coverage gaps
claude May 4, 2026
0b385cb
fix: Reduce number of parallel jobs in library build
abensonca May 4, 2026
bbbc56c
ci: install numpy for the Python-interface jobs
claude May 4, 2026
19d4f12
fix: Reduce parallelism in library build further to test if this is c…
abensonca May 4, 2026
bf307b9
fix: Add a `devcontainer.json` for testing
abensonca May 4, 2026
d98fc7c
Split per-impl constructor wrappers into their own .F90 files
claude May 5, 2026
58d74f3
Merge pull request #1100 from galacticusorg/claude/expand-interface-r…
abensonca May 6, 2026
edb1b88
fix: Merge branch 'master' into gfortranFinalization
abensonca May 6, 2026
cc4aef1
fix: Merge branch 'gfortranFinalization' into dmConstraintPipeline
abensonca May 6, 2026
42ee65f
feat: Expand library class registration to closure of audit-ready cla…
claude May 6, 2026
88fcc08
fix: Strip Fortran continuation characters from captured constructor …
claude May 6, 2026
918fe21
feat: Extend known-shared-type module table for newly registered classes
claude May 6, 2026
b9f167d
feat: Add more shared-type module overrides
claude May 6, 2026
f042e25
fix: Expose enumerationDestroyStubsType so the library wrapper can im…
claude May 6, 2026
e6427fb
fix: Reject procedure-pointer arguments in _unsupported_arg
claude May 6, 2026
94d7705
fix: Map integer(kind_int8) to c_long in assign_c_types
claude May 6, 2026
e357ec8
fix: Recognise <short>Internal constructor names alongside Constructo…
claude May 6, 2026
9f52aef
fix: Escape Python reserved words when emitting method names
claude May 6, 2026
8d39caa
fix: Escape Python reserved words appearing as constructor/method arg…
claude May 6, 2026
f68828c
test: Cover Python-interface fixes from the dependency-closure batch
claude May 6, 2026
d9c6d38
feat: Support 1D fixed-length character arrays in the wrapper pipeline
claude May 6, 2026
a0e0e71
fix: Test computationalDomainSpherical, not Cartesian3D / cylindrical
claude May 6, 2026
eb66c09
feat: Support 2D deferred-shape numeric arrays in the wrapper pipeline
claude May 6, 2026
7d4f13c
fix: Set visubilities and intents to allow library compiles
abensonca May 7, 2026
2d16bee
fix: Add entry to shared types dict
abensonca May 7, 2026
94c2712
fix: `isComoving` arguments do not need to be optional
abensonca May 7, 2026
8d82749
feat: Add outputAnalysisTargetData functionClass for bundling 1D-anal…
claude May 7, 2026
9c2f934
fix: Fix reading of covariance target data from a parameter file
abensonca May 7, 2026
3f6d083
fix: Restore variables to hold directly-read parameter data
abensonca May 7, 2026
817d5c0
fix: Populate descriptor-shadow fields and correct covariance reshape
claude May 7, 2026
daed9ca
refactor: Replicate targetData_ refactor for volume and scatter Funct…
claude May 7, 2026
713a4e3
refactor: Migrate luminosityFunction call site to outputAnalysisTarge…
claude May 7, 2026
e22e613
refactor: Migrate batch 1 of subclass call sites to outputAnalysisTar…
claude May 7, 2026
8e1e575
refactor: Migrate batch 2 of subclass call sites to outputAnalysisTar…
claude May 7, 2026
a06b015
refactor: Migrate batch 3 of subclass call sites (Local_Group + keywo…
claude May 7, 2026
8d96fd6
fix: Remove remaining references to target value and covariance that …
abensonca May 7, 2026
3d125b4
refactor: Move inline outputAnalysisTargetDataStandard builds to loca…
claude May 7, 2026
b0bfee7
fix: Fix mangled constructor calls
abensonca May 7, 2026
e316e5a
feat: Register outputAnalysisTargetData in libraryClasses.xml
claude May 7, 2026
e0dfc09
fix: Add missing module import
abensonca May 7, 2026
fc3e2d5
fix: Fix mangle constructor call
abensonca May 7, 2026
4841142
test: Round-trip outputAnalysisTargetDataStandard + signature check
claude May 7, 2026
fd3fa97
fix: Optional-array support in the wrapper pipeline
claude May 7, 2026
86f9e0e
fix: Strip inner c_size_t wrap on optional-array count companions
claude May 7, 2026
822da00
fix: Auto-encode str to bytes for c_char_p wrapper args
claude May 7, 2026
35d5af1
fix: Attempt to go back to using 4 CPUs for Linux library build in CI/CD
abensonca May 7, 2026
d35bd0e
fix: Escape underscore in LaTeX
abensonca May 7, 2026
9dbc2fe
fix: Drop integer(omp_lock_kind) args from wrapper
claude May 8, 2026
e9dca3d
Merge pull request #1106 from galacticusorg/claude/improve-dependency…
abensonca May 8, 2026
c8be358
feat: Close library coverage to 198/198 functionClasses
claude May 8, 2026
520625e
test: Cover varying_string + polymorphic-list array constructor args
claude May 8, 2026
a1345bf
fix: Import <class>Class for polymorphic-list-array GetPtr interface
claude May 8, 2026
abe4e3e
fix: Correct copy-pasted class-type descriptors in \refClass docstrings
claude May 8, 2026
62cd068
fix: Normalize singular/plural and clear-bug class-type descriptors
claude May 8, 2026
8e4957d
fix: Repair structurally-broken \refClass docstrings
claude May 8, 2026
cba02b3
fix: Gate polymorphic-list-array on _SHARED_TYPE_MODULES registration
claude May 8, 2026
003b369
fix: Force libgalacticus_classes.d regen when impl set shrinks
claude May 8, 2026
705cfb3
fix: Manual fixes to some class descriptions in constructors that wer…
abensonca May 8, 2026
4c51ed3
feat: Report per-impl drops in the closure audit
claude May 8, 2026
f9815c5
fix: Set public visibility for enumerations used in constructors
abensonca May 8, 2026
4943130
fix: Mark an argument as unused
abensonca May 8, 2026
32500d2
docs: Fix Coding.tex typos and document empty Galacticus subpackages
claude May 9, 2026
4b77b0b
refactor: Convert leading # header comments to PEP 257 module docstrings
claude May 9, 2026
6ec4044
docs: Update Coding.tex node-builder sections for the Python port
claude May 9, 2026
00a967e
fix: Remove obsoleted `createFunction` code
abensonca May 9, 2026
3830654
perf: Hoist loop-invariant ordering check in searchArray
claude May 9, 2026
6871771
docs: Fix broken link to extractContributors.py in CONTRIBUTING.md
claude May 9, 2026
4999e3b
Add pip ecosystem to Dependabot config
claude May 9, 2026
dd50f80
fix: Space-pad varying_string-array elements before numpy packs them
claude May 9, 2026
7a6227b
docs: Add report of inline citations needing \cite{} conversion
claude May 9, 2026
35faced
docs: Add citations from !!{...!!} LaTeX docstring blocks to report
claude May 9, 2026
209890d
docs: Filter citation report to LaTeX-rendered contexts only
claude May 9, 2026
b5b7ef3
docs: Replace inline author-year citations with \cite{}/\citep{} comm…
claude May 9, 2026
9d8dfbe
Delete CITATION_REPORT.md
abensonca May 9, 2026
914d1c0
Merge pull request #1109 from galacticusorg/fixRemoveCreateFunction
abensonca May 10, 2026
263c8b6
Merge pull request #1110 from galacticusorg/claude/review-fortran-cod…
abensonca May 10, 2026
cb3339f
Merge pull request #1108 from galacticusorg/claude/fix-docstring-erro…
abensonca May 10, 2026
35b2b40
Merge pull request #1107 from galacticusorg/claude/complete-function-…
abensonca May 10, 2026
799cd19
fix: Merge branch 'claude/simple-codebase-improvement-5B5HN' into dmC…
abensonca May 10, 2026
2e16d9b
fix: Merge branch 'claude/add-dependabot-pip-config-Z3Osb' into dmCon…
abensonca May 10, 2026
a1e5b12
fix: Merge branch 'claude/improve-documentation-CkEIC' into dmConstra…
abensonca May 10, 2026
2f266e2
fix: Merge branch 'claude/rewrite-coding-python-cgFmg' into dmConstra…
abensonca May 11, 2026
089ec40
fix: Merge branch 'claude/convert-to-docstrings-CAZRy' into dmConstra…
abensonca May 11, 2026
544df60
fix: Merge branch 'claude/fix-fortran-citations-jGuNF' into dmConstra…
abensonca May 11, 2026
8ca7299
feat: Add libraryClasses.xml overrides for class(*) constructor args
claude May 11, 2026
e6fcaa0
feat: Teach libraryInterfacesAudit.py to read class(*) overrides
claude May 11, 2026
3c4bbf1
feat: Accept abstract-intermediate class args via select-type narrowing
claude May 11, 2026
3f09d2b
test: Cover the abstract-intermediate class-arg path end-to-end
claude May 11, 2026
ba6c4ff
feat: Support `value="null"` constructor-arg overrides for callback e…
claude May 11, 2026
f87e4cc
fix: Suppress signature declaration for args missing from bind(c) sig
claude May 11, 2026
e210872
feat: Accept logical(:) and explicit-lower-bound 1D array constructor…
claude May 11, 2026
e8be5a2
test: Fix OndaroMallea coefficientsA size and downgrade luminosity tests
claude May 11, 2026
622c919
fix: Guard generated __del__ against partially-constructed objects
claude May 11, 2026
09b2704
feat: Accept arbitrary-rank fixed-shape numeric constructor args
claude May 11, 2026
9b70493
feat: Support `value="absent"` override for dropping optional args
claude May 11, 2026
08700dd
fix: Skip absent-filled args in build_fortran_reassignments
claude May 11, 2026
e302604
fix: ctypes_arg_types must skip args absent from bind(c) signature
claude May 11, 2026
080da58
revert: Drop massDistributionGaussianEllipsoid value="absent" override
claude May 11, 2026
54f6a62
feat: Disambiguate multi-Internal constructors via libraryClasses.xml…
claude May 11, 2026
bf93652
Merge pull request #1112 from galacticusorg/claude/audit-library-inte…
abensonca May 12, 2026
d7cc1c6
feat: Extend libraryInterfacesAudit.py to walk method directives
claude May 12, 2026
d6e6910
feat: Accept kind-aliased integer method return types
claude May 12, 2026
8be9d13
test: Cover the kind-aliased method return-type path
claude May 12, 2026
44ec3c1
feat: Accept 1D allocatable / dynamic-size returns and in-place inout…
claude May 12, 2026
7425749
fix: Map default-kind `real` args to `c_float` in assign_c_types
claude May 12, 2026
7c4047f
test: Replace posteriorSampleStateSimple with variogramExponential fo…
claude May 12, 2026
3159330
fix: Skip ctype re-wrap in python_call_code when py_pass_as is pre-wr…
claude May 12, 2026
ef130c2
feat: Accept nested-paren and 2D dynamic-size method return types
claude May 12, 2026
2407441
add benchmark harness for numerical interpolation
claude May 13, 2026
7fd1223
factor benchmark utilities into a shared module
claude May 13, 2026
d3c54cf
test: Replace inspect.signature with hasattr-only exposure checks
claude May 13, 2026
a223ea8
fix: Add function to compute the difference in the error function bet…
abensonca May 13, 2026
497271f
feat: Allow evaluation of logical parameters
abensonca May 13, 2026
f818098
fix: When initializing state to a specified position, apply mapping t…
abensonca May 13, 2026
9b426e6
feat: Make evaluation of progenitor mass functions more robust
abensonca May 13, 2026
fa619f7
feat: Allow input of the `Rs_Klypin` property
abensonca May 13, 2026
b7e0370
feat: Add an entry for the `hostedRootID` property
abensonca May 13, 2026
fd1bb32
fix: Remove mention of `[randomize]` from the class description as it…
abensonca May 13, 2026
cef3f65
feat: Include counts in parent bins in the output
abensonca May 13, 2026
6233be9
fix: Add missing HDF5 access lock sets
abensonca May 13, 2026
eb34d84
feat: Allow spin and concentration distributions to be computed in bi…
abensonca May 13, 2026
59fc820
feat: Make evaluation of progenitor mass functions more robust
abensonca May 13, 2026
58c7819
feat: Extend simulations analysis script to compute progenitor mass f…
abensonca May 13, 2026
61b02db
feat: Add spin analysis parameter file
abensonca May 13, 2026
e736157
fix: Remove obsoleted version element from generated XML
abensonca May 13, 2026
f75d46e
fix: Correct misnamed `re` (was `res`)
abensonca May 13, 2026
9e091c9
fix: Incorporate progenitor mass functions into the constraints pipeline
abensonca May 13, 2026
11a54f7
feat: Wait for files to appear during simulations analysis
abensonca May 13, 2026
56f6d50
Merge pull request #1114 from galacticusorg/claude/support-function-c…
abensonca May 13, 2026
4d8a382
fix: Correct missing `d0` in a double precision constant
abensonca May 13, 2026
77151f5
Fix Python-Interface-MacOS job to use MacPorts python3
claude May 14, 2026
5f77cb6
scope cold-path locals in standardInterpolate to avoid finalizer cost
claude May 14, 2026
c54524a
chore: Ignore Jupyter notebook checkpoint files
abensonca May 15, 2026
256e048
fix: Skip library interface generation for non-library builds
abensonca May 15, 2026
89a60f3
refactor: Consolidate library build detection into `IS_LIB_BUILD` flag
abensonca May 15, 2026
1d20bf9
Merge pull request #1116 from galacticusorg/claude/fix-macos-python-i…
abensonca May 15, 2026
bf22ec9
fix: Move `endif` to correctly guard library build rules
abensonca May 15, 2026
6273db4
fix: Merge branch 'master' into gfortranFinalization
abensonca May 15, 2026
3065096
fix: Merge branch 'gfortranFinalization' into dmConstraintPipeline
abensonca May 15, 2026
979c186
chore(doc): remove local file paths from bibliography entries
abensonca May 15, 2026
2430be5
amortize age locate across metallicity slices in standardInterpolate
claude May 15, 2026
dc9d5e5
tighten interpolatorLinearFactors hot path
claude May 15, 2026
5569a06
Revert "tighten interpolatorLinearFactors hot path"
claude May 16, 2026
3627a61
replace gsl_interp_accel_find with pure-Fortran cached binary search
claude May 16, 2026
e95d836
docs: update references from perl scripts to their python-ported equi…
abensonca May 16, 2026
0f5ea8a
style: reformat benchmark sources and use `Error_Report` in benchmarks
abensonca May 16, 2026
8228b21
chore(words): add new entries to spellcheck dictionary
abensonca May 16, 2026
ba59698
Merge pull request #1119 from galacticusorg/fixNonLibraryBuilds
abensonca May 16, 2026
674ddbb
Merge pull request #1121 from galacticusorg/claude/optimize-interpola…
abensonca May 17, 2026
5d0ee51
chore(workaroundChecker): drop stale Perl-era references
claude May 18, 2026
24f49c1
refactor(propertyExtractor): scope cold-path locals to block
abensonca May 18, 2026
3b7fa1c
style(testSuite): fix indentation in darkMatterOnlySubHalos validation
abensonca May 18, 2026
142c0e7
test(regressions): use null satellite component in ludlow scale regre…
abensonca May 18, 2026
3148b72
refactor(satelliteOrbit): move orbit initialization into a `nodeOpera…
abensonca May 18, 2026
23263e8
refactor(nodeEvolver): drop unused `nodeMergerTask` event hook
abensonca May 18, 2026
81ca108
chore(parametersMigrate): add migration for `satelliteOrbit` nodeOper…
abensonca May 18, 2026
ab1cbec
chore(parameters): refresh `lastModified` revisions after `satelliteO…
abensonca May 18, 2026
1240c41
feat(benchmarks): add microbenchmark suite for rootFinder
claude May 18, 2026
effa105
fix(benchmarks): use delta stopping criterion for derivative-based ro…
claude May 18, 2026
c6fc48b
perf(rootFinder): gate reportState calls at the call site
claude May 18, 2026
a35b11a
perf(rootFinder): skip redundant endpoint eval in degenerate bracket
claude May 18, 2026
36de8a3
perf(rootFinder): hoist sign-expectation select cases out of expansio…
claude May 18, 2026
054cd07
Revert "perf(rootFinder): hoist sign-expectation select cases out of …
claude May 18, 2026
2e890e2
perf(rootFinder): cache active-finder pointer for GSL callback hot path
claude May 18, 2026
b6dcd60
fix(rootFinder): mark currentFinders TARGET for pointer association
claude May 18, 2026
5c90fb6
style(rootFinder): split benchmark callbacks into own file and tidy f…
abensonca May 18, 2026
6c5c242
docs(rootFinder): clarify currentFinder pointer-vs-realloc invariant
claude May 18, 2026
f10eb72
docs(benchmarks): clarify what *_bracket_values measures
claude May 18, 2026
8d1de6e
perf(nfw): use closed form for NFW logarithmic density gradient
claude May 18, 2026
8d7d2d3
perf(tidal): reuse densityLogSlope and velocityDispersion1D in gradient
claude May 18, 2026
24456ce
test(nfw): compare series approximation vs exact velocity dispersion
claude May 18, 2026
41aabde
perf(nfw): use series approximation for velocity dispersion by default
claude May 18, 2026
79bba04
perf(nfw): evaluate velocity-dispersion series via Horner's method
claude May 18, 2026
f877462
style: tidy formatting in NFW and tidal heating sources
abensonca May 18, 2026
2e3ad57
refactor(satelliteOrbit): initialize subhalo orbits upon merging
abensonca May 19, 2026
c5c6653
test(baryonicSuppression): simplify validation parameter files
abensonca May 19, 2026
d74eed0
Update merger tree converter references from rockstar2galacticus to a…
claude May 19, 2026
a59da26
Add astrosylva documentation link
claude May 19, 2026
9ccff92
Reference astrosylva in Galacticus merger tree importer description
claude May 19, 2026
1f2bcb6
style: tidy whitespace alignment in linear barrier first crossing class
abensonca May 19, 2026
7927201
feat: add multi modifier chaining merger tree branching probability m…
abensonca May 19, 2026
204e322
feat: add Zhang2014 environment-dependent branching probability modifier
abensonca May 19, 2026
82c1d20
Track per-task peak memory usage in build profiler
claude May 20, 2026
249bd0e
fix(Gaussian_ellipsoid): perform table writes only under an exclusive…
claude May 20, 2026
1eb3d52
test(baryonicSuppression): use `verySimple` merger mass movements
abensonca May 21, 2026
9db0eeb
perf(diskComponent): create host spheroid only when merger needs it
abensonca May 21, 2026
c833ed0
Merge pull request #1126 from galacticusorg/claude/optimize-nfw-perfo…
abensonca May 21, 2026
b04785a
Merge pull request #1125 from galacticusorg/claude/optimize-root-find…
abensonca May 21, 2026
750e69a
Merge pull request #1127 from galacticusorg/claude/update-astrosylva-…
abensonca May 21, 2026
bcd66cf
Merge pull request #1122 from galacticusorg/fixColdPathScoping
abensonca May 21, 2026
624148a
Merge pull request #1129 from galacticusorg/featMergerRateZhang2014
abensonca May 21, 2026
8f375c4
perf(Gaussian_ellipsoid): skip fsync when releasing the lock after a …
claude May 21, 2026
2909fbc
Harden build profiler memory measurement
claude May 21, 2026
2173cda
docs: fix typo in fixed ages star formation history comment
abensonca May 21, 2026
179e4f3
feat: add output group type indicator to merger tree outputs
abensonca May 21, 2026
994407b
docs: document outputType attribute in HDF5 output structure
abensonca May 21, 2026
5cae657
feat: allow multiple fallback URLs in the downloader
claude May 21, 2026
6177fe2
feat: add Wayback Machine fallback URL for RecFast download
abensonca May 22, 2026
fae6f59
refactor(recfast): use block scope for RecFast download URLs
abensonca May 23, 2026
e8eccb6
fix(downloader): avoid var_str array constructors in download wrappers
abensonca May 23, 2026
133aea5
fix: Merge branch 'master' into gfortranFinalization
abensonca May 24, 2026
48a6886
fix: Merge branch 'gfortranFinalization' into dmConstraintPipeline
abensonca May 24, 2026
7b28171
Merge pull request #1135 from galacticusorg/claude/downloader-multipl…
abensonca May 24, 2026
846f992
Merge branch 'dmConstraintPipeline' into featNodeMergerTaskRefactor
abensonca May 24, 2026
579415a
Merge branch 'dmConstraintPipeline' into claude/fix-hdf5-file-lock-RhYbZ
abensonca May 24, 2026
aaca69e
Merge branch 'dmConstraintPipeline' into claude/add-memory-profiling-…
abensonca May 24, 2026
9f062ea
Merge branch 'dmConstraintPipeline' into featOutputTypeIndicator
abensonca May 24, 2026
43240f4
perf(surveyGeometryRandomPoints): hoist trig and share unit direction…
claude May 26, 2026
aab55e9
perf: Hoist loop-invariant trim and size in Atom_Lookup
claude May 26, 2026
3339971
test(baryonicSuppression): set infinite merging timescales, drop sate…
abensonca May 27, 2026
99ec7c7
test(baryonicSuppression): reduce trees per decade to 150
abensonca May 28, 2026
f5284f3
feat(parameters): tidy darkMatterOnly satellite configuration
abensonca May 29, 2026
bd17a53
feat(satellite): add `initializeOnly` option to satellite orbits node…
abensonca May 29, 2026
5be4efc
test(baryonicSuppression): restore original parameter settings for test
abensonca May 29, 2026
a08c23c
fix: Merge branch 'master' into gfortranFinalization
abensonca May 30, 2026
5a61266
fix: Merge branch 'gfortranFinalization' into dmConstraintPipeline
abensonca May 30, 2026
651e7c9
Merge pull request #1131 from galacticusorg/claude/add-memory-profili…
abensonca May 30, 2026
ae1eaa0
Merge pull request #1130 from galacticusorg/claude/fix-hdf5-file-lock…
abensonca May 30, 2026
b2ef8c8
Merge pull request #1124 from galacticusorg/featNodeMergerTaskRefactor
abensonca May 30, 2026
9268aff
Merge pull request #1133 from galacticusorg/featOutputTypeIndicator
abensonca May 30, 2026
be55fad
Merge pull request #1138 from galacticusorg/claude/vibrant-heisenberg…
abensonca May 30, 2026
bae9839
Merge pull request #1137 from galacticusorg/claude/gifted-volta-Pj0At
abensonca May 30, 2026
6e255d5
ci(buildMacOS): build macOS CI against custom GCC 16 toolchain
abensonca May 31, 2026
c8005bd
ci(buildMacOS): use unsuffixed compiler names for GCC 16 toolchain
abensonca May 31, 2026
918120d
ci(buildMacOS): use configured compiler when building ANN library
abensonca May 31, 2026
2e317df
ci(buildMacOS): build ANN library with C++17 standard
abensonca May 31, 2026
fcef8d2
chore: Merge branch 'gfortranFinalization' into dmConstraintPipeline
abensonca May 31, 2026
e8ce0c3
Work around AArch64 gfortran ICE by compiling volume_function_1d at -O0
claude Jun 1, 2026
83c7fcc
Gate AArch64 gfortran ICE workaround to Apple Silicon builds only
claude Jun 1, 2026
b5310a1
Add -fno-section-anchors to AxionCAMB build on Apple Silicon
claude Jun 1, 2026
57e54c7
Escape compiler path slashes in external-tool sed substitutions
claude Jun 1, 2026
c6343e7
staticRelinker: locate static runtime libs via compiler -print-file-name
claude Jun 1, 2026
754a79d
staticRelinker: apply dylib-hiding hack on @rpath path and fix duplic…
claude Jun 1, 2026
89d58a0
revert: drop `-fno-section-anchors` workaround from AxionCAMB build
abensonca Jun 1, 2026
60b60dc
chore: Merge branch 'gfortranFinalization' into dmConstraintPipeline
abensonca Jun 1, 2026
de2d16a
ci: update build environment image from gfortranFinalization to latest
abensonca Jun 2, 2026
e4ee669
ci: drop unused python3-blessings from test-model Python install
abensonca Jun 2, 2026
21f2f2e
ci: temporarily disable Emulation-Subhalos test
abensonca Jun 2, 2026
814ee79
fix: avoid -Wnonnull warning in pthread static-link workaround
abensonca Jun 2, 2026
7b13940
fix: build libgalacticus.so without an executable stack
abensonca Jun 3, 2026
474a437
fix: make xdiff usable without the blessings module
abensonca Jun 3, 2026
f9f40e3
fix: only pass -z noexecstack to the linker on Linux
abensonca Jun 3, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
26 changes: 13 additions & 13 deletions .github/workflows/cicd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ jobs:
### Static executable and test codes
Build-Executable-Linux:
runs-on: ubuntu-latest
container: ghcr.io/galacticusorg/buildenv:latest
container: ghcr.io/galacticusorg/buildenv:gfortranFinalization
steps:
- run: echo "The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "This job is now running on a ${{ runner.os }} server."
Expand Down Expand Up @@ -109,7 +109,7 @@ jobs:
### Non-static executable
Build-Executable-Linux-Non-Static:
runs-on: ubuntu-latest
container: ghcr.io/galacticusorg/buildenv:latest
container: ghcr.io/galacticusorg/buildenv:gfortranFinalization
steps:
- run: echo "The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "This job is now running on a ${{ runner.os }} server."
Expand Down Expand Up @@ -151,7 +151,7 @@ jobs:
### Executable instrumented
Build-Executables-Instrumented-Linux:
runs-on: ubuntu-latest
container: ghcr.io/galacticusorg/buildenv:latest
container: ghcr.io/galacticusorg/buildenv:gfortranFinalization
steps:
- run: echo "The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "This job is now running on a ${{ runner.os }} server."
Expand Down Expand Up @@ -180,7 +180,7 @@ jobs:
### Executable with dark matter only components
Build-Executable-DMO-Linux:
runs-on: ubuntu-latest
container: ghcr.io/galacticusorg/buildenv:latest
container: ghcr.io/galacticusorg/buildenv:gfortranFinalization
steps:
- run: echo "The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "This job is now running on a ${{ runner.os }} server."
Expand All @@ -207,7 +207,7 @@ jobs:
### Executable MPI
Build-Executables-MPI-Linux:
runs-on: ubuntu-latest
container: ghcr.io/galacticusorg/buildenv:latest
container: ghcr.io/galacticusorg/buildenv:gfortranFinalization
steps:
- run: echo "The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "This job is now running on a ${{ runner.os }} server."
Expand Down Expand Up @@ -238,7 +238,7 @@ jobs:
### Executable debugging
Build-Executables-Debugging-Linux:
runs-on: ubuntu-latest
container: ghcr.io/galacticusorg/buildenv:latest
container: ghcr.io/galacticusorg/buildenv:gfortranFinalization
steps:
- run: echo "The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "This job is now running on a ${{ runner.os }} server."
Expand All @@ -265,7 +265,7 @@ jobs:
### Library
Build-Library-Linux:
runs-on: ubuntu-latest
container: ghcr.io/galacticusorg/buildenv:latest
container: ghcr.io/galacticusorg/buildenv:gfortranFinalization
steps:
- run: echo "The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "This job is now running on a ${{ runner.os }} server."
Expand Down Expand Up @@ -338,7 +338,7 @@ jobs:
### Documentation
Build-Documentation-Linux:
runs-on: ubuntu-latest
container: ghcr.io/galacticusorg/buildenv:latest
container: ghcr.io/galacticusorg/buildenv:gfortranFinalization
steps:
- run: echo "The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "This job is now running on a ${{ runner.os }} server."
Expand Down Expand Up @@ -368,7 +368,7 @@ jobs:
### Tools
Build-Tools:
runs-on: ubuntu-latest
container: ghcr.io/galacticusorg/buildenv:latest
container: ghcr.io/galacticusorg/buildenv:gfortranFinalization
needs: Build-Executable-Linux
steps:
- run: echo "The job was automatically triggered by a ${{ github.event_name }} event."
Expand Down Expand Up @@ -585,7 +585,7 @@ jobs:
$GALACTICUS_EXEC_PATH/scripts/build/staticRelinker.pl `grep -E '\-o cloudy.exe' $GALACTICUS_EXEC_PATH/build.log`
cd $GALACTICUS_DATA_PATH/dynamic/fsps-${fspsVersion}/src
$GALACTICUS_EXEC_PATH/scripts/build/staticRelinker.pl `grep -E '\-o autosps.exe' $GALACTICUS_EXEC_PATH/build.log`
cd $GALACTICUS_DATA_PATH/dynamic/mangle-${mangleVersion}/bin/
cd $GALACTICUS_DATA_PATH/dynamic/mangle-${mangleVersion}/src/
$GALACTICUS_EXEC_PATH/scripts/build/staticRelinker.pl `grep -E '\-o harmonize' $GALACTICUS_EXEC_PATH/build.log`
cd $GALACTICUS_DATA_PATH
zip -r toolsMacOS.zip \
Expand Down Expand Up @@ -765,7 +765,7 @@ jobs:
# Watch for updates
Watch-Updates:
runs-on: ubuntu-latest
container: ghcr.io/galacticusorg/buildenv:latest
container: ghcr.io/galacticusorg/buildenv:gfortranFinalization
steps:
- run: echo "The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "This job is now running on a ${{ runner.os }} server."
Expand Down Expand Up @@ -1516,7 +1516,7 @@ jobs:
## Emulation
Emulation-Subhalos:
runs-on: ubuntu-latest
container: ghcr.io/galacticusorg/buildenv:latest
container: ghcr.io/galacticusorg/buildenv:gfortranFinalization
needs: Build-Executable-DMO-Linux
steps:
- run: echo "The job was automatically triggered by a ${{ github.event_name }} event."
Expand Down Expand Up @@ -1581,7 +1581,7 @@ jobs:
## Python Interface
Python-Interface:
runs-on: ubuntu-latest
container: ghcr.io/galacticusorg/buildenv:latest
container: ghcr.io/galacticusorg/buildenv:gfortranFinalization
needs: Build-Library-Linux
steps:
- run: echo "The job was automatically triggered by a ${{ github.event_name }} event."
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/prChecks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ jobs:
# Validate Perl scripts
Validate-Perl-Scripts:
runs-on: ubuntu-latest
container: ghcr.io/galacticusorg/buildenv:latest
container: ghcr.io/galacticusorg/buildenv:gfortranFinalization
steps:
- uses: actions/checkout@v6
- name: Check out repository analysis-perl
Expand Down Expand Up @@ -128,7 +128,7 @@ jobs:
# Validate Perl modules
Validate-Perl-Modules:
runs-on: ubuntu-latest
container: ghcr.io/galacticusorg/buildenv:latest
container: ghcr.io/galacticusorg/buildenv:gfortranFinalization
steps:
- uses: actions/checkout@v6
- name: "Set environmental variables"
Expand Down Expand Up @@ -162,7 +162,7 @@ jobs:
# Fortran static analysis
Fortran-Static-Analysis:
runs-on: ubuntu-latest
container: ghcr.io/galacticusorg/buildenv:latest
container: ghcr.io/galacticusorg/buildenv:gfortranFinalization
steps:
- uses: actions/checkout@v6
- name: "Set environmental variables"
Expand Down Expand Up @@ -192,7 +192,7 @@ jobs:
# Embedded XML and LaTeX checks
Embedded-XML-LaTeX:
runs-on: ubuntu-latest
container: ghcr.io/galacticusorg/buildenv:latest
container: ghcr.io/galacticusorg/buildenv:gfortranFinalization
steps:
- name: Check out repository code
uses: actions/checkout@v6
Expand Down Expand Up @@ -248,7 +248,7 @@ jobs:
# Spell check LaTeX files
Spell-Check-LaTeX:
runs-on: ubuntu-latest
container: ghcr.io/galacticusorg/buildenv:latest
container: ghcr.io/galacticusorg/buildenv:gfortranFinalization
steps:
- name: Check out repository code
uses: actions/checkout@v6
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/profile.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
Profile-Model:
runs-on: ubuntu-latest
container:
image: ghcr.io/galacticusorg/buildenv:latest
image: ghcr.io/galacticusorg/buildenv:gfortranFinalization
options: --privileged
steps:
- run: echo "The job was automatically triggered by a ${{ github.event_name }} event."
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/testCode.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ jobs:
Test-Code:
runs-on: ${{ inputs.runner }}
container:
image: ${{ startsWith( format('{0}',inputs.runner), 'ubuntu') && 'ghcr.io/galacticusorg/buildenv:latest' || '' }}
image: ${{ startsWith( format('{0}',inputs.runner), 'ubuntu') && 'ghcr.io/galacticusorg/buildenv:gfortranFinalization' || '' }}
steps:
- run: echo "The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "This job is now running on a ${{ runner.os }} server."
Expand Down Expand Up @@ -77,9 +77,9 @@ jobs:
set -o pipefail
if [ ${{ inputs.mpi }} == 1 ]; then
if [ ${{ inputs.expectCrash }} == 1 ]; then
! mpirun -np 2 --allow-run-as-root ./${{ inputs.executable }} 2>&1 | tee test.log
! mpirun --oversubscribe -np 2 --allow-run-as-root ./${{ inputs.executable }} 2>&1 | tee test.log
else
mpirun -np 2 --allow-run-as-root ./${{ inputs.executable }} 2>&1 | tee test.log
mpirun --oversubscribe -np 2 --allow-run-as-root ./${{ inputs.executable }} 2>&1 | tee test.log
fi
else
if [ ${{ inputs.expectCrash }} == 1 ]; then
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/testModel.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ jobs:
Test-Model:
runs-on: ${{ inputs.runner }}
container:
image: ${{ startsWith( format('{0}',inputs.runner), 'ubuntu') && 'ghcr.io/galacticusorg/buildenv:latest' || '' }}
image: ${{ startsWith( format('{0}',inputs.runner), 'ubuntu') && 'ghcr.io/galacticusorg/buildenv:gfortranFinalization' || '' }}
steps:
- run: echo "The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "This job is now running on a ${{ runner.os }} server."
Expand Down Expand Up @@ -158,7 +158,7 @@ jobs:
false
fi
if [ ${{ inputs.mpi }} == 1 ]; then
mpirun -np ${{ inputs.processesPerNode }} --allow-run-as-root ./Galacticus.exe ${{ inputs.file }} 2>&1 | tee test.log
mpirun --oversubscribe -np ${{ inputs.processesPerNode }} --allow-run-as-root ./Galacticus.exe ${{ inputs.file }} 2>&1 | tee test.log
else
./Galacticus.exe ${{ inputs.file }} 2>&1 | tee test.log
fi
Expand Down
29 changes: 28 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -114,11 +114,13 @@ endif
ifeq '$(GALACTICUS_BUILD_OPTION)' 'gprof'
FCFLAGS += -pg
FCFLAGS_NOOPT += -pg
F77FLAGS += -pg
CFLAGS += -pg
CPPFLAGS += -pg
else
FCFLAGS += -g
FCFLAGS_NOOPT += -g
F77FLAGS += -g
CFLAGS += -g
CPPFLAGS += -g
endif
Expand Down Expand Up @@ -345,6 +347,11 @@ vpath %.cpp source
$(BUILDPATH)/%.o : %.cpp $(BUILDPATH)/%.d $(BUILDPATH)/%.fl Makefile
$(CPPCOMPILER) -c $< -o $(BUILDPATH)/$*.o $(CPPFLAGS)

# Rules for the QHull library. Use the C++17 standard for these files since they are not compatible with later C++ standards
# (triggering 'template-id not allowed for constructor' errors)
$(BUILDPATH)/qhull.o : source/qhull.cpp
$(CPPCOMPILER) -c source/qhull.cpp -o $(BUILDPATH)/qhull.o $(CPPFLAGS) -std=gnu++17

# Rules for FFTLog library.
source/FFTlog/cdgamma.f source/FFTlog/drfftb.f source/FFTlog/drffti.f source/FFTlog/drfftf.f: source/FFTlog/fftlog.f
source/FFTlog/fftlog.f:
Expand Down Expand Up @@ -390,11 +397,15 @@ $(BUILDPATH)/FFTlog/%.o: ./source/FFTlog/%.f Makefile
@mkdir -p $(BUILDPATH)/moduleBuild
$(FCCOMPILER) -c $< -o $(BUILDPATH)/FFTlog/$*.o $(F77FLAGS) -Wno-argument-mismatch -std=legacy

# Object (*.o) files are built by compiling Fortran (*.f) source files.
# Object (*.o) files are built by compiling Fortran (*.[fF]) source files.
vpath %.f source
$(BUILDPATH)/%.o : %.f $(BUILDPATH)/%.d $(BUILDPATH)/%.fl Makefile
@mkdir -p $(BUILDPATH)/moduleBuild
$(FCCOMPILER) -c $< -o $(BUILDPATH)/$*.o $(F77FLAGS)
vpath %.F source
$(BUILDPATH)/%.o : %.F $(BUILDPATH)/%.d $(BUILDPATH)/%.fl Makefile
@mkdir -p $(BUILDPATH)/moduleBuild
$(FCCOMPILER) -c $< -o $(BUILDPATH)/$*.o $(F77FLAGS)

# Special rules required for building some sources (unfortunate, but necessary....)
# bivar.F90 doesn't like to be compiled with any optimization:
Expand Down Expand Up @@ -441,6 +452,13 @@ $(BUILDPATH)/%.d : ./source/%.f
else \
mv $(BUILDPATH)/$*.d~ $(BUILDPATH)/$*.d ; \
fi
$(BUILDPATH)/%.d : ./source/%.F
@echo $(BUILDPATH)/$*.o > $(BUILDPATH)/$*.d~
@if cmp -s $(BUILDPATH)/$*.d $(BUILDPATH)/$*.d~ ; then \
rm $(BUILDPATH)/$*.d~ ; \
else \
mv $(BUILDPATH)/$*.d~ $(BUILDPATH)/$*.d ; \
fi
$(BUILDPATH)/%.d : ./source/%.c
@echo $(BUILDPATH)/$*.o > $(BUILDPATH)/$*.d~
@if cmp -s $(BUILDPATH)/$*.d $(BUILDPATH)/$*.d~ ; then \
Expand All @@ -462,6 +480,13 @@ $(BUILDPATH)/%.d : ./source/%.cpp
else \
mv $*.d~ $*.d ; \
fi
%.d : %.F
@echo $*.o > $*.d~
@if cmp -s $*.d $*.d~ ; then \
rm $*.d~ ; \
else \
mv $*.d~ $*.d ; \
fi
%.d :
@if [ ! -f $*.d ]; then \
mkdir -p `dirname $*.d`; \
Expand All @@ -486,6 +511,8 @@ $(BUILDPATH)/%.fl : ./source/%.F90
@touch $(BUILDPATH)/$*.fl
$(BUILDPATH)/%.fl : ./source/%.f
@touch $(BUILDPATH)/$*.fl
$(BUILDPATH)/%.fl : ./source/%.F
@touch $(BUILDPATH)/$*.fl
$(BUILDPATH)/%.fl : ./source/%.c
@touch $(BUILDPATH)/$*.fl
$(BUILDPATH)/%.fl : ./source/%.cpp
Expand Down
7 changes: 7 additions & 0 deletions aux/words.dict
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,7 @@ Dobbs
Dodds
Dopita
Dorta
Dopita
Drlica
Dutton
Enzo
Expand Down Expand Up @@ -214,6 +215,7 @@ SEDs
SIDM
SNe
SSPs
Springer
SZ
Safranek
Safronov
Expand Down Expand Up @@ -383,6 +385,7 @@ dielectronic
differencing
differentially
differentiating
digamma
dilogarithm
dilogarithms
dima
Expand Down Expand Up @@ -559,6 +562,7 @@ normalizations
normalizer
normalizers
octahedron
octants
octree
octrees
odes
Expand Down Expand Up @@ -608,6 +612,7 @@ photoionizations
photometric
piecewise
polycyclic
polygamma
polylogarithm
polylogarithms
postprocess
Expand Down Expand Up @@ -764,6 +769,8 @@ unbuffered
unclustered
uncommented
uncontracted
underflow
underflows
undecorated
underpredicts
undersampling
Expand Down
16 changes: 16 additions & 0 deletions constraints/pipelines/darkMatter/changesBohr2021.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<changes>
<change type="replace" path="haloMassFunction">
<haloMassFunction value="shethTormen">
<a value="0.7070"/> <!-- Sheth & Tormen (2002; http://adsabs.harvard.edu/abs/2002MNRAS.329...61S) -->
<p value="0.3000"/> <!-- Sheth & Tormen (2002; http://adsabs.harvard.edu/abs/2002MNRAS.329...61S) -->
<normalization value="0.3658"/> <!-- Bohr et al. (2021; https://ui.adsabs.harvard.edu/abs/2021MNRAS.506..128B) -->
</haloMassFunction>
</change>
<change type="replace" path="powerSpectrumWindowFunction">
<powerSpectrumWindowFunction value="ETHOS">
<cW value="3.79"/> <!-- Bohr et al. (2021; https://ui.adsabs.harvard.edu/abs/2021MNRAS.506..128B) -->
<beta value="3.46"/> <!-- Bohr et al. (2021; https://ui.adsabs.harvard.edu/abs/2021MNRAS.506..128B) -->
</powerSpectrumWindowFunction>
</change>
<change type="update" path="outputFileName" append="true" value="_Bohr2021"/>
</changes>
9 changes: 9 additions & 0 deletions constraints/pipelines/darkMatter/changesDespali2015.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<changes>
<change type="replace" path="haloMassFunction">
<haloMassFunction value="despali2015"/>
</change>
<change type="replace" path="powerSpectrumWindowFunction">
<powerSpectrumWindowFunction value="topHat"/>
</change>
<change type="update" path="outputFileName" append="true" value="_Despali2015"/>
</changes>
4 changes: 4 additions & 0 deletions constraints/pipelines/darkMatter/changesTrue.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<changes>
<change type="replaceWith" path="cosmologicalMassVariance" target="cosmologicalMassVariance/cosmologicalMassVariance"/>
<change type="update" path="outputFileName" append="true" value="_true"/>
</changes>
16 changes: 16 additions & 0 deletions constraints/pipelines/darkMatter/cosmology_COZMIC.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<parameters>
<formatVersion>2</formatVersion>
<lastModified revision="e9236b11f17f9c96b0cdac005d7945ac0febe7d5"/>

<!-- Cosmological parameters and options -->
<cosmologyFunctions value="matterLambda"/>
<cosmologyParameters value="simple" >
<HubbleConstant value="70.000000"/>
<OmegaMatter value=" 0.286000"/>
<OmegaDarkEnergy value=" 0.714000"/>
<OmegaBaryon value=" 0.047000"/>
<temperatureCMB value=" 2.725480"/>
</cosmologyParameters>

</parameters>
Loading
Loading