Class Quadrupole
java.lang.Object
org.scictrl.mp.orbitcorrect.model.optics.AbstractDataBushElement
org.scictrl.mp.orbitcorrect.model.optics.AbstractOpticalElement
org.scictrl.mp.orbitcorrect.model.optics.AbstractTransferElement
org.scictrl.mp.orbitcorrect.model.optics.AbstractMagnetElement
org.scictrl.mp.orbitcorrect.model.optics.AbstractCalibratedMagnet
org.scictrl.mp.orbitcorrect.model.optics.Quadrupole
- All Implemented Interfaces:
Cloneable,ISimpleElement,AbstractUpdateableElement,IApplyableElement
Quadrupole is magnetic element that holds mainly quadrupole strength.- Author:
- igor@scictrl.com
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intConstantPR_QUADRUPOLE_STRENGTH=8Fields inherited from class org.scictrl.mp.orbitcorrect.model.optics.AbstractCalibratedMagnet
calc, calibrationEntry, current, dataInvalidated, PR_CALIBRATION_ENTRYFields inherited from class org.scictrl.mp.orbitcorrect.model.optics.AbstractMagnetElement
PR_POWER_SUPPLY, psHFields inherited from class org.scictrl.mp.orbitcorrect.model.optics.AbstractTransferElement
length, matrices, matrix, PR_LENGTHFields inherited from class org.scictrl.mp.orbitcorrect.model.optics.AbstractOpticalElement
PR_POSITION, PR_REL_FROM, PR_REL_POSITIONFields inherited from class org.scictrl.mp.orbitcorrect.model.optics.AbstractDataBushElement
lastActionResult, owner, PR_ELEMENT_NAME, PR_VIRTUAL -
Constructor Summary
ConstructorsConstructorDescriptionQuadrupole(String name) ConstructsQuadrupolewith specified name and default parameter's values.Quadrupole(String name, boolean virtual, double position, double relpos, String relFrom, double length, String ps, String calibrationEntry, double quadrupoleStrength) Constructs theQuadrupolewith specified parameters. -
Method Summary
Modifier and TypeMethodDescriptionintThis method sends current toPowerSupplyclone()Returns the clone of this element.Returns the descriptor object for this element.intelType()Returns the code of element's type.This method returnsIMagnetCalculatorModel.doubleThis method returns maximal quadrupole strength, which can be achived.doubleThis method returns minimal quadrupole strength, which can be achived.doubleThis method returns quadrupole strength.This method return transfer matrix of drift with the same length as this element.newMatrix(double length) This method return transfer matrix of drift with the specified length.voidsetCurrent(double value) This method sets current on this element.voidsetQuadrupoleStrength(double value) This method sets quadrupole strength.voidSets parameters values of this element to those in parameter array.toString()Returns the string representation of this element.intupdate()Reads value from associated element or Abean and calculates it's new values.Methods inherited from class org.scictrl.mp.orbitcorrect.model.optics.AbstractCalibratedMagnet
getCalibrationEntry, getCurrent, invalidateData, isDataInvalidated, updateMatricesMethods inherited from class org.scictrl.mp.orbitcorrect.model.optics.AbstractMagnetElement
getPowerSupply, getPSMethods inherited from class org.scictrl.mp.orbitcorrect.model.optics.AbstractTransferElement
getAlpha1, getAlpha2, getBeta1, getBeta2, getDispersion1, getDispersion2, getLength, getMatrix, getQ1, getQ2, setLengthMethods inherited from class org.scictrl.mp.orbitcorrect.model.optics.AbstractOpticalElement
getAlpha, getBeta, getDispersion, getIndex, getPosition, getQ, getRelFrom, getRelPosition, setPosition, setRelFrom, setRelPositionMethods inherited from class org.scictrl.mp.orbitcorrect.model.optics.AbstractDataBushElement
equals, getLastActionResult, getName, getOwner, getVirtual, hashCode, isInitialized, isVirtual, setVirtual, throwISE
-
Field Details
-
PR_QUADRUPOLE_STRENGTH
public static final int PR_QUADRUPOLE_STRENGTHConstantPR_QUADRUPOLE_STRENGTH=8- See Also:
-
-
Constructor Details
-
Quadrupole
ConstructsQuadrupolewith specified name and default parameter's values.- Parameters:
name- aStringname of quadrupole
-
Quadrupole
public Quadrupole(String name, boolean virtual, double position, double relpos, String relFrom, double length, String ps, String calibrationEntry, double quadrupoleStrength) Constructs theQuadrupolewith specified parameters.
-
-
Method Details
-
applyField
This method sends current toPowerSupply- Returns:
intindicate if method succeded- Throws:
IllegalStateException- if any.
-
clone
Returns the clone of this element. Returns not initialized clone of this element. All data is copied to the clone. Returns not initialized clone of this element. All data is copied to the clone.clone.
clone.
- Specified by:
clonein interfaceISimpleElement- Overrides:
clonein classAbstractTransferElement- Returns:
- a
Objectthe clone of this element. - See Also:
-
descriptor
Returns the descriptor object for this element.DBElementDescriptorhelps manipulating DataBush elements dynamically.descriptor.
- Specified by:
descriptorin classAbstractDataBushElement- Returns:
- the descriptor object for this element.
- See Also:
-
elType
public int elType()Returns the code of element's type.elType.
- Specified by:
elTypein classAbstractDataBushElement- Returns:
- the code of element's type.
- See Also:
-
getCalculator
This method returnsIMagnetCalculatorModel.- Returns:
- a
IMagnetCalculatorModelobject - See Also:
-
getMaxQuadrupoleStrength
This method returns maximal quadrupole strength, which can be achived. It depends of maximal current.- Returns:
- a double
- Throws:
ControlSystemException- if any.
-
getMinQuadrupoleStrength
This method returns minimal quadrupole strength, which can be achived. It depends of minimal current.- Returns:
- a double
- Throws:
ControlSystemException- if any.
-
getQuadrupoleStrength
public double getQuadrupoleStrength()This method returns quadrupole strength.- Returns:
- a double
-
newMatrix
This method return transfer matrix of drift with the same length as this element. This method return transfer matrix, calculated with current length, quadrupole strength and radius.- Overrides:
newMatrixin classAbstractTransferElement- Returns:
- a
TransferMatrixobject - See Also:
-
newMatrix
This method return transfer matrix of drift with the specified length. This method return transfer matrix, calculated with current quadrupole strength, radius and as parameter specified length.- Overrides:
newMatrixin classAbstractTransferElement- Parameters:
length- a double- Returns:
- a
TransferMatrixobject - See Also:
-
setCurrent
public void setCurrent(double value) This method sets current on this element. This method sets current.- Overrides:
setCurrentin classAbstractCalibratedMagnet- Parameters:
value- a double
-
setQuadrupoleStrength
public void setQuadrupoleStrength(double value) This method sets quadrupole strength.ICalculatorModelFactorycalculate necessary current and this method sets it.- Parameters:
value- a double
-
setWith
Sets parameters values of this element to those in parameter array. As parameter must be used such array as for dynamical construction of new instance of this class. Current values are overriden for each notnullobject in array.setWith.
setWith.
setWith.
setWith.
setWith.
- Overrides:
setWithin classAbstractCalibratedMagnet- Parameters:
par- an array ofObjectobjects- Throws:
IllegalStateException- if element is initialized and inside DataBush.- See Also:
-
toString
Returns the string representation of this element. Returns string describing this element. String is formated in input-file code. Returns a String that represents the value of this object.toString.
toString.
toString.
toString.
- Specified by:
toStringin interfaceISimpleElement- Overrides:
toStringin classAbstractCalibratedMagnet- See Also:
-
update
Reads value from associated element or Abean and calculates it's new values. Metod reads data from other databush elements or from remote devices represented with Abean. Metod also checksisDataInvalidated()on depending databush elements, if value has changed. Return value is identification code of error. Note! Update is performed only if virtual flag is set tofalse. Note! All update methods are synchronized, so only one update is called at time. For update od group of elements call update on appropriate element-list or DataBush. This method reads energy fromPowerSupplyand transform it to magnetic properties of this element.- Returns:
- a int the return code indicating success
- Throws:
IllegalStateException- thrown if status of DataBush equalsDB_EMPTYDataBushPackedException- contains all exception thrown or caught during updating element
-