I know the G4box, is used to have the geometry of the world space. but I want to be sure that IT takes a geometry as a half dimension of the geometry such as for a box.
As an example, In microyz, if I have the full dimension of water box 640 x 280 x 25 um. Is it write, please?
G4VPhysicalVolume* DetectorConstruction::DefineVolumes()
{
// G4double worldLength = 10 * m; origin
// World dimensions
G4double worldLengthX = 640 * um;
G4double worldLengthY = 280 * um;
G4double worldLengthZ = 25 * um;
G4double maxWorldExtent = std::max({worldLengthX, worldLengthY, worldLengthZ});
G4GeometryManager::GetInstance()->SetWorldMaximumExtent(maxWorldExtent);
G4cout << "Computed tolerance = "
<< G4GeometryTolerance::GetInstance()->GetSurfaceTolerance() / nm << " nm" << G4endl;
// Define the world solid
auto* worldS = new G4Box("world", // its name
worldLengthX / 2, worldLengthY / 2, worldLengthZ / 2); // its size
// Logical volume for the world
auto* worldLV = new G4LogicalVolume(worldS, // its solid
fpWaterMaterial, // its material
"World_LV"); // its name
// Physical placement of the world
G4VPhysicalVolume* worldPV = new G4PVPlacement(nullptr, // no rotation
G4ThreeVector(), // at (0,0,0)
worldLV, // its logical volume
"World", // its name
nullptr, // its mother volume
false, // no boolean operations
0, // copy number
false); // checking overlaps
// Set user limits for the world volume
worldLV->SetUserLimits(new G4UserLimits(fpMaxStepSize, DBL_MAX, DBL_MAX, fpTrackingCut));
PrintParameters();
return worldPV; // Return the physical volume of the world
}