Changeset 25268


Ignore:
Timestamp:
07/10/20 23:08:28 (5 years ago)
Author:
Eric.Larour
Message:

CHG: diverse

Location:
issm/trunk-jpl/test/SandBox
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified issm/trunk-jpl/test/SandBox/Makefile

    r25217 r25268  
    11clean:
    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  
    33%mesh earth:
    44md=model;
    5 md.mesh=gmshplanet('radius',6.371012*10^3,'resolution',1000.); %500 km resolution mesh
    6 md.cluster.np=16;
     5md.mesh=gmshplanet('radius',6.371012*10^3,'resolution',700.); %500 km resolution mesh
     6md.cluster.np=2;
    77
    88%parameterize slr solution:
    99%slr loading:  {{{
    10 nt=100;
    11 md.solidearth.surfaceload.icethicknesschange=zeros(md.mesh.numberofelements+1,nt);
     10nsteps=100;
     11md.solidearth.surfaceload.icethicknesschange=zeros(md.mesh.numberofelements+1,nsteps);
    1212md.solidearth.surfaceload.icethicknesschange(end,:)=2000.5:1:2099.5;
    1313md.solidearth.sealevel=zeros(md.mesh.numberofvertices,1);
     
    2424
    2525%greenland
    26 posgre=find(late > 70 &  late < 80 & longe>-60 & longe<-30);
     26posgre=find(late > 70 &  late < 80 & longe>-50 & longe<-30);
    2727md.solidearth.surfaceload.icethicknesschange(posgre,:)=-100;
    2828
    2929%alaska :
    30 posala=find(late > 62 &  late < 68 & longe>-152 & longe<-147);
     30posala=find(late > 55 &  late < 68 & longe>-162 & longe<-140);
    3131md.solidearth.surfaceload.icethicknesschange(posala,:)=-150;
    3232
    33 %himalaya :
    34 poshim=find(late > 25 &  late < 32 & longe>81 & longe<86);
    35 md.solidearth.surfaceload.icethicknesschange(poshim,:)=-200;
    36 
     33
     34%hawaii :
     35poshaw=find(late > 15 &  late < 25 & longe>-170 & longe<-130);
     36md.solidearth.surfaceload.icethicknesschange(poshaw,:)=10;
    3737
    3838%elastic loading from love numbers:
     
    7878%initialize GIA:
    7979md.gia=giamme();
    80 md.gia.Ngia=ones(md.mesh.numberofvertices,1);
    81 md.gia.Ugia=ones(md.mesh.numberofvertices,1);
     80md.gia.Ngia=zeros(md.mesh.numberofvertices,1);
     81md.gia.Ugia=zeros(md.mesh.numberofvertices,1);
    8282md.gia.modelid=1;
    8383
    84 %Uncertainty Quantification%{{{
     84%Uncertainty Quantification
    8585md.qmu.variables=struct();;
    8686
    87 %partition vector:
    88 npart=4;
     87%partitioning scaling
     88npart=1;
    8989partition=-ones(md.mesh.numberofelements,1);
    90 partition(posgre)=0;
    91 partition(posant)=1;
     90partition(posala)=0;
     91
     92%variable scaling
     93md.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
     100npart=3;
     101partition=-ones(md.mesh.numberofelements,1);
     102
     103partition(posant)=0;
     104partition(posgre)=1;
    92105partition(posala)=2;
    93 partition(poshim)=3;
     106
     107vposant=unique(md.mesh.elements(posant,:));
     108vposgre=unique(md.mesh.elements(posgre,:));
     109vposala=unique(md.mesh.elements(posala,:));
     110
    94111
    95112%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);
     113nant=10; ngre=20; nala=30; nmax=max([nant,ngre,nala]);
     114
     115%make ocean levelset temporal:
     116md.mask.ocean_levelset=[md.mask.ocean_levelset;2000];
     117
     118%background arrays:
     119bkgd=md.solidearth.surfaceload.icethicknesschange;
     120bkgdnan=bkgd; bkgdnan(1:end-1,:)=NaN;
     121
     122bkgdocean=md.mask.ocean_levelset;
     123bkgdoceannan=bkgdocean; bkgdoceannan(1:end-1,1)=NaN;
     124
     125%mme arrays:
     126md.solidearth.surfaceload.icethicknesschange=cell(30,1);
     127md.mask.ocean_levelset=cell(30,1);
     128for 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;
     155end
     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:
     161pairs_per_variable=zeros(npart,1);
     162abscissas=cell(npart,1);
     163counts=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);
    109167
    110168%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
     169md.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
    140174md.qmu.correlation_matrix=[];
    141 
    142 
    143175
    144176%responses
     
    179211md.qmu.params.tabular_graphics_data=true;
    180212md.qmu.output=1;
    181 %}}}
    182213
    183214%transient:
    184215md.timestepping.start_time=2000;
    185 md.timestepping.interp_forcings=0;
     216md.timestepping.interp_forcings=1;
    186217md.timestepping.final_time=2002;
    187218md.transient.issmb=0;
     
    191222md.transient.isslr=1;
    192223md.transient.isgia=1;
    193 md.slr.requested_outputs= {'default',...
    194                 'SealevelriseDeltathickness','Sealevel','SealevelRSLRate','SealevelriseCumDeltathickness',...
     224md.solidearth.requested_outputs= {'default',...
     225                'SurfaceloadIceThicknessChange','Sealevel','SealevelRSLRate',...
    195226                'SealevelNEsaRate', 'SealevelUEsaRate', 'NGiaRate', 'UGiaRate',...
    196                 'SealevelEustaticMask','SealevelEustaticOceanMask'};
     227                'SealevelEustaticMask','SealevelEustaticOceanMask','MaskOceanLevelset','MaskIceLevelset'};
    197228
    198229%hack:
     
    203234%eustatic + rigid + elastic + rotation run:
    204235md.verbose=verbose('11111111111');
    205 %md.verbose.qmu=1;
     236%md.verbose=verbose(0);
     237md.verbose.qmu=1;
    206238md.solidearth.settings.rigid=1; md.solidearth.settings.elastic=1;md.solidearth.settings.rotation=1;
    207239md.qmu.isdakota=1;
    208 md=solve(md,'slr');
    209 
     240md=solve(md,'tr');
     241
  • TabularUnified issm/trunk-jpl/test/SandBox/partmme2002.m

    r25216 r25268  
    33%mesh earth:
    44md=model;
    5 md.mesh=gmshplanet('radius',6.371012*10^3,'resolution',400.); %500 km resolution mesh
    6 md.cluster.np=16;
     5md.mesh=gmshplanet('radius',6.371012*10^3,'resolution',500.); %500 km resolution mesh
     6md.cluster.np=2;
    77
    88%parameterize slr solution:
     
    140140                md.mask.ocean_levelset{i}=ois;
    141141        end
     142        md.mask.ocean_levelset{i}=bkgdocean;
    142143end
     144%md.mask.ice_levelset=md.mask.ocean_levelset;
     145%md.solidearth.surfaceload.icethicknesschange=bkgd;
     146%md.mask.ocean_levelset=bkgdocean;
    143147
    144148%create distributed histograms for each partition:
     
    190194md.qmu.params.analysis_driver='matlab';
    191195md.qmu.params.evaluation_scheduling='master';
    192 md.qmu.params.processors_per_evaluation=5;
     196md.qmu.params.processors_per_evaluation=1;
    193197md.qmu.params.tabular_graphics_data=true;
    194198md.qmu.output=1;
     
    216220
    217221%eustatic + rigid + elastic + rotation run:
    218 %md.verbose=verbose('11111111111');
    219 md.verbose=verbose(0);
     222md.verbose=verbose('11111111111');
     223%md.verbose=verbose(0);
    220224md.verbose.qmu=1;
    221225md.solidearth.settings.rigid=1; md.solidearth.settings.elastic=1;md.solidearth.settings.rotation=1;
Note: See TracChangeset for help on using the changeset viewer.