Hello, I tried to run the example RPC and found that no output signal was generated.
1. I looked at the code of the example and found a problem.
This is the code in the example
// The geometry of the RPC.
const double gap = 0.2; // [cm]
const double thickness = 0.2; // [cm]
const double eps = 8.; // [1]
const double voltage = -9500; // [V]
const double sigma = 1e-2; // [S/m]
ComponentParallelPlate* RPC = new ComponentParallelPlate();
RPC->Setup(gap, thickness, eps, voltage, sigma);
The parameter gap indicates the thickness of the air gap
This is the definition of ComponentParallelPlate->Setup
void ComponentParallelPlate::Setup(const int N, std::vector<double> eps,
std::vector<double> d, const double V,
std::vector<int> sigmaIndex) {
There is no definition of the parameter gap, the parameter N is amount of layers in the geometry, this includes the gas gaps`
I don’t know why this is.
2. The second question
Is it possible to replace the ComponentParallelPlate function with COMSOL?
I checked the code of ComponentParallelPlate . I guess the main role of ComponentParallelPlate is to build the geometric model of the detector, define the material properties and calculate the weighted electric field.
I was wondering if building the geometric model and calculating the weight field could be done in COMSOL if we assume that the weight field is not changing with time.
In other words, the weight field of MRPC is calculated using COMSOL and then imported into Garfield++ for simulation.
Looking forward to your reply.