Skip to content

Commit 3c60d89

Browse files
authored
Update 2025_05_15-seminar_42.md
1 parent 9583021 commit 3c60d89

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

_series/2025_05_15-seminar_42.md

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,17 +20,21 @@ We welcome the 2023 Award Winner - [Yudong Sun](https://yudong.dev/?hl=de&expand
2020

2121
**Florian Sihler**
2222

23-
Title: flowR: A Program Slicer for the R Programming Language
23+
**Title**: flowR: A Program Slicer for the R Programming Language
2424

25-
Abstract: Program slicing is an important technique to assist program comprehension. A program slicer identifies the parts of a program that are relevant to a given variable, e.g. a visualization or statistical test. The resulting slice can then help R programmers and researchers to understand the program by reducing the amount of code to be considered. We present flowR, a novel program slicer and dataflow analyzer for the R programming language. Given an R program and a variable of interest, flowR can return the resulting slice as a subset of the program or highlight the relevant parts directly in the input. Currently, flowR provides a read-eval-print loop, a server connection, an extension for Visual Studio Code, RStudio, and Positron. flowR is available as a docker image. flowR uses a five-step pipeline architecture, starting with a parser to convert the program into an abstract syntax tree (AST). After normalizing the AST, the dataflow extraction works as a stateful fold over the AST, incrementally constructing the graph of each subtree. The calculation of the program slice reduces to a reachability traversal of the dataflow graph which contains the uses and definitions of all variables. Finally, the slice is either reconstructed as R code or highlighted in the input.
25+
**Abstract**: Program slicing is an important technique to assist program comprehension. A program slicer identifies the parts of a program that are relevant to a given variable, e.g. a visualization or statistical test. The resulting slice can then help R programmers and researchers to understand the program by reducing the amount of code to be considered. We present flowR, a novel program slicer and dataflow analyzer for the R programming language. Given an R program and a variable of interest, flowR can return the resulting slice as a subset of the program or highlight the relevant parts directly in the input. Currently, flowR provides a read-eval-print loop, a server connection, an extension for Visual Studio Code, RStudio, and Positron. flowR is available as a docker image. flowR uses a five-step pipeline architecture, starting with a parser to convert the program into an abstract syntax tree (AST). After normalizing the AST, the dataflow extraction works as a stateful fold over the AST, incrementally constructing the graph of each subtree. The calculation of the program slice reduces to a reachability traversal of the dataflow graph which contains the uses and definitions of all variables. Finally, the slice is either reconstructed as R code or highlighted in the input.
26+
27+
------
2628

2729
**Anna Lena Schaible**
2830

29-
Title: Fast GPU-powered and auto-differentiable forward modeling for cosmological hydrodynamical simulations
31+
**Title**: Fast GPU-powered and auto-differentiable forward modeling for cosmological hydrodynamical simulations
3032

31-
Abstract: In the field of extragalactic astronomy we have typical two groups: The observers and the theorists. The nature of the data these two groups work with is very different: Observers count photons with the instrument detectors and theorists work with particles that have specific physical properties. This results in a rather small scientific exchange between both groups. Generally, there are two ways to bring observational data and simulation data closer together to allow a direct comparison between them: Forward modeling and inverse modeling.
33+
**Abstract**: In the field of extragalactic astronomy we have typical two groups: The observers and the theorists. The nature of the data these two groups work with is very different: Observers count photons with the instrument detectors and theorists work with particles that have specific physical properties. This results in a rather small scientific exchange between both groups. Generally, there are two ways to bring observational data and simulation data closer together to allow a direct comparison between them: Forward modeling and inverse modeling.
3234
Forward modeling calculates what should be observed for a particular model. The forward model takes certain parameters and produces data that are comparable to actual observations. Here, we present RUBIX, a novel python framework that aims at bridging the gap between observation and modeling. Inverse modeling is the process of starting with the result - the observational data - and calculating the causal factors that produce these data, which means constructing a model that accounts for the given set of observations. In the future, RUBIX will also allow for inverse modeling of observational data of galaxies. To this end, it leverages the sophisticated features of the JAX ecosystem and implements a pipeline structure that naturally supports differentiability of the computations. Besides the pure software side, I will spent part time of the talk on how to start writing a research software from scratch. I will discuss the experiences and lessons learned in the journey from being a PhD student with no prior experience in research software engineering to developing an innovative open-source scientific software that uses cutting edge technologies.
3335

36+
------
37+
3438
The talk will be held online. The connection details will be posted here:
3539

3640
* HiRSE_PS-internal [HiRSE Mattermost channel](https://mattermost.hzdr.de/hirse),

0 commit comments

Comments
 (0)