 Cool, I can see some people are online. Welcome everybody to this webinar on the CSDMS modeling tools and using them in the classroom. Today what we're going to do is we will go, I mean this is basically the first webinar that I'm doing and CSDMS has just started these webinars this fall, but we're trying to walk people, give people some pointers to the resources that we have and ask for feedback on development or how people are thinking to use tools or techniques that are being developed in our group here at the University of Colorado at Boulder. So my name is Irina Overheim, I'm the Deputy Director of CSDMS and I've focused for a long time on the educational aspects of CSDMS and so some of the labs and things that we'll discuss today are ones that I've used in classrooms and developed in the earlier years and we're moving ahead over the next couple years to expand that repository and build new functionality. So what we'll do today, I think this webinar is going to take 45 minutes or so. I'll walk you through the web modeling tool and sort of like show how it sits in the general CSDMS suite of tools and I think the slides and the things that I'll show you are practical enough that people can sort of like get the pointers to where these resources are and potentially use them themselves in teaching or for little projects with students. I wanted to highlight that we have new options. We switched over from our high performance computing system at CU, that was called BEACH, that CSDMS managed for a long time themselves to a something that's called a condo cluster nodes on Blanca that are managed by research computing who's been involved with CSDMS for a long time too. So like they're at CU Boulder too and CSDMS has dedicated nodes on this system but it does require setting up an account for access but we have new options for teaching which I think are exciting and make this whole sort of logistics part a little easier. Then the other thing that we'll do towards the end of the presentation is ideas that the integration facility here at CSDMS has going on on how do students go from like working in a more graphical user interface and running the web modeling tool to potentially running similar codes in Jupyter notebooks and sort of stepping out of a world where they set up experiments or fill in user interfaces to a world where they can like manipulate the code in a little bit more programmatic way. Then I'd like to ask people's feedback. I mean you're all here participating and so the last I don't know like five to ten minutes or so or maybe longer if it runs a little longer will be on how we see these tools develop into the next couple years and solicit whether people are interested in using them. How would they use them and what are your thoughts basically on the web modeling tool and the Python modeling or the Python modeling tool or the notebook specifically. So yeah this is kind of like sort of the timeline that I think will take me about 20 minutes or so to show you around in the CSDMS tools and then a bit more chaotic 10 or 20 minutes total of showing you around in the tools but I do think that that's going to be useful for people to get a bit of a feel of what a student would experience or what you would do yourself once you're interacting with these tools and resources and then some discussion. So CSDMS educational mission is really one of the three pillars as we see CSDMS. Many of you are familiar with our meetings and sort of the community aspect of CSDMS where people come together who work on the miracle models in the earth service processes and present their results and find new tools etc and that happens a lot through the annual meeting and the working groups and then our team works on like cyber infrastructure development and that like bleeds over or like is interacting all of these pillars are interacting with each other but there's also a pillar that's the educational pillar and the mission of CSDMS for education is to develop easy to access and comprehensive cyber infrastructure to promote earth service process modeling and then specifically from the get go the educational working group prioritized undergraduate students. We found in collaboration with the national center for earth dynamics and CSDMS so every year in the summary institute CSDMS would come and work with NSAT and in those interactions it was much more focused on graduate students and postdocs and early career faculty and I think many faculty that have adopted these tools sort of across the US for a class here or there they use the tools with grad students as well so that's a sort of a background to take away with you if you're thinking of using CSDMS tools with students. So where do these tools sit? Well the CSDMS modeling framework is provides services for developers to couple models and tap into a certain functionality that enhances basically your own codes once you've got it compliant to like work with this modeling framework and to get models compliant they need to be wrapped with a basic model interface and Mark is going to do a webinar on that in a few weeks or in the next month so that's more on the technical and on the developing developer side. But then on top of the CSDMS framework there's sort of the tools that go with it and the web modeling tool is the tool that's been around for a while it provides a graphical user interface and gives access to some of these components that have been wrapped with the basic model interface. The tools that the CSDMS tools are installed on Blanca the high performance computing facility that I was talking about and so the web modeling tool like runs through this HPC system. Then a new tool that's always been under the hood but that we're planning on exposing more in the next year is the Python modeling tool PyMT so there's the WMT and there's the PyMT. So to give you in a webinar it's like a little I'm like in an empty room here and like talking to like a list of participants to give you a bit more of like the faces of the people that work on these. Mark Piper is the WMT developer and Eric Hudson is the PyMT and developer and both together work on the CSDMS framework and then Lynn McReady is our program or our account support and resources support person. So if you're interested in using some of these tools like often you'll get to talk with her as a sort of a first entry way and then Albert Kettner manages the web and data services and I would be your contact person for like educational repository or development of material or contributions of material and Greg Tucker is our director and heads us up. So for models to show up in the modeling tool they need to be have been developed as components so that means there's like one more step from an original working model and numerical model to being a component and so that means that they have been the codes being taken in such a way that it's easy to run by single time steps or like distinct time periods and that there is a basic model interface around these models and what that boils down to for the purpose of today's talk is that parameters that components need and parameters that they generate are like specified with great precision and that means that it creates a potential to couple with other process components that would need components or parameters out of one components would be to provide it to other components and it means that we're standardizing some of these inputs and outputs and that's done by standard names which means that the variables that get passed basically are precisely defined and then another extra functionality that components have is they generate net CDF outputs so like all the output of models will be in a sort of a similar format. So how many components are in WMT? There's a list that we try to maintain on the website it's not always 100% coverage because sometimes a component gets changed or the interfaces get changed a little bit but there's a list of components that are served on the web and I put the pointer there for you to check out what kind of models there are. There's about 34 in total and they are quite variable in domains so there's like a suite of hydrological components, there's coastal components, there is more stratigraphy and landscape evolution components. In complexity they vary quite a bit too like there's ones that are really like fairly small codes and then like the Frust number is one that is a tiny little functionality code for Primerfrust and then there's models that are relatively large like child or ROMs that are also wrapped in this tool. And so the idea is that we're covering a whole bunch of the domains that the working groups in CDS-DMS and sort of the larger community covers. So what does the web modeling tool look like? It's basically a web-based interface. You would type in this web address czdmescorado.edu slash wmt and then you'd be presented with this screen or this first entry screen. And then the models are organized in projects so we sort of group different models that are able to talk to each other and do exchange parameter in logical order. So the Primerfrust model will have like ones that are have to do with Primerfrust and climate for example or hydrology is the ones that are that have to do with hydrology but not necessarily even if you could think of a connection between hydrology and Primerfrust not necessarily have those parameters being exposed or are all these models on the same time scales or the same spatial scales and some remapping can be done but often then like science starts and a bit more complex interactions happen. But so to prevent from people from coupling things that really aren't compatible or scientifically compatible this project structure helps with going into like places where like similar scientifically similar components are grouped together. And so the coastlines project for example would have a incoming river and a Volsion routine to like switch distributary channels around and then a wave component that interacts with the sediment that arrived the bed load that arrives at the coast. And so it's a logical combination of models and sometimes papers have been written about those combinations. The Analyst is the one that has all the codes together so like for those people who just want to see what's in there and that's a place to go but it's also it's called Analyst because there's less guidance on what to connect together. So what are the advantages of models being in the WMT? Well all these models that come from different developers and different groups in the States or elsewhere are now like landed in in sort of a similar environment. They're exposed like once you've learned how it works you can run fairly different models but in a familiar way of setting up parameters etc. So and then under the hood like some of these models have different codes like HydroTrends, the ones that I've up here mostly in C I think but so there's Fortran codes, there's C codes, there are like a number of different programming languages that you would not see when you're using the WMT and you don't have to have familiarity with them. The way that I think people have the easiest way of like teaching with the WMT is to use the modeling labs as they're written in the educational repository of CSDMS. So I put this web address here down here to show you where they are. There are a set of different domain topics and any of them go in with questions that have more to do with like the topical question then that they're like tied to a specific model and so the topic would be sediment supplied to the global ocean and we're asking questions about like how rivers change with climate but in a way even if we're using the HydroTrend model we might not care so much that this is the HydroTrend model when we're doing this with students. So we're more interested in the concepts of like how the sediment supply change. On the other hand a person who knows that they want to use HydroTrend for some research question that they have this may be a great way of like getting to know the model a little bit and see at least a very basic functionality of it and so then you would be interested in the specific model. So these labs like when you click on the links these labs have a list that have the topical learning objectives they usually have a presentation on the model linked to it a PowerPoint that has the basic principles of the model and then they include practical instructions for simulations some guidance on useful and working experiments and questions to the user or the person who who does the lab to inquire the model output and I think I'll skip out and show you one of these so share my screen are you seeing the web page that I pulled up that's the link to this model no I think it's working yeah one of the people here like showed up and said yes I think I have you muted that so this would be one example of how one of these online models is set up um so this is the river sediment supply modeling um lab um there'd be a presentation link to it that you can download if you're um wanting to know a little bit more in depth about the model and then it has um instructions and some screenshots to like guide you through like setting up an experiment like this and so often there's some kind of a base case that comes out of a paper or out of a very simple reasoning that is the first experiment that people would run you like ask for different output files and run the experiment in WMT and then there's related questions that guide people through using these models and thinking about what kind of output are they looking at and thinking about like what does the model tell me about the experiments that I just set up and run um so like this example here has like a couple of like future scenarios of how this small river system the wayapoa that had been published on would change with changing climate conditions for example precipitation or temperatures etc um or the other experiment here that we're doing is um hydrogen has an anthropogenic component to it and so we're looking at like hey how would things change if we're changing the anthropogenic factor and what what what kind of implications does that have on erosion and then often these things are from experiments that have been done and then there's um um references to papers uh that go with that if people want to read up on these okay let me um go back to my power sharing my powerpoint um hopefully that will work here we go so um WMT generates netcdf files and it will like point to a window that um um shows the file as a little package and you can download the little package that has a complete set of the input files that you generated the settings um and then the output files that the model generated um but we don't have an um developed uh visualization uh tools for this and that was a conscious decision because there are quite a bit of like visualization tools for netcdf files and so one of the easy ones that um i've been advocating for if you're running things in a teaching situation or in a lab is to download this tool that's developed by nasa that's called panoply um that deals with netcdf files quite easily so um you basically open the files that you would have gotten out of the the run that you just did in a WMT and then create these plots with them by just clicking um clicking around in the panoply tool but it's a separate little package that uh that people download and uh it's fairly small it and it runs under windows and mac and linux so um so it's been compatible in the labs that i've taught with many students and sort of a quick and fairly intuitive way of doing that and then the labs do have instructions that go with that too so as an example um so i was just um walking you through this educational lab that was about hydrotrend um which is a model that simulates uh river fluxus to the ocean based on climate um scenarios and um basin characteristics and so typical output that you would get out of that is daily discharges over um a period of time that you indicated so like these are runs for a hundred years and so um sort of the the primary parameters that the model generates are discharge daily discharges and then these are daily sediment um sediment loads over time and so students would inquire is what is the the what does it look like um are there trends if we have a climate trend etc um and then here i compare two different runs so i compare um a case the case that we were just looking at which is like sort of the default case for the situation now and then um it's a little less visible but in um yellow is a case where we do a wetting over the century which is uh relevant for um new zealand where they expect weather climate over time and then look at like what would the discharge of this river system do and you can kind of see that it's like starts uh ramping up over the hundred years so as i said um wmt runs on the the blanca system so the hpcc and to run simulations with the wmt if you're an instructor uh or you want to do like a whole bunch of experiments etc then uh you'll need to set up an account um and we have um instructions for this um on our website um and i've listed the the entry points for that um but do keep in mind that this will take a little while like it takes a few days because there's really a certification or like a process in which um the cu like establishes credentials for you um so yeah um wmt is not as useful if you're planning for the lab and you need to do it the next morning with students so it really does require a little bit of prep um lin is the person who keeps track of these accounts and communicates with research computing to to help set them up and then in that process you'll get good instructions that come with like oh your account is ready and here's how you get into it or here's how you do the certification or here's how you um log into it and so we're excited that since this like five to seven days thing happens and um that is a lot of work for students to like a set this up and then it's work for on the side of like uh establishing these credentials if it's just for a class that runs like one day or uh a few hours then it's almost not worth to go through that whole procedure and so we've worked with research computing and um the solution to this is that if you're just instructing a class and you know that it is a given time you can use these teaching logins that they can supply you with so like there's still a little bit of preparation because you need to talk to us or talk to research computing to set this up but then they'll give you a list and not every single student or every single participant in a clinic needs to um needs to have these credentials established and it's just the instructor that that gets that list and gets all the anonymous accounts and passwords so I think that removes a big hurdle because there was always a lot of work to do with even with a class of like 30 students or so we would start three weeks ahead of time and make sure that everybody would like follow these instructions and do that and that is kind of taken away from this as an instructor or as a like more advanced user um you can't get away this way but um for teaching it's going to be a useful work around cool so um I am going to try to show you what this looks like in the WMT um are there questions so far or are there people who want to um ask a question already I'll try to unmute you so are there any questions or shall I just continue on um okay no no pression questions so far okay good so I'll skip out of the powerpoint and show you um in uh on the website like what um a um active do I have a terminal open um okay this is going to take a second so what I just did and you should be able to see is um I typed in uh HTTPS CS CSDMS code call slash WMT and so that lands you on the CSDMS web modeling tool page and then you would select the project um I've recently been working with the perma model team on the permafrost model so that's the one that I'll show you today um but there's other projects um but I just wanted to give you an impression of what it looks like so there's a login separately for WMT and then that brings you into this specific project and the logins are unique to like different projects and you can like sort of find out these drivers which are the models that are there and see like in this project what is organized together here and so in the case of the permafrost model we have two versions of a frost number model and we have two versions of a uh kudriatsv model and their boats have to do with um calculating permafrost conditions from um climatic data and from a layered model of vegetation and snow in case of the kud model and then the little tags for uh geo mean that these are like plan plan view map view models versus the ones that are just frost number model are 1d uh column models or just like one point models um and that is is not necessarily by design of the WMT that's by design of this group of developers who said like we split these up this way and we were like componentizing them this way so um something like that comes out of the developer group and then it gets wrapped with a BMI um in the models and exposed to WMT so just to show you when you would go into one of these so like here i'm exposing the kud model it will like show you a list of parameters right you can set the the runtime um when do you want to start this simulation in the year 2000 is what we're doing we're doing annual time steps this is an a model that runs over an annual sinusoidal cycle of climate um it asks you like how many outputs do you want so if you want the annual output you want to match those up um this is one this is 15 um and then you can manipulate like specific parameters that are that are um typical for this model so in this case it's air temperature or snow depth or a vegetation um and you would ask for different outputs and getting that cdf file of these outputs um and then you could potentially run this model in this case um the climate model uh comes from a different can come from a different component and so here there's two components that are data components um that are comparable to this model and so in that case you would get your um input data from either cMIP which is a climate reanalysis data set um a future model into comparison data set um and it runs um into the this full century up to 2100 or you can go with like a climate reanalysis data set and so if you do one of these couplings then the other component has its own parameters as well so you would look at show parameters and then um have like again options of what you would want to do um with that component um to learn something about the models or know something about the models there's uh some information uh attached with each of these models and a little like write up and often there's a link to the actual repository at chdms that has more references and more information there so to prevent um the wmt from being a black box so you would run this model i'm gonna skip this step because uh um it's gonna it's not gonna take super long but it's the initialization and etc it takes a little bit of time um and so basically um once you run a model it will bring you to um a window that has um outputs and you can download outputs like with with this little cloud um to your local machine so like i just um um have like a cmip5 uh run that i downloaded tarball and i like untar that and then i can visualize it in panoply good okay i'm gonna bring it back to the powerpoint because i just wanted to give you an impression of like what the um environment looks like in the um so i realized that that's demonstrations make it a bit more chaotic in the um in the zoom and the sort of the webinar format but on the other hand it seems much more clear to people what the functionality is and what you can do in these models once they've seen the um the environment in in in real or like live then when i'm just putting up the screenshots of it um but the basic things uh that we were just looking at was like changing parameters and then this um grabbing down or grabbing things from downloading from a model output once it's run and i'll skip through these these these are a bit more explanation of the of the model itself and what's under the hood um but so what can you do with such medium complexity models or fairly not super super difficult models well you can do actually small predictions if you have datasets associated with it which is what we're doing with those data components or if you have your own data sets you can upload small text files for example of time series of climate data and then calculate active layer thickness and so and in this example this was a discussion that i had with a colleague of the usgs and they were trying to defend to um the i don't know like and the supervisor in the usgs that it's important to maintain these stations and measure the snow thicknesses over permafrost um and they wanted to quickly show like how different would it be if we didn't have the snow data locally um how different would the active layer thickness um measurements be and so um that would be like a very quick run that you could do with a model like this um this idea of bringing in data um as a as a components into the wmt is new and it's something that's gonna move forward in the next uh in the next um years and in the permafrost model uh that gets pioneered a little bit um and yeah we like to hear from people how useful it is to have like links to reanalysis data or climate output or future climate output and also like bring those components the ideas that they then are available for other domains too once they're wrapped um but it also takes time to do and um is a little specific um but we found in the in the in this specific permafrost project that it's been useful because you can like benchmark uh data against in-situ data better if you um upload the in-situ data or you can do a model to data comparisons work here we're looking at like active layer thicknesses modeled in like bold lines and then um um um from station data in the in the um dotted lines and so um typical uh datasets that were ingested in that model and I think could be useful also for like landscape evolution models or uh hydrological models are um the climate reanalysis data and they're they're huge they they cover large time spans and um for this specific project we cut out um a domain because it's specific to the Arctic um but then once those uh datasets are components they are potentially like available to other other projects and other models too if they need air temperature or precipitation good so an example of visualization of that in the panoply tool it looks like this good um so I think I've given you an impression of the WMT and its strengths and weaknesses while we're going through this so um I put down the ones that I think are strength and weaknesses and I'd like to like ask for feedback in the end so in five minutes or so once I've showed you the alternative as well so I think uh strengths are that it's easy to use and that there's no coding required the fact that it's a similar interface for a large variety of very different models um I've seen students like think through like how do I set something up what do I do like as a sensitivity test or what do I do as a as a new hypothesis and so it helps people thinking about modeling in a in a way and it familiarizes new users with complicated models or the basics of complicated models but there's also drawbacks and they're mostly in uh flexibility so there's not so much flexibility to do experiments of your own design except for tinkering with the parameters that are exposed another thing is csdmes has a um in their educational mission a mission of bringing students up to speed in coding and teaching them basic coding practices and that does not get done so much in the wmt and then with the panoply software that I've been using with students you cannot do quantitative analysis you just look at figures and the visual comparisons and so one new alternative that we have is to bring these same models through the pymt into jupyter notebooks um and to give you a quick sneak peek of that um is this is that same um run that we just went through um and it's called like introduction to permafrost project and um it exposes a bit more in the python notebook what gets done under the hood so like there's a configure file that gets run you need to initialize the model you would update the model um and um to be annoying I'll skip out one more time and share my screen um that has this notebook uh this is the hydrogen notebook and this is the model that we're just looking at and so so um in the python notebook you would have a little bit more insight in what is going on under the hood with running a model um you would get a little bit more idea of what kind of variables are coming out of these models um and see like how small loops are done for example over time or um and so so the experiments are mirrored compared to the wmt experiments um so we're just changing small parameters like here we're changing the volumetric water content from 20 to 60 percent for example and then you would run these like by using them in a notebook environment and so fairly simple um you would go through and just run these and so a student could like um just only run these models um by clicking the um clicking the the different code boxes in the uh in the notebook um but get to and then the same questions that we had before are listed just as text questions in this case and so here we're like changing snow depths um and so then one of the things that it allows is you can um more easily change parameters um or or you can as easily change parameters that is no difference you can maybe a little bit more easily manipulate data sets and like put in your own data set so like in this case i like pool data set from github that is pre-made for this experiment but you could as easily in your own directory have a csv file that you set up beforehand and then run the same model with that csv file um and then another thing that i think is a strength is um students like to like manipulate the plots more and so if they're have if they have some familiarity with matplotlib or with python in general they can like manipulate the plots so that um they get some experiments with coding and so like here is one example of one of those boxes where people see that okay this is actually a loop over time as opposed to like i'm just running this over time um good so that's that's just a sneak peek into um what we've been doing um and these are not the these are by no means finished i think it will take another like maybe a few months uh um eric is planning to release the pie model modeling to um by early um winter of 2019 um and um we're striving to have these notebooks go with them then um you would still it would still require some setup with students again too in the sense that um they would need to install something like kind of konda or like a python programming environment um and then um download these notebooks or get clone these notebooks depending on how they're served like for now they're on the csdmes github repository but we we are envisioning to link between the wmt like we're now the wmt labs are and then also have py mt labs there or py python notebooks there so um strength of weakness and weaknesses of these notebooks and i think the notebooks address some of the um the weaknesses of the wmt in the sense that they do give a little bit more flexibility and perhaps some more insight in programming and teaches students first steps towards coding um but then um um it also requires a a a a bit more programming savvy student where um either they need some familiarity with python to like do um use these notebooks to their full potential um and this setup um is not really suitable for bigger or more complicated models that would run um that would take more run space because they would run locally on the machines of students so good i wanted to that that's sort of my last uh um slide i wanted to open it up for discussions um and ask people um whether they um think this is going to be useful um and whether they would be able to use these models etc so i think if i have unmuted you all and you can unmute unmute yourselves if you want to like comment to these serena do you foresee uh limitations with resources if a bunch of students or separate classes are attempting to work on this at the same time um so far not so much um one of the things that i usually do is i have like people like in groups of two um and but basically what research computing has done is they set aside some space if they know that you have a class um so so then there's not so much of an issue and is there a a process in place if members of the cstms community want to contribute labs to the repository i mean um mostly it is like please email us and we'd be really psyched to to have that um and um but it's it's almost it's rare enough that uh um it's usually a want to want like some interaction with the facilities so like on our educational website there is a like contributed lab um hub but it basically says like email arena or email cstms.atcororado.edu and often um our service or like i thank you for like contributing these labs is that we'll let go through them and run them on our site and see whether we can run them to and so that gives like a tiny little bit more robustness right to the labs but yes we very much welcome them yeah yeah and members have done that too you know these are not um like Courtney Harrison Julia Moriarty are the main people who did the roms labs and then um Rebecca Lausanne just contributed a lab over the summer that she'd been working on so so yes are you thinking um python notebooks uh correct yeah i haven't too much experience with pi mt though um i'm sorry i would wmt um right yeah that's what i've i've used more so okay well very cool we'd love it um so so another question that i had is uh um we've sort of artificially um divvied up are thinking about in this in like undergraduates and graduate students and think that one students are thinking more programmatically or they want to do like their own stuff they're usually like either their upper division or they are graduate students but if you want to give students a little bit of exposure with running a model and thinking about a model then perhaps like a graphical user interface is what you want to go with and we'd like feedback on that because you know like um what are the experience with that other people have with this or um trying to find out what people how people feel about running notebooks with um like i don't know undergrad level students you can hear some people are doing stuff but not so much so not so much thoughts about uh undergraduates or graduate students another option that we uh have thought about is to survey the community on this and um try to find out in that way um what what their experiences are with students i've um asked people at meetings and uh and even from people who are really big fans of like bringing coding to students um we've had had uh notes where people said like no no no for when it's really an undergrad class then the graphical user interface is really still going to be very useful for for teaching as well and that's maybe something that the educational working group would keep taking up too cool um are there other ideas or things that i've missed that you would like to contribute today or that are useful for like setting a bit of direction to these these developments for like the next half year or so that are useful good well we'll we stayed within the hour nicely um thank you for participating and thank you for like listening and like thinking about ideas of how to use CSDMS tools in the in the classroom these are um this is a process that's influx and moves forward and yeah we're sure that we'll have more over the next semester or so and so keep an eye keep your eyes peeled on the developments that are going to happen in the repository um and see those notebooks start popping up over time and feel free to email us um like we're here and um we are excited that people use the tools and and want to contribute to the tools thank you thanks thank you sure you're welcome you can see in you online thank you thanks everybody