rolland.arrangement.PeriodicArrangement

class rolland.arrangement.PeriodicArrangement(*args, **kwargs)[source]

Bases: Arrangement

Periodic arrangement of given objects.

Given sequence of objects is repeated periodically when building track using ArrangedSlabSingleRailTrack or ArrangedBallastedSingleRailTrack class. Mounting positions start at \(x=0\).

Parameters:
  • args (t.Any)

  • kwargs (t.Any)

item

Characteristic object or objects to repeat.

Type:

any

Example

>>> from rolland.database.rail.db_rail import UIC60
>>> from rolland.components import DiscrPad, Sleeper
>>> from rolland.arrangement import PeriodicArrangement
>>> from rolland.track import ArrangedBallastedSingleRailTrack
>>> thepadA = DiscrPad(sp = [300*10**6, 0], dp = [30000, 0])
>>> thepadB = DiscrPad(sp = [400*10**6, 0], dp = [40000, 0])
>>> thesleeperA = Sleeper(ms = 150)
>>> thesleeperB = Sleeper(ms = 200)
>>> pad = PeriodicArrangement(item=[thepadA, thepadB])
>>> distance = PeriodicArrangement(item=[0.65, 0.5])
>>> sleeper = PeriodicArrangement(item=[thesleeperA, thesleeperB])
>>> tr = ArrangedBallastedSingleRailTrack(
...     rail=UIC60,
...     pad=pad,
...     sleeper=sleeper,
...     distance=distance,
...     num_mount=100)
generate(num_mount)[source]

Generate count repetitions of objects.