Changeset 25268
- Timestamp:
- 07/10/20 23:08:28 (5 years ago)
- Location:
- issm/trunk-jpl/test/SandBox
- Files:
-
- 2 added
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified issm/trunk-jpl/test/SandBox/Makefile ¶
r25217 r25268 1 1 clean: 2 rm -rf *.tar.gz *.errlog *.outlog *.bin *.qmu.in *.qmu.out *qmu.err *.queue *.toolkits *.out 2 rm -rf *.tar.gz *.errlog *.outlog *.bin *.qmu.in *.qmu.out *qmu.err *.queue *.toolkits *.out *.outbin.* -
TabularUnified issm/trunk-jpl/test/SandBox/hier2002.m ¶
r25217 r25268 3 3 %mesh earth: 4 4 md=model; 5 md.mesh=gmshplanet('radius',6.371012*10^3,'resolution', 1000.); %500 km resolution mesh6 md.cluster.np= 16;5 md.mesh=gmshplanet('radius',6.371012*10^3,'resolution',700.); %500 km resolution mesh 6 md.cluster.np=2; 7 7 8 8 %parameterize slr solution: 9 9 %slr loading: {{{ 10 n t=100;11 md.solidearth.surfaceload.icethicknesschange=zeros(md.mesh.numberofelements+1,n t);10 nsteps=100; 11 md.solidearth.surfaceload.icethicknesschange=zeros(md.mesh.numberofelements+1,nsteps); 12 12 md.solidearth.surfaceload.icethicknesschange(end,:)=2000.5:1:2099.5; 13 13 md.solidearth.sealevel=zeros(md.mesh.numberofvertices,1); … … 24 24 25 25 %greenland 26 posgre=find(late > 70 & late < 80 & longe>- 60 & longe<-30);26 posgre=find(late > 70 & late < 80 & longe>-50 & longe<-30); 27 27 md.solidearth.surfaceload.icethicknesschange(posgre,:)=-100; 28 28 29 29 %alaska : 30 posala=find(late > 62 & late < 68 & longe>-152 & longe<-147);30 posala=find(late > 55 & late < 68 & longe>-162 & longe<-140); 31 31 md.solidearth.surfaceload.icethicknesschange(posala,:)=-150; 32 32 33 %himalaya : 34 poshim=find(late > 25 & late < 32 & longe>81 & longe<86); 35 md.solidearth.surfaceload.icethicknesschange(poshim,:)=-200;36 33 34 %hawaii : 35 poshaw=find(late > 15 & late < 25 & longe>-170 & longe<-130); 36 md.solidearth.surfaceload.icethicknesschange(poshaw,:)=10; 37 37 38 38 %elastic loading from love numbers: … … 78 78 %initialize GIA: 79 79 md.gia=giamme(); 80 md.gia.Ngia= ones(md.mesh.numberofvertices,1);81 md.gia.Ugia= ones(md.mesh.numberofvertices,1);80 md.gia.Ngia=zeros(md.mesh.numberofvertices,1); 81 md.gia.Ugia=zeros(md.mesh.numberofvertices,1); 82 82 md.gia.modelid=1; 83 83 84 %Uncertainty Quantification %{{{84 %Uncertainty Quantification 85 85 md.qmu.variables=struct();; 86 86 87 %partition vector:88 npart= 4;87 %partitioning scaling 88 npart=1; 89 89 partition=-ones(md.mesh.numberofelements,1); 90 partition(posgre)=0; 91 partition(posant)=1; 90 partition(posala)=0; 91 92 %variable scaling 93 md.qmu.variables.surfaceload0=normal_uncertain(... 94 'descriptor','scaled_SurfaceloadIceThicknessChange',... 95 'mean',ones(npart,nsteps),... 96 'stddev',.1*ones(npart,nsteps),... 97 'partition',partition,'nsteps',nsteps); 98 99 %partitioning distributed 100 npart=3; 101 partition=-ones(md.mesh.numberofelements,1); 102 103 partition(posant)=0; 104 partition(posgre)=1; 92 105 partition(posala)=2; 93 partition(poshim)=3; 106 107 vposant=unique(md.mesh.elements(posant,:)); 108 vposgre=unique(md.mesh.elements(posgre,:)); 109 vposala=unique(md.mesh.elements(posala,:)); 110 94 111 95 112 %prepare arrays: 96 background=md.solidearth.surfaceload.icethicknesschange; 97 antarray={}; for i=1:10, antarray{end+1}= (-50+i)*ones(length(posant),nsteps); end 98 grearray={}; for i=1:20, grearray{end+1}= (-100+i)*ones(length(posgre),nsteps); end 99 alaarray={}; for i=1:30, alaarray{end+1}= (-150+i)*ones(length(posala),nsteps); end 100 himarray={-200*ones(length(poshim),nsteps)}; 101 arrays={antarray,grearray,alaarray,himarray}; 102 103 partarray={antarray,grearray,alaarray,himarray}; 104 histarray={equiprobable_histogram_uncertain('ant',10), equiprobable_histogram_uncertain('gre',20), equiprobable_histogram_uncertain('ala',30), equiprobable_histogram_uncertain('him',1)}; 105 pdfant=normal_uncertain('descriptor','pdfant','mean',1*ones(1,nt),'stddev',.1*ones(1,nt)); 106 pdfgre=uniform_uncertain('descriptor','pdfgre','lower',.8*ones(1,nt),'upper',1.2*ones(1,nt)); 107 pdfala=dirac_uncertain('descriptor','pdfala',2); 108 pdfhim=dirac_uncertain('descriptor','pdfhim',1); 113 nant=10; ngre=20; nala=30; nmax=max([nant,ngre,nala]); 114 115 %make ocean levelset temporal: 116 md.mask.ocean_levelset=[md.mask.ocean_levelset;2000]; 117 118 %background arrays: 119 bkgd=md.solidearth.surfaceload.icethicknesschange; 120 bkgdnan=bkgd; bkgdnan(1:end-1,:)=NaN; 121 122 bkgdocean=md.mask.ocean_levelset; 123 bkgdoceannan=bkgdocean; bkgdoceannan(1:end-1,1)=NaN; 124 125 %mme arrays: 126 md.solidearth.surfaceload.icethicknesschange=cell(30,1); 127 md.mask.ocean_levelset=cell(30,1); 128 for i=1:nmax, 129 if i==1, 130 md.solidearth.surfaceload.icethicknesschange{i}=bkgd; 131 md.mask.ocean_levelset{i}=bkgdocean; 132 else 133 bi=bkgdnan; 134 oi=bkgdoceannan; 135 if i<=10, 136 bi(posant,:)=(-50+i)*ones(length(posant),nsteps); 137 %oi(vposant,:)=bkgdocean(vposant,:)-50+i; 138 oi(vposant,:)=i; 139 end 140 if i<=20, 141 bi(posgre,:)=(-100+i)*ones(length(posgre),nsteps); 142 %oi(vposgre,:)=bkgdocean(vposgre,:)-100+i; 143 oi(vposgre,:)=2*i; 144 end 145 if i<=30, 146 bi(posala,:)=(-150+i)*ones(length(posala),nsteps); 147 %oi(vposala,:)=bkgdocean(vposala,:)-150+i; 148 oi(vposala,:)=3*i; 149 end 150 md.solidearth.surfaceload.icethicknesschange{i}=bi; 151 ois=repmat(oi,1,nsteps); ois(end,:)=bi(end,:); 152 md.mask.ocean_levelset{i}=ois; 153 end 154 md.mask.ocean_levelset{i}=bkgdocean; 155 end 156 %md.mask.ice_levelset=md.mask.ocean_levelset; 157 %md.solidearth.surfaceload.icethicknesschange=bkgd; 158 %md.mask.ocean_levelset=bkgdocean; 159 160 %create distributed histograms for each partition: 161 pairs_per_variable=zeros(npart,1); 162 abscissas=cell(npart,1); 163 counts=cell(npart,1); 164 [abscissas{1} counts{1} pairs_per_variable(1)]=equiprobable_histogram_uncertain(10); 165 [abscissas{2} counts{2} pairs_per_variable(2)]=equiprobable_histogram_uncertain(20); 166 [abscissas{3} counts{3} pairs_per_variable(3)]=equiprobable_histogram_uncertain(30); 109 167 110 168 %variables: 111 md.qmu.variables.deltathickness=normal_uncertain('descriptor','SurfaceloadIceThicknessChange',... 112 'partition',partition,'nsteps',nt,... 113 'background',md.solidearth.surfaceload.icethicknesschange,... 114 'histogram_bin_uncertain_perpartition',histarray,... 115 'matarray_perpartition',partarray,... 116 117 ); 118 119 md.qmu.correlation_matrix=zeros(npart*nt,npart*nt); 120 for i=1:npart, 121 for j=1:nt, 122 indi=(i-1)*nt+j; 123 for k=1:npart, 124 for l=1:nt, 125 indj=(k-1)*nt+l; 126 if i~=k, 127 md.qmu.correlation_matrix(indi,indj)=0; 128 else 129 %same partition: 130 if j==l, 131 md.qmu.correlation_matrix(indi,indj)=1; 132 else 133 md.qmu.correlation_matrix(indi,indj)=.2; 134 end 135 end 136 end 137 end 138 end 139 end 169 md.qmu.variables.surfaceload1=histogram_bin_uncertain(... 170 'descriptor','distributed_SurfaceloadModelid',... 171 'pairs_per_variable',pairs_per_variable,'abscissas',abscissas,'counts',counts,'partition',partition); 172 173 140 174 md.qmu.correlation_matrix=[]; 141 142 143 175 144 176 %responses … … 179 211 md.qmu.params.tabular_graphics_data=true; 180 212 md.qmu.output=1; 181 %}}}182 213 183 214 %transient: 184 215 md.timestepping.start_time=2000; 185 md.timestepping.interp_forcings= 0;216 md.timestepping.interp_forcings=1; 186 217 md.timestepping.final_time=2002; 187 218 md.transient.issmb=0; … … 191 222 md.transient.isslr=1; 192 223 md.transient.isgia=1; 193 md.s lr.requested_outputs= {'default',...194 'S ealevelriseDeltathickness','Sealevel','SealevelRSLRate','SealevelriseCumDeltathickness',...224 md.solidearth.requested_outputs= {'default',... 225 'SurfaceloadIceThicknessChange','Sealevel','SealevelRSLRate',... 195 226 'SealevelNEsaRate', 'SealevelUEsaRate', 'NGiaRate', 'UGiaRate',... 196 'SealevelEustaticMask','SealevelEustaticOceanMask' };227 'SealevelEustaticMask','SealevelEustaticOceanMask','MaskOceanLevelset','MaskIceLevelset'}; 197 228 198 229 %hack: … … 203 234 %eustatic + rigid + elastic + rotation run: 204 235 md.verbose=verbose('11111111111'); 205 %md.verbose.qmu=1; 236 %md.verbose=verbose(0); 237 md.verbose.qmu=1; 206 238 md.solidearth.settings.rigid=1; md.solidearth.settings.elastic=1;md.solidearth.settings.rotation=1; 207 239 md.qmu.isdakota=1; 208 md=solve(md,' slr');209 240 md=solve(md,'tr'); 241 -
TabularUnified issm/trunk-jpl/test/SandBox/partmme2002.m ¶
r25216 r25268 3 3 %mesh earth: 4 4 md=model; 5 md.mesh=gmshplanet('radius',6.371012*10^3,'resolution', 400.); %500 km resolution mesh6 md.cluster.np= 16;5 md.mesh=gmshplanet('radius',6.371012*10^3,'resolution',500.); %500 km resolution mesh 6 md.cluster.np=2; 7 7 8 8 %parameterize slr solution: … … 140 140 md.mask.ocean_levelset{i}=ois; 141 141 end 142 md.mask.ocean_levelset{i}=bkgdocean; 142 143 end 144 %md.mask.ice_levelset=md.mask.ocean_levelset; 145 %md.solidearth.surfaceload.icethicknesschange=bkgd; 146 %md.mask.ocean_levelset=bkgdocean; 143 147 144 148 %create distributed histograms for each partition: … … 190 194 md.qmu.params.analysis_driver='matlab'; 191 195 md.qmu.params.evaluation_scheduling='master'; 192 md.qmu.params.processors_per_evaluation= 5;196 md.qmu.params.processors_per_evaluation=1; 193 197 md.qmu.params.tabular_graphics_data=true; 194 198 md.qmu.output=1; … … 216 220 217 221 %eustatic + rigid + elastic + rotation run: 218 %md.verbose=verbose('11111111111');219 md.verbose=verbose(0);222 md.verbose=verbose('11111111111'); 223 %md.verbose=verbose(0); 220 224 md.verbose.qmu=1; 221 225 md.solidearth.settings.rigid=1; md.solidearth.settings.elastic=1;md.solidearth.settings.rotation=1;
Note:
See TracChangeset
for help on using the changeset viewer.