Scoring in amorphous vs crystal volume

Hi everyone.

I was wondering if you could help me with a doubt that I have.

I am trying to simulate an Al2O3 crystal with 1mm3 being irradiated with a proton beam.
Initially I considered it an amorphous cubic volume and scored the total deposited energy in the crystal (the goal is to scorer this quantity per particle step - I am working on the scorer now).
I then used the G4CrystalExtension where I put all the crystal parameters in G4CrystalUnitCell (below) and scored the same quantity.
I was expecting different results between the two simulation since now I was including the crystalline effects, however, I got the same data.
Is this suppose to happen or am I doing something wrong?

Plus, I am new to geant4 so I am still trying to understand everything.

Thanks in advance!

// define crystal

G4Box* solidCryst = new G4Box(“crystal”, cryst_dX/2, cryst_dZ/2, cryst_dZ/2);

G4ExtendedMaterial* CrystalMat = new G4ExtendedMaterial("crystal.material",cryst_mat);

CrystalMat->RegisterExtension(std::unique_ptr<G4CrystalExtension>(new G4CrystalExtension(CrystalMat)));
G4CrystalExtension* crystalExtension = (G4CrystalExtension*)CrystalMat->RetrieveExtension("crystal");

crystalExtension->SetUnitCell(new G4CrystalUnitCell(4.75 * CLHEP::angstrom,
                                                    4.75 * CLHEP::angstrom,
                                                    12.99 * CLHEP::angstrom,
                                                    2/3 * CLHEP::pi,

CrystalMat->RegisterExtension(std::unique_ptr<MaterialExtensionData>(new MaterialExtensionData("ExtendedData")));
MaterialExtensionData* materialExtension = (MaterialExtensionData*)CrystalMat->RetrieveExtension("ExtendedData");

G4LogicalCrystalVolume* fBoxLogicCrystal = new G4LogicalCrystalVolume(solidCryst,

new G4PVPlacement(0,

Hello Cristiana,

The crystal extension will only affect the results if the G4Channeling process is attached to the incident (charged) particle in question. This is the only physics process in Geant4 that makes use of this crystal extension. It is intended for crystal channelling (guiding of incident particles) and most useful when the particle is close to the channelling orientation (e.g. the plane). This channelling effect relies on some extra text files given in the channelling example and covers only a certain crystal axis for a certain crystal, e.g Si <100>.

Also, the channelling physics modulates the other physics processes through the generic biasing interface (i.e. more scattering close the nuclei, less between the planes) and a consequence of this is that the particle weight will quickly drop to zero, in which case the scoring of energy deposition or dose, that by default takes into account the weight, may not be correct.

Hope this helps,

Hi Laurie.

Thank you for replying.

So I would need to have the text files specific for my crystal?
Do you know if this extension is usefull for straight crystals like the one I am simulating or only for bent crystals?

Again, thank you so much.

Hello Cristiana,

Yes, you would need the text files for a particular crystal lattice and also for a particularly orientation (e.g. <111> or <110> for Si). It absolutely works for straight crystals too where you will also see channelling effects. The files were originally produced using a separate code DYNECHARM++. See here:

Note though if you’re using a primitive scorer you should not include the weight when trying to accumulate deposited energy in the crystal as the weight will be wrong due to how the channelling works currently.