ExampleLeirExtractionLineModelDefinitionFactory.java
/**
*
*/
package cern.accsoft.steering.jmad.modeldefs.defs;
import static cern.accsoft.steering.jmad.domain.file.CallableModelFile.ParseType.STRENGTHS;
import static cern.accsoft.steering.jmad.domain.file.ModelFile.ModelFileLocation.RESOURCE;
import cern.accsoft.steering.jmad.tools.modeldefs.creating.lang.JMadModelDefinitionDslSupport;
/**
* This class is the actual model configuration for the leir extraction transfer line.
*/
public class ExampleLeirExtractionLineModelDefinitionFactory extends JMadModelDefinitionDslSupport {
{
name("Example LEIREXTR");
offsets(o -> {
o.resource("exampleleir");
});
init(i -> {
i.call("lead.madx").from(RESOURCE);
i.call("leir_extraction_fringe_field_2018.seq").from(RESOURCE);
});
optics("leir_extraction_2018") //
.isDefault() //
.isDefinedAs(o -> {
o.call("leir_extraction_2018.str").from(RESOURCE).parseAs(STRENGTHS);
});
sequence("eeetl").isDefault().isDefinedAs(s -> {
s.range("ALL").isDefault().isDefinedAs(r -> {
r.twiss(t -> {
t.betx(4.99920392);
t.dx(0.00159546);
t.bety(5.00038080);
t.calcAtCenter();
});
});
});
}
}