Changeset 17659
- Timestamp:
- 04/07/14 13:14:01 (11 years ago)
- Location:
- issm/trunk-jpl/src
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/analyses/StressbalanceAnalysis.cpp
r17653 r17659 90 90 91 91 /*Intermediaries*/ 92 int numoutputs; 93 char** requestedoutputs = NULL; 92 int fe_FS; 93 int numoutputs; 94 char** requestedoutputs = NULL; 94 95 95 96 parameters->AddObject(iomodel->CopyConstantObject(FlowequationIsSIAEnum)); … … 109 110 parameters->AddObject(iomodel->CopyConstantObject(StressbalanceShelfDampeningEnum)); 110 111 parameters->AddObject(iomodel->CopyConstantObject(StressbalanceViscosityOvershootEnum)); 112 113 /*XTH parameters*/ 114 iomodel->Constant(&fe_FS,FlowequationFeFSEnum); 115 if(fe_FS==XTaylorHoodEnum){ 116 parameters->AddObject(iomodel->CopyConstantObject(AugmentedLagrangianREnum)); 117 parameters->AddObject(iomodel->CopyConstantObject(AugmentedLagrangianThetaEnum)); 118 } 111 119 112 120 /*Requested outputs*/ -
issm/trunk-jpl/src/c/solutionsequences/solutionsequence_la_theta.cpp
r17653 r17659 19 19 Vector<IssmDouble>* df = NULL; 20 20 Vector<IssmDouble>* ys = NULL; 21 IssmDouble eps_rel; 22 int configuration_type,max_nonlinear_iterations; 23 24 IssmDouble r = .6; 25 IssmDouble theta = 0.; // 0<theta<.5 -> .15<theta<.45 21 IssmDouble eps_rel,r,theta; // 0<theta<.5 -> .15<theta<.45 22 int configuration_type,max_nonlinear_iterations; 26 23 27 24 /*Create analysis*/ … … 32 29 femmodel->parameters->FindParam(&eps_rel,StressbalanceReltolEnum); 33 30 femmodel->parameters->FindParam(&max_nonlinear_iterations,StressbalanceMaxiterEnum); 34 femmodel->parameters-> SetParam(.6,AugmentedLagrangianREnum);35 femmodel->parameters-> SetParam(theta,AugmentedLagrangianThetaEnum);31 femmodel->parameters->FindParam(&r,AugmentedLagrangianREnum); 32 femmodel->parameters->FindParam(&theta,AugmentedLagrangianThetaEnum); 36 33 37 34 /*Update constraints and initialize d and tau if necessary*/ -
issm/trunk-jpl/src/m/classes/flowequation.m
r17522 r17659 14 14 fe_HO = ''; 15 15 fe_FS = ''; 16 XTH_r = 1.; 17 XTH_theta = 0.; 16 18 vertex_equation = NaN; 17 19 element_equation = NaN; … … 88 90 md = checkfield(md,'fieldname','flowequation.fe_HO' ,'values',{'P1','P1bubble','P1bubblecondensed','P1xP2','P2xP1','P2','P1xP3','P2xP4'}); 89 91 md = checkfield(md,'fieldname','flowequation.fe_FS' ,'values',{'P1P1','P1P1GLS','MINIcondensed','MINI','TaylorHood','XTaylorHood','OneLayerP4z'}); 92 md = checkfield(md,'fieldname','flowequation.XTH_r','numel',[1],'>',0.); 93 md = checkfield(md,'fieldname','flowequation.XTH_theta','numel',[1],'>=',0.,'<',0.5); 90 94 md = checkfield(md,'fieldname','flowequation.borderSSA','size',[md.mesh.numberofvertices 1],'values',[0 1]); 91 95 md = checkfield(md,'fieldname','flowequation.borderHO','size',[md.mesh.numberofvertices 1],'values',[0 1]); … … 143 147 WriteData(fid,'enum',FlowequationFeHOEnum() ,'data',StringToEnum(obj.fe_HO) ,'format','Integer'); 144 148 WriteData(fid,'enum',FlowequationFeFSEnum() ,'data',StringToEnum(obj.fe_FS) ,'format','Integer'); 149 WriteData(fid,'enum',AugmentedLagrangianREnum() ,'data',obj.XTH_r ,'format','Double'); 150 WriteData(fid,'enum',AugmentedLagrangianThetaEnum() ,'data',obj.XTH_theta ,'format','Double'); 145 151 WriteData(fid,'object',obj,'fieldname','borderSSA','format','DoubleMat','mattype',1); 146 152 WriteData(fid,'object',obj,'fieldname','borderHO','format','DoubleMat','mattype',1); -
issm/trunk-jpl/src/m/classes/flowequation.py
r17522 r17659 25 25 self.fe_HO = '' 26 26 self.fe_FS = '' 27 self.XTH_r = 1. 28 self.XTH_theta = 0. 27 29 self.vertex_equation = float('NaN') 28 30 self.element_equation = float('NaN') … … 80 82 md = checkfield(md,'fieldname','flowequation.borderHO','size',[md.mesh.numberofvertices],'values',[0,1]) 81 83 md = checkfield(md,'fieldname','flowequation.borderFS','size',[md.mesh.numberofvertices],'values',[0,1]) 84 md = checkfield(md,'fieldname','flowequation.XTH_r','numel',[1],'>',0.) 85 md = checkfield(md,'fieldname','flowequation.XTH_theta','numel',[1],'>=',0.,'<',.5) 82 86 if m.strcmp(md.mesh.meshtype(),'2Dhorizontal'): 83 87 md = checkfield(md,'fieldname','flowequation.vertex_equation','size',[md.mesh.numberofvertices],'values',[1,2]) … … 107 111 WriteData(fid,'enum',FlowequationFeHOEnum() ,'data',StringToEnum(self.fe_HO)[0] ,'format','Integer') 108 112 WriteData(fid,'enum',FlowequationFeFSEnum() ,'data',StringToEnum(self.fe_FS)[0] ,'format','Integer') 113 WriteData(fid,'enum',AugmentedLagrangianREnum() ,'data',self.XTH_r ,'format','Double') 114 WriteData(fid,'enum',AugmentedLagrangianThetaEnum() ,'data',self.XTH_theta ,'format','Double') 109 115 WriteData(fid,'object',self,'fieldname','borderSSA','format','DoubleMat','mattype',1) 110 116 WriteData(fid,'object',self,'fieldname','borderHO','format','DoubleMat','mattype',1)
Note:
See TracChangeset
for help on using the changeset viewer.