88 new G4UIcommand(
"/score/create/realWorldLogVol",
this);
90 "Define scorers to a logical volume defined in the real world.");
92 " - Name of the specified logical volume is used as the mesh name.");
94 " - /score/mesh commands do not affect for this mesh.");
96 " - If copyNumberLevel is set, the copy number of that-level higher");
98 " in the geometrical hierarchy is used as the index.");
109 " halfSize defines the half-width of the probing cube.");
165 "Define starting angle and span for tube segment mesh.");
167 "This command is not needed for cylinder mesh");
248 "overlays the material in the mass geometry");
250 "physics quantities such as energy deposition");
259 "Locate a probe in the global coordinate system.");
268 "Parameter <proj> specified which projection(s) to be drawn.");
270 " 100 : xy-plane, 010 : yz-plane, 001 : zx-plane -- default 111");
272 " 100 : N/A, 010 : z_phi-plane, 001 : r_phi-plane -- default 111");
290 " 0 : z-phi, 1: r-phi, 2: r-z for cylinder mesh");
315 "Min/Max of the color map is calculated according to the actual scores.");
367 "Each value is multiplied by the specified factor.");
393 new G4UIcommand(
"/score/dumpAllQuantitiesWithFactor",
this);
395 "Dump all quantities of the mesh to file.");
397 "Each value is multiplied by the specified factor.");
412 "defined and assigned.");
414 "be defined by /analysis/h1/create command.");
416 "This command is available only for real-world volume or probe.");
418 "each copy number of the scoring volume.");
420 "than one scorers fill that histogram.");
517 fSMan->
DrawMesh(meshName, psName, iPlane, iColumn, colorMapName);
537 ed <<
"Mesh name <" << meshName <<
"> is not found. Command ignored.";
555 ed <<
"Mesh name <" << meshName <<
"> is not found. Command ignored.";
573 ed <<
"Mesh name <" << meshName <<
"> is not found. Command ignored.";
590 ed <<
"Mesh name <" << meshName <<
"> is not found. Command ignored.";
614 <<
"> is still open. Close it first. Command ignored.";
629 <<
"] : Scoring mesh <" << newVal
630 <<
"> already exists. Command ignored.";
643 <<
"> is still open. Close it first. Command ignored.";
658 <<
"] : Scoring mesh <" << newVal
659 <<
"> already exists. Command ignored.";
671 << mesh->GetWorldName()
672 <<
"> is still open. Close it first. Command ignored.";
684 mesh->SetCopyNumberLevel(idx);
691 <<
"] : Scoring mesh <" << meshName
692 <<
"> already exists. Command ignored.";
704 << mesh->GetWorldName()
705 <<
"> is still open. Close it first. Command ignored.";
725 << qname <<
"> already exists. Use another name.";
736 ed <<
"ERROR : No mesh is currently open. Open/create a mesh first. "
741 if(mesh->GetShape() != MeshShape::probe)
744 ed <<
"ERROR : Inconsistent mesh type. Close current mesh and open "
756 ed <<
"Material <" << newVal
757 <<
"> is not defind in G4NistManager. Command is ignored.\n"
758 <<
"Use /material/nist/listMaterials command to see the available "
785 << newVal <<
"> is not defined. Command ignored.";
805 << newVal <<
"> is not defined. Command ignored." <<
G4endl;
817 <<
"> is still open. Close it first. Command ignored.";
827 << newVal <<
"> does not exist. Command ignored.";
851 if(shape == MeshShape::realWorldLogVol)
855 <<
"] : Number of mesh command cannot be set for this type of mesh. "
872 if(shape == MeshShape::box)
885 <<
"] : This mesh is not Box. Command ignored.";
892 if(shape != MeshShape::cylinder)
896 <<
"] : This mesh is not Cylinder. Command ignored.";
904 vsize[0] = (mesh->
GetSize()).x();
905 vsize[1] =
StoD(token[0]);
906 vsize[2] =
StoD(token[1]);
916 vsize[1] = (mesh->
GetSize()).y();
917 vsize[2] = (mesh->
GetSize()).z();
925 mesh->
SetAngles(stphi * unt, spphi * unt);
935 G4double centerPosition[3] = { 0., 0., 0. };
942 centerPosition[0] = xyz.
x();
943 centerPosition[1] = xyz.
y();
944 centerPosition[2] = xyz.
z();
968 ed <<
"ERROR: No mesh is currently open. Open/create a mesh first. "
990 while(!(val = next()).
empty())
992 token.push_back(val);
1005 G4cout <<
".... G4ScoringMessenger::MeshBinCommand - G4ScoringBox"
1013 G4cout <<
".... G4ScoringMessenger::MeshBinCommand - G4ScoringCylinder"
1022 "invalid mesh type");
1046 ed <<
"G4TScoreHistFiller is not instantiated in this application.";
1055 auto mesh =
sm->FindMesh(meshName);
1059 ed <<
"Mesh name <" << meshName <<
"> is not found.";
1063 auto shape = mesh->GetShape();
1064 if(shape != MeshShape::realWorldLogVol && shape != MeshShape::probe)
1067 ed <<
"Mesh <" << meshName
1068 <<
"> is not real-world logical volume or probe.";
1073 auto prim = mesh->GetPrimitiveScorer(primName);
1077 ed <<
"Primitive scorer name <" << primName <<
"> is not found.";
1085 ed <<
"Primitive scorer <" << primName
1086 <<
"> does not support direct histogram filling.";
1091 pp->Plot(copyNo, histID);
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
std::ostringstream G4ExceptionDescription
static const G4double fac
std::vector< G4String > G4TokenVec
G4GLOB_DLL std::ostream G4cout
void RegisterScoringMesh(G4VScoringMesh *scm)
G4int GetVerboseLevel() const
void SetVerboseLevel(G4int vl)
G4VScoreColorMap * GetScoreColorMap(const G4String &mapName)
void DumpAllQuantitiesToFile(const G4String &meshName, const G4String &fileName, const G4String &option="")
G4VScoringMesh * FindMesh(G4VHitsCollection *map)
void SetCurrentMesh(G4VScoringMesh *scm)
void DrawMesh(const G4String &meshName, const G4String &psName, const G4String &colorMapName, G4int axflg=111)
void SetFactor(G4double val=1.0)
G4VScoringMesh * GetCurrentMesh() const
void ListScoreColorMaps()
static G4ScoringManager * GetScoringManagerIfExist()
void DumpQuantityToFile(const G4String &meshName, const G4String &psName, const G4String &fileName, const G4String &option="")
G4UIcmdWith3VectorAndUnit * mBoxSizeCmd
G4UIcmdWith3VectorAndUnit * probeLocateCmd
G4UIcommand * mCylinderAngleCmd
G4UIcommand * dumpQtyToFileCmd
G4UIcmdWithoutParameter * dumpCmd
G4UIcmdWithADoubleAndUnit * mRotXCmd
G4UIcmdWithAString * meshBoxCreateCmd
G4UIdirectory * colorMapDir
void FillTokenVec(G4String newValues, G4TokenVec &token)
G4UIcmdWithoutParameter * mTResetCmd
void MeshBinCommand(G4VScoringMesh *mesh, G4TokenVec &token)
G4ScoringMessenger(G4ScoringManager *SManager)
G4UIcmdWithAnInteger * verboseCmd
G4UIdirectory * mTransDir
G4UIcommand * probeCreateCmd
G4UIcommand * dumpAllQtsToFileCmd
G4UIcommand * drawColumnCmd
G4UIcmdWith3VectorAndUnit * mTXyzCmd
G4UIcmdWithADoubleAndUnit * mRotYCmd
G4UIcommand * mCylinderSizeCmd
void Fill1D(G4UIcommand *cmd, G4String newValues)
G4UIcmdWithAString * meshOpnCmd
G4UIcmdWithoutParameter * meshClsCmd
G4UIcmdWithADoubleAndUnit * mCylinderRMinCmd
G4String GetCurrentValue(G4UIcommand *command)
G4UIcommand * dumpAllQtsWithFactorCmd
G4UIcmdWithAString * probeMatCmd
G4UIcommand * dumpQtyWithFactorCmd
G4UIcommand * colorMapMinMaxCmd
G4UIcmdWithAString * meshCylinderCreateCmd
G4UIdirectory * meshCreateDir
G4UIcmdWithoutParameter * listCmd
G4UIcmdWithADoubleAndUnit * mRotZCmd
G4UIcommand * meshRWLogVolCreateCmd
G4UIcmdWithoutParameter * listColorMapCmd
G4UIcmdWithAString * floatMinMaxCmd
void SetNewValue(G4UIcommand *command, G4String newValues)
void SetDefaultUnit(const char *defUnit)
static G4ThreeVector GetNew3VectorValue(const char *paramString)
void SetParameterName(const char *theNameX, const char *theNameY, const char *theNameZ, G4bool omittable, G4bool currentAsDefault=false)
void SetDefaultUnit(const char *defUnit)
static G4double GetNewDoubleValue(const char *paramString)
void SetParameterName(const char *theName, G4bool omittable, G4bool currentAsDefault=false)
void SetParameterName(const char *theName, G4bool omittable, G4bool currentAsDefault=false)
void SetDefaultValue(const char *defVal)
static G4int GetNewIntValue(const char *paramString)
void SetToBeBroadcasted(G4bool val)
static G4double ValueOf(const char *unitName)
static G4String ConvertToString(G4bool boolVal)
const G4String & GetCommandPath() const
void SetParameter(G4UIparameter *const newParameter)
void SetGuidance(const char *aGuidance)
void CommandFailed(G4int errCode, G4ExceptionDescription &ed)
void SetRange(const char *rs)
G4double StoD(G4String s)
void SetDefaultValue(const char *theDefaultValue)
void SetParameterRange(const char *theRange)
void SetDefaultUnit(const char *theDefaultUnit)
void SetMinMax(G4double minVal, G4double maxVal)
void SetFloatingMinMax(G4bool vl=true)
static G4VScoreHistFiller * Instance()
G4ThreeVector GetSize() const
MeshShape GetShape() const
void RotateY(G4double delta)
void SetAngles(G4double, G4double)
const G4String & GetWorldName() const
void SetNumberOfSegments(G4int nSegment[3])
void SetCenterPosition(G4double centerPosition[3])
void RotateX(G4double delta)
void SetSize(G4double size[3])
void RotateZ(G4double delta)
def SetMaterial(material_name)