DefaultMultiEchelonCostFormulation

constructor(network: MultiEchelonNetwork, params: CostParams = CostParams(), name: String? = null, paramsResolver: (NetworkNodeIfc?) -> CostParams? = null)(source)

Parameters

network

the network whose calculators this formulation manages. Used as the ModelElement parent so KSL's tree walk includes this formulation in the network's replicationEnded lifecycle (children-first ordering guarantees calculator Responses are populated before this formulation's rollup runs).

params

parameter bundle for the line-item calculators

name

optional ModelElement name

paramsResolver

optional per-node parameter override. When non-null, it is consulted for the CostParams each calculator should use, keyed by the calculator's owning node (the inventory's / backlog's / builder's holder, an outbound edge's supplier, an inbound edge's customer; null for the external supplier's own outbound). Returning the node's override or falling back to params is the resolver's responsibility. When null (the default), every calculator uses the single params bundle — the uniform-cost behaviour. Passed as a constructor parameter (not an overridable method) so it is available while the init block builds calculators, avoiding the open-call-from-constructor initialization-order trap.