source: issm/trunk-jpl/test/NightlyRun/test445.m@ 23438

Last change on this file since 23438 was 23438, checked in by schlegel, 6 years ago

NEW: add new dakota test for steadystate solution

File size: 3.4 KB
Line 
1%Test Name: SquareSheetShelfSteaEnthalpyHO3dDakotaSampNeff
2md=triangle(model(),'../Exp/Square.exp',150000.);
3md=setmask(md,'../Exp/SquareShelf.exp','');
4md=parameterize(md,'../Par/SquareSheetShelf.par');
5md=extrude(md,3,2.);
6md=setflowequation(md,'HO','all');
7md.cluster=generic('name',oshostname(),'np',3);
8md.timestepping.time_step=0.;
9md.thermal.isenthalpy=1;
10md.thermal.isdynamicbasalspc=1;
11md.initialization.waterfraction=zeros(md.mesh.numberofvertices,1);
12md.initialization.watercolumn=zeros(md.mesh.numberofvertices,1);
13
14md.friction.coupling=3;
15md.friction.effective_pressure=md.materials.rho_ice*md.constants.g*md.geometry.thickness+md.materials.rho_water*md.constants.g*md.geometry.base;
16
17%dakota version
18version=IssmConfig('_DAKOTA_VERSION_'); version=version(1:3); version=str2num(version);
19
20%variables
21md.qmu.variables.neff=normal_uncertain('scaled_FrictionEffectivePressure',1,.05);
22
23%responses
24md.qmu.responses.MaxVel=response_function('MaxVel',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
25md.qmu.responses.MassFlux1=response_function('indexed_MassFlux_1',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
26md.qmu.responses.MassFlux2=response_function('indexed_MassFlux_2',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
27md.qmu.responses.MassFlux3=response_function('indexed_MassFlux_3',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
28md.qmu.responses.MassFlux4=response_function('indexed_MassFlux_4',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
29md.qmu.responses.MassFlux5=response_function('indexed_MassFlux_5',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
30md.qmu.responses.MassFlux6=response_function('indexed_MassFlux_6',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
31md.qmu.responses.MassFlux7=response_function('indexed_MassFlux_7',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]);
32
33%mass flux profiles
34md.qmu.mass_flux_profiles={'../Exp/MassFlux1.exp','../Exp/MassFlux2.exp','../Exp/MassFlux3.exp','../Exp/MassFlux4.exp','../Exp/MassFlux5.exp','../Exp/MassFlux6.exp','../Exp/Square.exp'};
35md.qmu.mass_flux_profile_directory=pwd;
36
37md.qmu.method =dakota_method('nond_samp');
38md.qmu.method(end)=dmeth_params_set(md.qmu.method(end),...
39 'seed',1234,...
40 'samples',20,...
41 'sample_type','random');
42
43%% a variety of parameters
44md.qmu.params.direct=true;
45md.qmu.params.analysis_components='';
46md.qmu.params.tabular_graphics_data=true;
47
48if version>=6,
49 md.qmu.params.analysis_driver='matlab';
50 md.qmu.params.evaluation_scheduling='master';
51 md.qmu.params.processors_per_evaluation=2;
52else
53 md.qmu.params.analysis_driver='steadystate';
54 md.qmu.params.evaluation_concurrency=1;
55end
56
57%partitioning
58md.qmu.numberofpartitions=10;
59md=partitioner(md,'package','chaco','npart',md.qmu.numberofpartitions,'weighting','on');
60md.qmu.partition=md.qmu.partition-1;
61md.qmu.isdakota=1;
62
63md.stressbalance.reltol=10^-5; %tighten for qmu analyses
64
65md=solve(md,'Steadystate','overwrite','y');
66
67%Fields and tolerances to track changes
68md.qmu.results=md.results.dakota;
69
70%we put all the mean and stdev data in the montecarlo field, which we will use to test for success.
71md.results.dakota.montecarlo=[];
72for i=1:8,
73 md.results.dakota.montecarlo=[md.results.dakota.montecarlo md.results.dakota.dresp_out(i).mean];
74end
75for i=1:8,
76 md.results.dakota.montecarlo=[md.results.dakota.montecarlo md.results.dakota.dresp_out(i).stddev];
77end
78field_names ={'montecarlo'};
79field_tolerances={1e-11};
80field_values={...
81 md.results.dakota.montecarlo,...
82 };
83
Note: See TracBrowser for help on using the repository browser.