Package xal.smf.impl
Class TrimmedQuadrupole
java.lang.Object
xal.smf.AcceleratorNode
xal.smf.impl.Magnet
xal.smf.impl.Electromagnet
xal.smf.impl.Quadrupole
xal.smf.impl.TrimmedQuadrupole
- All Implemented Interfaces:
Comparable,ElementType,MagnetType,TrimmedMagnet,DataListener
TrimmedQuadrupole is a subclass of Quadrupole that has a trim power supply in
addition to a main power supply.
- Author:
- tap
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringprotected Stringunique ID for this magnet's trim supplystatic final Stringstatic final StringFields inherited from class xal.smf.impl.Quadrupole
nodeType, SKEW_TYPEFields inherited from class xal.smf.impl.Electromagnet
field, FIELD_RB_HANDLE, fieldFromCurrent, fieldRBProperty, mainSupplyId, useFieldReadbackFields inherited from class xal.smf.AcceleratorNode
bolIsSoft, bolStatus, bolValid, bucAlign, bucAper, bucTwiss, channelSuite, dblLen, dblPos, dblS, mapAttrs, objAccel, seqParent, strEId, strId, strPIdFields inherited from interface xal.smf.impl.qualify.MagnetType
DIPOLE, HORIZONTAL, NO_ORIENTATION, OCT, OCTUPOLE, poles, QUAD, QUADRUPOLE, SEXT, SEXTUPOLE, SOL, SOLENOID, VERTICAL -
Constructor Summary
ConstructorsConstructorDescriptionTrimmedQuadrupole(String strID) ConstructorTrimmedQuadrupole(String strID, ChannelFactory channelFactory) Constructor -
Method Summary
Modifier and TypeMethodDescriptionfindChannel(String handle) Find the channel for the specified handle checking the trim supply if the channel suite or main supply does not contain the handleGet the channel handles.intGet the orientation of the magnet as defined by MagnetType.doubleGet the value to which the field is set including both the main supply and trim supply contributions.doubleGet the trim power supply current in this electromagnet via ca (A)doubleGet the value to which the trim supply's field contribution is set.Get the trim power supply for this magnet.booleanisChannelSettable(String handle) voidsetTrimCurrent(double newCurrent) set the trim power supply current in the magnet (A)voidsetTrimField(double newField) Set the trim power supply field contribution in the magnet.protected voidupdatePowerSupplies(DataAdaptor powerSupplyAdaptor) Update data from the power supply data adaptor.protected voidwritePowerSupplies(DataAdaptor powerSupplyAdaptor) Write data to the power supply data adaptor.Methods inherited from class xal.smf.impl.Quadrupole
getType, isKindOf, isPole, updateMethods inherited from class xal.smf.impl.Electromagnet
getAccessibleProperties, getCurrent, getCycleState, getDefaultHandles, getField, getFieldInt, getFieldReadback, getFieldSetting, getMainSupply, getReadbackHandles, getSetHandle, isPermanent, lowerAlarmFieldLimit, lowerCurrentLimit, lowerDisplayFieldLimit, lowerFieldLimit, lowerWarningFieldLimit, setCurrent, setCycleEnable, setField, setMainSupplyId, setUseFieldReadback, toCAFromField, toCurrentFromField, toFieldFromCA, toFieldFromCurrent, upperAlarmFieldLimit, upperCurrentLimit, upperDisplayFieldLimit, upperFieldLimit, upperWarningFieldLimit, useFieldReadback, writeMethods inherited from class xal.smf.impl.Magnet
addBucket, getConversionFactor, getDesignField, getDfltField, getEffLength, getMagBucket, getNormField, getPolarity, getTangField, isCorrector, isHorizontal, isMagnet, isSkew, isVertical, setDfltField, setMagBucketMethods inherited from class xal.smf.AcceleratorNode
batchConnectAllHandles, batchConnectAllHandlesAndWait, channelSuite, clear, compareTo, dataLabel, getAccelerator, getAccessibleProperties, getAlign, getAllChannels, getAndConnectChannel, getAndConnectChannelSetAndReadback, getAper, getBucket, getBuckets, getChannel, getDesignPropertyValue, getEId, getId, getLength, getLivePropertyChannels, getLivePropertyValue, getParent, getPId, getPitchAngle, getPosition, getPrimaryAncestor, getProperties, getRollAngle, getSDisplay, getSoftType, getStatus, getTwiss, getValid, getXOffset, getYawAngle, getYOffset, getZOffset, hasBucket, hasParent, lazilyGetAndConnect, removeFromParent, setAccelerator, setAlign, setAper, setDesignPropertyValue, setLength, setLivePropertyValue, setParent, setPitchAngle, setPosition, setRollAngle, setSDisplay, setStatus, setTwiss, setValid, setValueAndVerify, setXOffset, setYawAngle, setYOffset, setZOffset, toString, writeAttributes, writeStatus
-
Field Details
-
TYPE
- See Also:
-
HORIZONTAL_TYPE
- See Also:
-
VERTICAL_TYPE
- See Also:
-
trimSupplyID
unique ID for this magnet's trim supply
-
-
Constructor Details
-
TrimmedQuadrupole
Constructor- Parameters:
strID- this magnet's unique node IDchannelFactory- factory for generating this node's channels
-
TrimmedQuadrupole
Constructor- Parameters:
strID- this magnet's unique node ID
-
-
Method Details
-
updatePowerSupplies
Update data from the power supply data adaptor.- Overrides:
updatePowerSuppliesin classElectromagnet- Parameters:
powerSupplyAdaptor- The data provider of power supply information.
-
writePowerSupplies
Write data to the power supply data adaptor.- Overrides:
writePowerSuppliesin classElectromagnet- Parameters:
powerSupplyAdaptor- The data sink for the power supply information
-
getHandles
Get the channel handles. Overrides the default method to add handles from the trim power supply.- Overrides:
getHandlesin classElectromagnet- Returns:
- The channel handles associated with this node
-
findChannel
Find the channel for the specified handle checking the trim supply if the channel suite or main supply does not contain the handle- Overrides:
findChannelin classElectromagnet- Parameters:
handle- The handle for the channel to get.- Returns:
- The channel associated with this node and the specified handle or null if there is no match.
-
isChannelSettable
- Overrides:
isChannelSettablein classElectromagnet
-
getTrimSupply
Get the trim power supply for this magnet.- Specified by:
getTrimSupplyin interfaceTrimmedMagnet- Returns:
- The trim power supply for this magnet
-
setTrimField
Set the trim power supply field contribution in the magnet. If cycle enable is true then the magnet is cycled before the field is set to the specified value.- Parameters:
newField- is the new field level in T/(m^(n-1)), where n = 1 for dipole, 2 for quad, etc.- Throws:
PutException
-
getTrimFieldSetting
Get the value to which the trim supply's field contribution is set. Note that this is not the readback.- Returns:
- the field setting in T/(m^(n-1)), where n = 1 for dipole, 2 for quad, etc.
- Throws:
GetException
-
getTotalFieldSetting
Get the value to which the field is set including both the main supply and trim supply contributions. Note that this is not the readback.- Overrides:
getTotalFieldSettingin classElectromagnet- Returns:
- the field setting in T/(m^(n-1)), where n = 1 for dipole, 2 for quad, etc.
- Throws:
GetException
-
getTrimCurrent
Get the trim power supply current in this electromagnet via ca (A)- Throws:
GetException
-
setTrimCurrent
set the trim power supply current in the magnet (A)- Parameters:
newCurrent- is the new current (A)- Throws:
PutException
-
getOrientation
public int getOrientation()Get the orientation of the magnet as defined by MagnetType. The orientation of the quad is determined by its type: QTH or QTV- Specified by:
getOrientationin interfaceMagnetType- Overrides:
getOrientationin classQuadrupole- Returns:
- One of HORIZONTAL or VERTICAL
-