Ok, the message "GetBz Should be implimented" is misleading since it's printed from GetBxyz method, which is indeed isn't implemented in PndConstField. Also it isn't implemented in PndFieldMap class, but there is no messages with maps fields usage.
Seems like this call happens in
void PndMultiField::GetFieldValue(const Double_t point[3], Double_t* bField)
{
PndRegion *fReg=0;
FairField *fField=0;
for (fMapIter=fFieldMaps.begin(); fMapIter!= fFieldMaps.end();fMapIter++ ){
fReg=fMapIter->first;
if(fReg->IsInside(point[2])){
fField=fMapIter->second;
break;
}
}
if(fField){
fField->GetBxyz(point, bField);
}else{
bField[0] = 0;
bField[1] = 0;
bField[2] = 0;
}
}
But if I understand this code correctly is should call GetBxyz for both PndConstField as well as PndFieldMap. Why there is no error messages when PndFieldMap is used?
[Updated on: Tue, 02 July 2013 11:10]
Report message to a moderator