source:
issm/oecreview/Archive/20545-21336/ISSM-21033-21034.diff@
21337
Last change on this file since 21337 was 21337, checked in by , 8 years ago | |
---|---|
File size: 10.2 KB |
-
../trunk-jpl/test/NightlyRun/test250.m
1 %Test Name: SquareShelfTranForceNeg2dDakotaSampLinearPart 2 md=triangle(model(),'../Exp/Square.exp',180000.); 3 md=setmask(md,'all',''); 4 md=parameterize(md,'../Par/SquareShelf.par'); 5 md=setflowequation(md,'SSA','all'); 6 md.cluster=generic('name',oshostname(),'np',3); 7 8 md.timestepping.time_step=1; 9 md.settings.output_frequency=1; 10 md.timestepping.final_time=4; 11 12 smb = ones(md.mesh.numberofvertices,1)*3.6; 13 smb=[ smb smb*-1 ]; 14 15 md.smb.mass_balance= smb; 16 md.smb.mass_balance(end+1,:)=[1.5 3]; 17 md.transient.isthermal=0; 18 %Dakota options 19 20 %dakota version 21 version=IssmConfig('_DAKOTA_VERSION_'); version=version(1:3); version=str2num(version); 22 23 %partitioning 24 md.qmu.numberofpartitions=md.mesh.numberofvertices; 25 md=partitioner(md,'package','linear'); 26 md.qmu.partition=md.qmu.partition-1; 27 28 %variables 29 md.qmu.variables.surface_mass_balance=normal_uncertain('scaled_SmbMassBalance',1,0.1); 30 31 %responses 32 md.qmu.responses.MaxVel=response_function('MaxVel',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]); 33 md.qmu.responses.IceVolume=response_function('IceVolume',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]); 34 md.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]); 35 md.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]); 36 md.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]); 37 md.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]); 38 md.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]); 39 md.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]); 40 41 %mass flux profiles 42 md.qmu.mass_flux_profiles={'../Exp/MassFlux1.exp','../Exp/MassFlux2.exp','../Exp/MassFlux3.exp','../Exp/MassFlux4.exp','../Exp/MassFlux5.exp','../Exp/MassFlux6.exp'}; 43 md.qmu.mass_flux_profile_directory=pwd; 44 45 %% nond_sampling study 46 md.qmu.method=dakota_method('nond_samp'); 47 md.qmu.method(end)=dmeth_params_set(md.qmu.method(end),'seed',1234,'samples',20,'sample_type','lhs'); 48 dver=textscan(IssmConfig('_DAKOTA_VERSION_'),'%[0123456789].%[0123456789].%[0123456789]'); 49 if ((str2num(dver{1}{1})==4 && str2num(dver{2}{1})>2) || str2num(dver{1}{1})>4) 50 md.qmu.method(end)=dmeth_params_set(md.qmu.method(end),'rng','rnum2'); 51 end 52 53 %parameters 54 md.qmu.params.direct=true; 55 md.qmu.params.analysis_components=''; 56 md.qmu.params.interval_type='forward'; 57 md.qmu.params.tabular_graphics_data=true; 58 md.qmu.isdakota=1; 59 60 if version>=6, 61 md.qmu.params.analysis_driver='matlab'; 62 md.qmu.params.evaluation_scheduling='master'; 63 md.qmu.params.processors_per_evaluation=2; 64 else 65 md.qmu.params.analysis_driver='stressbalance'; 66 md.qmu.params.evaluation_concurrency=1; 67 end 68 69 70 md.stressbalance.reltol=10^-5; %tighten for qmu analyses 71 md.transient.requested_outputs={'IceVolume'}; 72 73 %solve 74 md=solve(md,TransientSolutionEnum(),'overwrite','y'); 75 md.qmu.results=md.results.dakota; 76 77 %Fields and tolerances to track changes 78 md.results.dakota.moments=[]; 79 for i=1:8, 80 md.results.dakota.moments=[md.results.dakota.moments md.results.dakota.dresp_out(i).mean]; 81 end 82 for i=1:8, 83 md.results.dakota.moments=[md.results.dakota.moments md.results.dakota.dresp_out(i).stddev]; 84 end 85 field_names ={'moments'}; 86 field_tolerances={1e-6}; 87 field_values={... 88 md.results.dakota.moments,... 89 }; -
../trunk-jpl/test/NightlyRun/test251.m
1 %Test Name: SquareShelfTranForceNeg2dDakotaLocalLinearPart 2 md=triangle(model(),'../Exp/Square.exp',180000.); 3 md=setmask(md,'all',''); 4 md=parameterize(md,'../Par/SquareShelf.par'); 5 md=setflowequation(md,'SSA','all'); 6 md.cluster=generic('name',oshostname(),'np',3); 7 8 md.timestepping.time_step=1; 9 md.settings.output_frequency=1; 10 md.timestepping.final_time=4; 11 12 smb = ones(md.mesh.numberofvertices,1)*3.6; 13 smb=[ smb smb*-1 ]; 14 15 md.smb.mass_balance= smb; 16 md.smb.mass_balance(end+1,:)=[1.5 3]; 17 md.transient.isthermal=0; 18 %Dakota options 19 20 %dakota version 21 version=IssmConfig('_DAKOTA_VERSION_'); version=version(1:3); version=str2num(version); 22 23 %partitioning 24 md.qmu.numberofpartitions=md.mesh.numberofvertices; 25 md=partitioner(md,'package','linear'); 26 md.qmu.partition=md.qmu.partition-1; 27 28 %variables 29 md.qmu.variables.surface_mass_balance=normal_uncertain('scaled_SmbMassBalance',1,100); 30 31 %responses 32 md.qmu.responses.MaxVel=response_function('MaxVel',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]); 33 md.qmu.responses.IceVolume=response_function('IceVolume',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]); 34 md.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]); 35 md.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]); 36 md.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]); 37 md.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]); 38 md.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]); 39 md.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]); 40 41 %mass flux profiles 42 md.qmu.mass_flux_profiles={'../Exp/MassFlux1.exp','../Exp/MassFlux2.exp','../Exp/MassFlux3.exp','../Exp/MassFlux4.exp','../Exp/MassFlux5.exp','../Exp/MassFlux6.exp'}; 43 md.qmu.mass_flux_profile_directory=pwd; 44 45 %method 46 md.qmu.method =dakota_method('nond_l'); 47 48 %parameters 49 md.qmu.params.direct=true; 50 md.qmu.params.analysis_components=''; 51 md.qmu.params.interval_type='forward'; 52 md.qmu.params.fd_gradient_step_size='0.1'; 53 md.qmu.isdakota=1; 54 55 if version>=6, 56 md.qmu.params.analysis_driver='matlab'; 57 md.qmu.params.evaluation_scheduling='master'; 58 md.qmu.params.processors_per_evaluation=2; 59 else 60 md.qmu.params.analysis_driver='stressbalance'; 61 md.qmu.params.evaluation_concurrency=1; 62 end 63 64 65 md.stressbalance.reltol=10^-5; %tighten for qmu analyses 66 md.transient.requested_outputs={'IceVolume'}; 67 68 %solve 69 md=solve(md,TransientSolutionEnum(),'overwrite','y'); 70 md.qmu.results=md.results.dakota; 71 72 %Fields and tolerances to track changes 73 md.results.dakota.moments=[]; 74 for i=1:8, 75 md.results.dakota.moments=[md.results.dakota.moments md.results.dakota.dresp_out(i).mean]; 76 end 77 for i=1:8, 78 md.results.dakota.moments=[md.results.dakota.moments md.results.dakota.dresp_out(i).stddev]; 79 end 80 field_names ={'moments'}; 81 field_tolerances={1e-6}; 82 field_values={... 83 md.results.dakota.moments,... 84 }; -
../trunk-jpl/test/NightlyRun/test440.m
1 %Test Name: SquareSheetShelfDakotaScaledResponseLinearPart 2 md=triangle(model(),'../Exp/Square.exp',200000.); 3 md=setmask(md,'../Exp/SquareShelf.exp',''); 4 md=parameterize(md,'../Par/SquareSheetShelf.par'); 5 md=setflowequation(md,'SSA','all'); 6 md.cluster=generic('name',oshostname(),'np',3); 7 8 %partitioning 9 md.qmu.numberofpartitions=md.mesh.numberofvertices; 10 md=partitioner(md,'package','linear'); 11 md.qmu.partition=md.qmu.partition-1; 12 md.qmu.isdakota=1; 13 14 %Dakota options 15 16 %dakota version 17 version=IssmConfig('_DAKOTA_VERSION_'); version=version(1:3); version=str2num(version); 18 19 %variables 20 md.qmu.variables.rho_ice=normal_uncertain('MaterialsRhoIce',md.materials.rho_ice,0.01); 21 22 %responses 23 md.qmu.responses.MaxVel=response_function('scaled_Thickness',[],[0.0001 0.001 0.01 0.25 0.5 0.75 0.99 0.999 0.9999]); 24 25 %method 26 md.qmu.method =dakota_method('nond_l'); 27 28 %parameters 29 md.qmu.params.direct=true; 30 md.qmu.params.interval_type='forward'; 31 32 if version>=6, 33 md.qmu.params.analysis_driver='matlab'; 34 md.qmu.params.evaluation_scheduling='master'; 35 md.qmu.params.processors_per_evaluation=2; 36 else 37 md.qmu.params.analysis_driver='stressbalance'; 38 md.qmu.params.evaluation_concurrency=1; 39 end 40 41 42 43 %imperative! 44 md.stressbalance.reltol=10^-5; %tighten for qmu analysese 45 46 %solve 47 md=solve(md,StressbalanceSolutionEnum(),'overwrite','y'); 48 md.qmu.results=md.results.dakota; 49 50 %test on thickness 51 h=zeros(md.qmu.numberofpartitions,1); 52 for i=1:md.qmu.numberofpartitions, 53 h(i)=md.qmu.results.dresp_out(i).mean; 54 end 55 56 %project onto grid 57 thickness=h(md.qmu.partition+1); 58 59 %Fields and tolerances to track changes 60 field_names ={'Thickness'}; 61 field_tolerances={1e-10}; 62 field_values={thickness};
Note:
See TracBrowser
for help on using the repository browser.