Problem in creating a Sequential Polynomial Chaos kriging

Dear all,
I have some problem in creating a SPCK of a test-function:
The code I used is:

clearvars
rng(100,‘twister’)
uqlab

ModelOpts.mString = ‘X.*sin(X).*cos(X)’;
ModelOpts.isVectorized = true;
myModel = uq_createModel(ModelOpts);

IOpts.Marginals.Type = ‘Uniform’;
IOpts.Marginals.Parameters = [0 , 6];
myInput = uq_createInput(IOpts);

N = 30;
X_LHS = uq_getSample(N,‘LHS’);
Y_LHS = uq_evalModel(myModel,X_LHS);

SeqPCKOpts.Type = ‘Metamodel’;
SeqPCKOpts.MetaType = ‘PCK’;
SeqPCKOpts.Mode = ‘sequential’;
SeqPCKOpts.ExpDesign.X = X_LHS;
SeqPCKOpts.ExpDesign.Y = Y_LHS;
SeqPCKOpts.PCE.Method = ‘LARS’;
SeqPCKOpts.PCE.Degree = 1:10;
SeqPCKOpts.Kriging.Corr.Family = ‘Gaussian’;
mySeqPCK = uq_createModel(SeqPCKOpts);

while the complete error is:

Undefined function ‘getIpOptions’ for input arguments of type ‘struct’.

Error in fmincon (line 846)
options = getIpOptions(options,sizes.nVar,mEq,flags.constr,defaultopt,10,0.01);

Error in uq_Kriging_optimizer (line 327)
[theta,Jstar,exitflag.BFGS,output] = fmincon(…

Error in uq_Kriging_calculate (line 92)
uq_Kriging_optimizer(X, Y, optim_options, current_model);

Error in uq_calculateMetamodel (line 22)
success = uq_Kriging_calculate(current_model);

Error in uq_initialize_uq_metamodel (line 458)
success = uq_calculateMetamodel(current_model);

Error in uq_core_module/run_initialization_script (line 208)
initHandle(obj);

Error in uq_core_model/add_module (line 100)
success = this.run_initialization_script(obj);

Error in uq_createModel (line 116)
eval(str);

Error in uq_PCK_calculate_coefficients (line 145)
myPCKrigingoo = uq_createModel(kopts, ‘-private’);

Error in uq_calculateMetamodel (line 24)
success = uq_PCK_calculate_coefficients(current_model);

Error in uq_initialize_uq_metamodel (line 458)
success = uq_calculateMetamodel(current_model);

Error in uq_core_module/run_initialization_script (line 208)
initHandle(obj);

Error in uq_core_model/add_module (line 100)
success = this.run_initialization_script(obj);

Error in uq_createModel (line 116)
eval(str);

Error in Experiment_1_PCK (line 82)
mySeqPCK = uq_createModel(SeqPCKOpts);

Thak you very much for your answers.

Dear @SimoneRomani12

Your example works fine for me. What Matlab and UQLab version are you using?

Best regards
Styfen

Dear Styfen,
Thank you for your answer; I used Matlab R2020b, but, considering your question, I tried to use Matlab R2023b and the code runs.

Thank you again
Simone