Gumbel random variable providing 'infinite' in FORM analysis

Good morning, everyone.

I’m having some trouble perfoming a FORM analysis in a structural problem. I’m using a Gumbel random variable for distributed live load in beams, which is considered in a Finite Elements model as a part of the load in the elements. This load is the sum of X(5), the dead load considered as gaussian, and X(6), the Gumbel live load.
When carrying the FORM analysis, at certain point, the Gumbel variable goes to infinite, leading to numerical instability in the FEM model.
I have conducted some analysis using the same code and the same variables last month and had no problem, except that I changed the limit state a bit.
Anyone had this same odd problem? Can the limit state, evaluated with the results of the FEM model, be causing this trouble?

I’ve tried to search the manuals but with no success.

Here is the random variable:

InputOpts.Marginals(5).Name = 'g_v';        % Permanente
InputOpts.Marginals(5).Type = 'Gaussian';
InputOpts.Marginals(5).Moments = [0.2544 , 0.0305];

InputOpts.Marginals(6).Name = 'qq_v';        % Variável (q50)
InputOpts.Marginals(6).Type = 'Gumbel';
InputOpts.Marginals(6).Moments = [0.16 , 0.064];

And here is where they are used in the FEM model:

gv = X(5)
qv = X(6)
qpv = gv+qv;

Apparently, the sum of the variables leads X(6) to infinite. I’ve tried putting another variable, X(9) with the same specs of X(6). When X(6) is in the sum above, it goes to infinite and X(9) result as a correct number. When X(9) is in the sum, it goes to infinite and X(6) result as a correct number.

This is the error message:

> something went extremely wrong while trying to evaluate the analysis
> You may find additional information in the catched exeption:
> Matrix dimensions must agree.
> Error in InterX (line 60)
>     S1 = dx1.*y1(1:end-1) - dy1.*x1(1:end-1);
> Error in EEL_pilar (line 110)
> intersec_resistencia = InterX(Ls,Lr);
> Error in Facholli_reliability_mechanical (line 431)
>    G(1,j) = EEL_pilar(As1,As2,dl,bw,h,Ms,Ns);
> Error in uq_eval_uq_default_model (line 48)
>             [outCurr{1:num_of_out_args}]  =
>             model_handle(X(ii,:));
> Error in uq_evalLimitState (line 67)
>         M_X = uq_evalModel(FullModel,X);
> Error in
> uq_form>@(X)uq_evalLimitState(X,current_model,Options.LimitState,Options.HPC.FORM)
> (line 31)
> limit_state_fcn = @(X) uq_evalLimitState(X,
> current_model, Options.LimitState, Options.HPC.FORM);
> Error in uq_FORMStepFunction>uq_FORMMeritFunction (line
> 17)
> g_X = limit_state_fcn(X);
> Error in uq_FORMStepFunction (line 7)
> [CurrentMerit, X, g_X] =
> uq_FORMMeritFunction(limit_state_fcn, transform, U +
> SearchDir*b^k, c);
> Error in uq_form (line 234)
>                     [StepValue, StepEvals] =
>                     uq_FORMStepFunction(limit_state_fcn,
>                     transform, U, SearchDir, b, k, c,
>                     MeritU);
> Error in uq_reliability (line 30)
>         results = uq_form(CurrentAnalysis);
> Error in uq_initialize_uq_reliability (line 633)
> uq_runAnalysis(current_analysis);
> Error in Facholli_reliability_main (line 67)
>  FORMAnalysis = uq_createAnalysis(FORMOpts);

Thank you in advance!

Best regards,

I am having the same problem. Did you manage to find a solution?
Thanks in advance

Hi, Ziead!

Unfortunately no. Still going to infinite, even when I change from Gumbel to any other distribution. Did you find a solution?

Hello, @Ziead_Metwally

After all this time, I was finally able to get this thing right!
I changed the iHLRF algorithm to the classic HLRF and removed all the bounds of the random variables.
Don’t know why but this worked, and the results seems correct.