Skip to content

Extend CLFs to support multiple conditioning variables #14

@nikosarcevic

Description

@nikosarcevic

The current CLF interface assumes a single conditioning variable. We should generalize this so conditional luminosity functions can depend on more than one condition.

For example, instead of only supporting something like:

phi = clf.phi(luminosity, halo_mass)

we should allow models that depend on multiple quantities, such as:

phi = clf.phi(luminosity, halo_mass, redshift)
phi = clf.phi(luminosity, halo_mass, galaxy_type)
phi = clf.phi(luminosity, halo_mass, environment)

Motivation behind this:
Many realistic CLF models depend on more than one variable, for example halo mass plus redshift, galaxy type, central/satellite component, or environment. Supporting multiple conditioning variables would make the CLF API more flexible and easier to extend.

Desired outcome:
Refactor the CLF interface so models can declare and receive multiple conditioning variables cleanly, without hardcoding a single condition argument throughout the code. Existing single-condition CLF models should continue to work.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions