Repository navigation
Expand file tree
/
Copy pathindex.html
More file actions
143 lines (125 loc) · 10.9 KB
/
Copy pathindex.html
File metadata and controls
143 lines (125 loc) · 10.9 KB
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
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
<!DOCTYPE html>
<html prefix="og: http://ogp.me/ns# article: http://ogp.me/ns/article#
" lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>SMRT: Snow Microwave Radiative Transfer model | SMRT Home</title>
<link href="assets/css/all-nocdn.css" rel="stylesheet" type="text/css">
<link href="assets/css/ipython.min.css" rel="stylesheet" type="text/css">
<link href="assets/css/nikola_ipython.css" rel="stylesheet" type="text/css">
<meta name="theme-color" content="#56d470">
<meta name="generator" content="Nikola (getnikola.com)">
<link rel="alternate" type="application/rss+xml" title="RSS" hreflang="en" href="rss.xml">
<link rel="canonical" href="https://www.smrt-model.science/">
<!--[if lt IE 9]><script src="assets/js/html5.js"></script><![endif]--><meta name="author" content="Ghislain Picard, Melody Sandells and Henning Löwe">
<meta property="og:site_name" content="SMRT Home">
<meta property="og:title" content="SMRT: Snow Microwave Radiative Transfer model">
<meta property="og:url" content="https://www.smrt-model.science/">
<meta property="og:description" content="SMRT is an active / passive microwave multilayer radiative transfer model for snow, sea-ice and lake ice written in Python. It was developed with European Space Agency support in order to investigate ">
<meta property="og:type" content="article">
<meta property="article:published_time" content="2016-10-02T16:03:55Z">
</head>
<body>
<a href="#content" class="sr-only sr-only-focusable">Skip to main content</a>
<!-- Menubar -->
<nav class="navbar navbar-expand-md static-top mb-4
navbar-dark
bg-dark
"><div class="container">
<!-- This keeps the margins nice -->
<a class="navbar-brand" href=".">
<span id="blog-title">SMRT Home</span>
</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#bs-navbar" aria-controls="bs-navbar" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="bs-navbar">
<ul class="navbar-nav mr-auto">
<li class="nav-item">
<a href="getstarted.html" class="nav-link">Getting Started</a>
</li>
<li class="nav-item">
<a href="documentation.html" class="nav-link">Documentation</a>
</li>
<li class="nav-item">
<a href="contribute.html" class="nav-link">Contribute</a>
</li>
</ul>
<ul class="navbar-nav navbar-right"></ul>
</div>
<!-- /.navbar-collapse -->
</div>
<!-- /.container -->
</nav><!-- End of Menubar --><div class="container" id="content" role="main">
<div class="body-content">
<!--Body content-->
<article class="post-text storypage" itemscope="itemscope" itemtype="http://schema.org/Article"><header><h1 class="p-name entry-title" itemprop="headline name"><a href="." class="u-url">SMRT: Snow Microwave Radiative Transfer model</a></h1>
</header><div class="e-content entry-content" itemprop="articleBody text">
<p>SMRT is an <strong>active / passive microwave multilayer radiative transfer model for snow, sea-ice and lake ice</strong> written in Python. It was developed with <a class="reference external" href="http://www.esa.int/">European Space Agency</a> support in order to investigate the representation of the snow microstructure, the main driver of scattering, but has now a wider usage.</p>
<p>SMRT is extremely modular, so allows easy intercomparisons between different modelling approaches in a plug-and-play way. SMRT proposes
different electromagnetic theories to compute scattering (DMRT, IBA, Rayleigh independent, ...). In the case of IBA, different microstructure representations can be used (Sticky Hard Spheres, Exponential, Gaussian random field, ...). The current version proposes only one radiative transfer solver (DORT) but this can be extended. Last but not least, wrappers are included to run MEMLS, HUT and DMRT-QMS models (in their original matlab code) from within SMRT. Whilst there is plenty to get started with, there are more theoretical advances that can be made. SMRT is intended to be a community model - all are welcome to use it, and to contribute to its development!</p>
<p>SMRT uses the lastest python version (e.g. 3.9) but also works with earlier versions (3.7 and higher). The code is open source and is hosted on <a class="reference external" href="https://github.com/smrt-model/smrt">github</a>.</p>
<p class="btn btn-light btn-lg bigbutton"><a class="reference external" href="getstarted.html">Getting started with SMRT in Python</a></p>
<p class="btn btn-light btn-lg bigbutton"><a class="reference external" href="https://snow.univ-grenoble-alpes.fr/smrt-app/">Try with the online SMRT simulator</a></p>
<section id="using-smrt-is-easy"><h2>Using SMRT is easy</h2>
<p>You must write a (short) driver code, SMRT is a library that your driver code call to perform a calculation. This is simple, there are four main steps in a typical driver code:</p>
<blockquote>
<ol class="arabic simple">
<li><p>construct a snowpack (either from field data or snowpack model).</p></li>
</ol>
<div class="code"><pre class="code python"><a id="rest_code_cc306a8a5ab646678b9ff221372106d2-1" name="rest_code_cc306a8a5ab646678b9ff221372106d2-1" href="#rest_code_cc306a8a5ab646678b9ff221372106d2-1"></a><span class="n">snowpack</span> <span class="o">=</span> <span class="n">make_snowpack</span><span class="p">(</span><span class="n">thickness</span><span class="o">=</span><span class="mf">10.</span><span class="p">,</span> <span class="c1"># 10 m deep snowpack</span>
<a id="rest_code_cc306a8a5ab646678b9ff221372106d2-2" name="rest_code_cc306a8a5ab646678b9ff221372106d2-2" href="#rest_code_cc306a8a5ab646678b9ff221372106d2-2"></a> <span class="n">microstructure_model</span><span class="o">=</span><span class="s2">"sticky_hard_spheres"</span><span class="p">,</span>
<a id="rest_code_cc306a8a5ab646678b9ff221372106d2-3" name="rest_code_cc306a8a5ab646678b9ff221372106d2-3" href="#rest_code_cc306a8a5ab646678b9ff221372106d2-3"></a> <span class="n">density</span><span class="o">=</span><span class="mf">320.0</span><span class="p">,</span> <span class="c1"># 320 kg/m3</span>
<a id="rest_code_cc306a8a5ab646678b9ff221372106d2-4" name="rest_code_cc306a8a5ab646678b9ff221372106d2-4" href="#rest_code_cc306a8a5ab646678b9ff221372106d2-4"></a> <span class="n">temperature</span><span class="o">=</span><span class="mi">260</span><span class="p">,</span> <span class="c1"># 260 K</span>
<a id="rest_code_cc306a8a5ab646678b9ff221372106d2-5" name="rest_code_cc306a8a5ab646678b9ff221372106d2-5" href="#rest_code_cc306a8a5ab646678b9ff221372106d2-5"></a> <span class="n">radius</span><span class="o">=</span><span class="mf">100e-6</span><span class="p">)</span> <span class="c1"># 100 microns</span>
</pre></div>
<ol class="arabic simple" start="2">
<li><p>configure an active or passive sensor with frequency, etc.</p></li>
</ol>
<div class="code"><pre class="code python"><a id="rest_code_de4c314809814a02962764d7fb015f98-1" name="rest_code_de4c314809814a02962764d7fb015f98-1" href="#rest_code_de4c314809814a02962764d7fb015f98-1"></a><span class="n">radiometer</span> <span class="o">=</span> <span class="n">sensor_list</span><span class="o">.</span><span class="n">amsre</span><span class="p">(</span><span class="s1">'37V'</span><span class="p">)</span>
</pre></div>
<ol class="arabic simple" start="3">
<li><p>select the radiative transfer solver, the electromagnetic theory and the microstructure. Optionaly other components can be selected.</p></li>
</ol>
<div class="code"><pre class="code python"><a id="rest_code_c78bb973e9ec4b25aa842de069f26ee5-1" name="rest_code_c78bb973e9ec4b25aa842de069f26ee5-1" href="#rest_code_c78bb973e9ec4b25aa842de069f26ee5-1"></a><span class="n">m</span> <span class="o">=</span> <span class="n">make_model</span><span class="p">(</span><span class="s2">"iba"</span><span class="p">,</span> <span class="s2">"dort"</span><span class="p">)</span>
</pre></div>
<ol class="arabic simple" start="4">
<li><p>call "run" for the created model.</p></li>
</ol>
<div class="code"><pre class="code python"><a id="rest_code_45efd2b235864ddfaf3d309d9c0df9b5-1" name="rest_code_45efd2b235864ddfaf3d309d9c0df9b5-1" href="#rest_code_45efd2b235864ddfaf3d309d9c0df9b5-1"></a><span class="n">result</span> <span class="o">=</span> <span class="n">m</span><span class="o">.</span><span class="n">run</span><span class="p">(</span><span class="n">radiometer</span><span class="p">,</span> <span class="n">snowpack</span><span class="p">)</span>
</pre></div>
<ol class="arabic simple" start="5">
<li><p>The result can be inspected to get brightness temperature or backscattering coefficient at different polarizations, incidence angles, etc.</p></li>
</ol>
<div class="code"><pre class="code python"><a id="rest_code_fbcc0e4257a84da88c6dd843c9176bd6-1" name="rest_code_fbcc0e4257a84da88c6dd843c9176bd6-1" href="#rest_code_fbcc0e4257a84da88c6dd843c9176bd6-1"></a><span class="nb">print</span><span class="p">(</span><span class="n">result</span><span class="o">.</span><span class="n">TbV</span><span class="p">())</span>
</pre></div>
</blockquote>
</section><section id="smrt-is-clearly-structured"><h2>SMRT is clearly structured</h2>
<img alt="modular illustration of the SMRT model. Snow microstructure is in the centre, and SMRT modules placed around the edge." class="align-right" src="images/SMRT.png" style="height: 400px;"><p>SMRT is structured in different components:</p>
<blockquote>
<ul class="simple">
<li><p>Microstructure model (to represent snow microstructure)</p></li>
<li><p>Electromagnetic model (to compute scattering and absorption)</p></li>
<li><p>Radiative transfer solver</p></li>
<li><p>Substrate (optional)</p></li>
<li><p>Atmosphere (optional)</p></li>
<li><p>Interlayer reflectivity (optional)</p></li>
<li><p>Permittivity (optional)</p></li>
</ul>
</blockquote>
<p>Each can have any number of implementations (e.g. different radiative transfer solver) the selection is done at runtime in your driver code. It is relatively easy to add new implementations especially by copying and modifying existing implementations. SMRT automatically recognize any new implementations, no need to compile or write a configuration files. It is immediately in.</p>
</section>
</div>
</article><!--End of body content--><footer id="footer">
Contents © 2025 <a href="mailto:n.tesla@example.com">Ghislain Picard, Melody Sandells and Henning Löwe</a> - Powered by <a href="https://getnikola.com" rel="nofollow">Nikola</a>
</footer>
</div>
</div>
<script src="assets/js/all-nocdn.js"></script><script>
baguetteBox.run('div#content', {
ignoreClass: 'islink',
captions: function(element){var i=element.getElementsByTagName('img')[0];return i===undefined?'':i.alt;}});
</script>
</body>
</html>