KLE Random Field and PCE metamodel

Hello everyone,

I am trying to perform probabilistic computations for a FEM model involving KLE random fields. In my analysis, I would like to build a metamodel based on Polynomial Chaos Expansion (PCE) using UQpyLab.

The realizations of the random fields are generated with my own Python script, since, as far as I know, UQpyLab does not include a built-in implementation of random fields.

Here is the workflow I am planning to follow:

Step 1: Generate N realizations of Gaussian random field (representing one model parameter - e.g. soil friction angle) using the Karhunen–Loève Expansion (KLE) method with my own script. Then, create input files for the computational program ZSOIL. The finite element mesh consists of 725 elements, so for each realization I obtain a vector of 725 random input variables.

Step 2: Run the numerical simulations and collect the model responses, obtaining a vector of N outputs (for one selected QoI).

Step 3: Use UQpyLab to build a PCE model and check whether the model error is acceptable.

Step 4: Generate new samples using the same script that was used for the random field generation, and propagate them through the PCE metamodel.

I have a few doubts about this workflow:

  1. In the case of a KLE field, is the number of random input variables equal to the number of finite elements in the FEM model? Or, since I am using the Karhunen–Loève expansion, should the number of random input variables be reduced?

  2. Is it correct to generate new samples using the same method as for the initial random field realizations?

  3. Overall, is such a workflow feasible to implement with UQpyLab, or would you recommend a more rational approach?

Any feedback or clarification would be greatly appreciated.

Thank you very much for your time and help!

Best regards,
Jacek Świegoda