-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathHyLands_NoLS_DL.m
108 lines (92 loc) · 2.5 KB
/
HyLands_NoLS_DL.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
% HyLands_NoLS_DL simulation with of HyLands Hybrid Landscape evolution
% model
%
% Script to run simulation described in:
%
% Campforts B., Shobe M.C., et al. : HyLands 1.0: a Hybrid
% Landscape evolution model to simulate the impact of landslides and
% landslide-derived sediment on landscape evolution. Discussion paper in
% Geoscientific Model Development,
% https://geoscientific-model-development.net
%
% Author: Benjamin Campforts ([email protected])
%
% See also: HYLANDS, HYLANDS_set
%
% Date: 15. March, 2020
%% Clear environment
clearvars
clc
close all
%% Set path;
% Not needed if TopoToolbiox is already on the search path of Matlab.
% addpath(genpath('C:\path\to\wherever\you\installed\this\topotoolbox-v2.4-HyLands-v1.0'))
%% Temporal domain
p.TimeSpan=100e3;
p.TimeStep=10;
p.ploteach=100;
p.saveeach=100;
%% Check for mass balance
% Check mass balance: for every component and after every iteration
p.checkMB=true;
%% Plotting and output
% verbose
p.verbose=false;
% Kind of plot: For regular TTLEM output (p.plotSed=false;)
p.plotSed=true;
%% Initial Surface
% Generate random initial surface of 0m � 50m
dx=100;%m
Lx=2e3;
Ly=2e3;
x=0:dx:Lx-dx;
y=0:dx:Ly-dx;
Z=zeros(numel(y),numel(x));
DEMIni=GRIDobj(x,y,Z);
[x,y]=getcoordinates(DEMIni);
[X,Y]=meshgrid(x,y);
dist=sqrt(X.^2+Y.^2);
DEMIni.Z=X/1e5+Y/1e5+rand(size(X))/100000;
DEMIni.Z(end,1)=0;
iniSedThickness=0;
iniSed=GRIDobj(DEMIni)+iniSedThickness;
%% Vertical uplift
p.U_type='uniform';
UplRate=1e-4;
T.spatial = GRIDobj(DEMIni)+UplRate;
%% Boundary conditions
% Define open nodes: Drain towards lower left corner
p.FlowBC='ll_cor';
% Bedrock elevation at open nodes is set to a fixed value, provided by
% p.BC_BedDirVal, defaulting to 0
% Sediment thickness varies through time as a function of the SPACE
% mathematics. Thus, at open nodes, the sediment thickness is based on the
% sediment thickness of the upstream river cell.
p.BC_Type='set_VaropenNodes';
%% Make sure flow accumulation honors imposed boundary conditions
if ~isempty(p.FlowBC)
BORDER = getBORDER(DEMIni,p);
else
BORDER=[];
end
DEMIni = DEMIni+BORDER;
DEMIni=fillsinks(DEMIni);
DEMIni=DEMIni-BORDER;
%% SPACE: river incision paramters
p.FlowDir='single';
p.DrainDir='variable';
p.K_bed=0.001;
p.K_sed=0.01;
p.Ff=1;
p.V=1;
p.H_star=1;
p.m=0.5;
p.n=1;
%% Initialize parameter structure
p = HYLANDS_set(p);
%% If resultdir does not exist; make it
if ~exist(p.resultsdir,'dir')
mkdir(p.resultsdir)
end
%% Model run
output = HYLANDS(DEMIni,T,p,'iniSed',iniSed);