rbmatlab 0.10.01
models/twophase_descr.m
00001 function descr = twophase_descr(params)
00002 
00003 if nargin < 1 || ~isfield(params, 'size')
00004   params.size = 1;
00005 end
00006 
00007 if ~isfield(params, 'mode')
00008   params.mode = 'normal';
00009 end
00010 
00011 descr = TwoPhaseFlow.descr_default;
00012 descr.rb_problem_type = 'TwoPhaseFlow';
00013 descr.gridtype = 'rectgrid';
00014 descr.xnumintervals = 100 * params.size;
00015 descr.ynumintervals = 100 * params.size;
00016 descr.xrange = [0,1];
00017 descr.yrange = [0,1];
00018 descr.bnd_rect_corner1 = [-1,-1];
00019 descr.bnd_rect_corner2 = [Inf, Inf];
00020 descr.bnd_rect_index   = -2;
00021 
00022 descr.mu_names  = {'c_init'};
00023 descr.mu_ranges = {[0.4, 0.6]};
00024 
00025 descr.T  = 0.5;
00026 descr.nt = 200 * params.size; % guess and adjust later
00027 %descr.T  = 0.1;
00028 %descr.nt = 10;
00029 
00030 descr.verbose = 1;
00031 descr.debug = 0;
00032 
00033 descr.name = 'single_test';
00034 
00035 % descr.init_values_ptr = @init_values_waveproduct;
00036 % % parameters for data functions
00037 % descr.c_init_min = 0.0;
00038 % descr.c_init_max = 1.0;
00039 % descr.c_init_phase_x = 0.0;
00040 % descr.c_init_phase_y = 0.0;
00041 % descr.c_init_freq_x = 2*pi;
00042 % descr.c_init_freq_y = 2*pi;
00043 
00044 descr.init_values_ptr = @init_values_homogeneous;
00045 descr.c_init = 0.50;
00046 
00047 descr.mean_ptr  = @(X)harmmean(max(X,0), 2);
00048 switch params.mode
00049   case 'normal'
00050     descr.two_phase = TwoPhaseData.Michel;
00051   case 'test'
00052     descr.two_phase = TwoPhaseData.MichelSimple;
00053   case 'linear'
00054     descr.two_phase = TwoPhaseData.MichelPrsLin;
00055 end
00056 
00057 descr.linear_velocity = false;
00058 
00059 descr = descr.two_phase.default_descr(descr);
00060 
00061 descr = model_default(descr);
00062 % descr.two_phase_class = @TwoPhaseData.BrooksCorey;
00063 
00064 % Neumann boundary values???
00065 
All Classes Namespaces Files Functions Variables