Problem 877 - "G4LEDATA variable not set", but it IS set
Summary: "G4LEDATA variable not set", but it IS set
Status: CLOSED INVALID
Alias: None
Product: Geant4
Classification: Unclassified
Component: processes/electromagnetic/lowenergy (show other problems)
Version: 8.0
Hardware: PC Linux
: P2 major
Assignee: Maria.Grazia.Pia
URL:
Depends on:
Blocks:
 
Reported: 2006-07-10 12:52 CEST by dwhite
Modified: 2008-02-27 19:17 CET (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this problem.
Description dwhite 2006-07-10 12:52:21 CEST
My environment variable is set to
G4LEDATA = c:/geant4/geant4.8.0.p01/data/G4EMLOW4.0

but when I try to run any G4LowEnergy processes, I get an Exception error
message stating that the G4LEDATA environment variable is not set. I inspected
the G4LowEnergy___ include and source files, and it appears that when a low
energy process calls G4CompositeEMDataSet, the data filename created requires a
Z range, but nowhere does this Z range appear to be declared. If Z's not
declared, the generated filename can't ever exist.  How can I fix this problem?

Thanks!
Comment 1 Maria.Grazia.Pia 2006-07-10 16:07:59 CEST
I cannot reproduce your problem. If the G4LEDATA variable is set correctly,
the code works properly (and the user does not have to bother about the
internal details of the algorithms loading the data sets from the data library
file). Please note that a new version of the Geant4 Low Energy Electromagnetic
data set has been released with Geant4 8.1; it is required by the new version
of the lowenergy package.
Comment 2 dwhite 2006-07-10 16:20:59 CEST
Does the new lowenergy package require Geant4.8.1 or does 4.8.1 require the new
package?

Are you including any header files other than the G4LowEnergy[process].hh files
in order for these processes to run? Do I need to add a header file for some
kind of low energy process manager?

Thanks for you help.
Comment 3 dwhite 2006-07-10 16:22:59 CEST
Do you think re-building Geant4.8.0 after installing EMLOW4.0 might help?
Comment 4 Maria.Grazia.Pia 2006-07-10 16:31:59 CEST
The lowenergy package is released as part of Geant4. The newest version comes
with Geant4 8.1 release.

For the correct usage of the Geant4 lowenergy processes you may want to have a
look at a few of the advanced examples (geant4/examples/advanced/brachytherapy
or /radioprotection or /medical_linac), which extensively use this physics
package; each example comes with a detailed README file documenting it, and
further information in the Geant4 Advanced Examples web site
http://www.ge.infn.it/geant4/examples

Best wishes,
Maria Grazia Pia
Comment 5 dwhite 2006-07-11 09:10:59 CEST
Thank you for your quick feedback, Maria.

I have examined the radioprotection and brachytherapy examples and compiled them
(clean compiles). I receive the same Exception error message for these examples
as I do with my own code when it tries to access the low energy data, but the
env.sh clearly sets up G4LEDATA with the path to the EMLOW data. I have tried
using EMLOW2.3, EMLOW3.0, and EMLOW4.0 with no luck. Yesterday evening I
reinstalled geant4.8.0 and the low energy data. This did not help. I'll try
installing Geant4.8.1, in the meantime.

I can see no other solutions, short of editing the G4CompositeEMDataSet.cc to
allow for setting up the zMin and zMax values in the constructor.

I'm using a WindowsXP OS and compiling the code using the Cygwin Linux
environment (which is where my environment variables are set up--maybe this is
the problem?). I have the Microsoft Visual Studio 8 and Microsoft Platform SDK.
Comment 6 dwhite 2006-07-14 14:19:59 CEST
The difference in environments was the problem, after all, I've found. The
"Installing Geant on Windows" discusses cygwin setup and setting environment
variables within but makes no mention that the programs must be executed from
within the cygwin shell. I've been clicking on the .exe's in the folder, which
means that I had to make a batch file to declare environment variables within a
DOS command prompt.
Comment 7 dwhite 2006-07-14 14:19:59 CEST
The difference in environments was the problem, after all, I've found. The
"Installing Geant on Windows" discusses cygwin setup and setting environment
variables within but makes no mention that the programs must be executed from
within the cygwin shell. I've been clicking on the .exe's in the folder, which
means that I had to make a batch file to declare environment variables within a
DOS command prompt.