SoftwareXPub Date : 2025-04-02DOI: 10.1016/j.softx.2025.102141
Juan Gómez-Romero, Javier Cantón Correa, Rubén Pérez Mercado, Francisco Prados Abad, Miguel Molina-Solana, Waldo Fajardo
{"title":"pytopicgram: A library for data extraction and topic modeling from Telegram channels","authors":"Juan Gómez-Romero, Javier Cantón Correa, Rubén Pérez Mercado, Francisco Prados Abad, Miguel Molina-Solana, Waldo Fajardo","doi":"10.1016/j.softx.2025.102141","DOIUrl":"10.1016/j.softx.2025.102141","url":null,"abstract":"<div><div>Telegram is a popular platform for communication, generating large volumes of messages through its open channels. <span>pytopicgram</span> is a Python library designed to help researchers efficiently collect, organize, and analyze Telegram messages, addressing the increasing demand to understand online discourse. Key functionalities include efficient message retrieval, computation of engagement metrics, and advanced topic modeling. By automating the data extraction and analysis pipeline, <span>pytopicgram</span> simplifies the investigation of how content spreads, how topics evolve, and how audiences interact on Telegram. The library’s modular architecture ensures flexibility and scalability, making it suitable for diverse applications. This paper describes the design, main features, and illustrative examples that demonstrate <span>pytopicgram</span>’s practical effectiveness for studying public conversations.</div></div>","PeriodicalId":21905,"journal":{"name":"SoftwareX","volume":"30 ","pages":"Article 102141"},"PeriodicalIF":2.4,"publicationDate":"2025-04-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143748050","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Dynamical opinion clusters exploration suite: Modeling social media opinion dynamics","authors":"Henrique Ferraz de Arruda , Kleber Andrade Oliveira , Yamir Moreno","doi":"10.1016/j.softx.2025.102136","DOIUrl":"10.1016/j.softx.2025.102136","url":null,"abstract":"<div><div>The escalating use of social media in recent years has made the study of opinion dynamics a crucial area for understanding societal trends. As digital communication platforms continue to shape collective consciousness, understanding the evolution, interaction, and spread of opinions has become imperative. Researchers have approached this phenomenon from a variety of perspectives, ranging from sociology to data analytics to computational simulation. To address the challenges posed by the multifaceted and multidisciplinary nature of this research, coupled with the recent scarcity of data, computational simulation has emerged as a key tool for understanding opinion dynamics in social networks. This paper presents a Python library, DOCES, designed to simulate essential features of real-world social networks. The library includes the simulation of a social network algorithm, user prioritization, and the ability to model changes in friendships.</div></div>","PeriodicalId":21905,"journal":{"name":"SoftwareX","volume":"30 ","pages":"Article 102136"},"PeriodicalIF":2.4,"publicationDate":"2025-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143738724","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
SoftwareXPub Date : 2025-04-01DOI: 10.1016/j.softx.2025.102139
Przemysław Klęsk
{"title":"MCTS-NC: A thorough GPU parallelization of Monte Carlo Tree Search implemented in Python via numba.cuda","authors":"Przemysław Klęsk","doi":"10.1016/j.softx.2025.102139","DOIUrl":"10.1016/j.softx.2025.102139","url":null,"abstract":"<div><div>With CUDA computational model in mind, we introduce MCTS-NC (Monte Carlo Tree Search–<span>numba.cuda</span> ). It contains four, fast-operating and thoroughly parallel, variants of the MCTS algorithm. The design of MCTS-NC combines three parallelization levels (leaf<!--> <!-->/<!--> <!-->root<!--> <!-->/<!--> <!-->tree parallelizations). Additionally, all algorithmic stages – selections, expansions, playouts, backups – employ multiple GPU threads. We apply suitable <em>reduction</em> patterns to carry out summations or max<!--> <!-->/<!--> <!-->argmax operations. The implementation uses very few device-host memory transfers, no atomic operations (is lock-free), and takes advantage of threads cooperation. In the mathematical part of this article, we demonstrate how the confidence bounds on estimated action values become tightened by both the number of independent concurrent playouts and the number of independent concurrent trees. The experimental part reports the performance of MCTS-NC on two game examples: Connect4 and Gomoku. All computational results can be exactly reproduced.</div></div>","PeriodicalId":21905,"journal":{"name":"SoftwareX","volume":"30 ","pages":"Article 102139"},"PeriodicalIF":2.4,"publicationDate":"2025-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143738725","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
SoftwareXPub Date : 2025-03-29DOI: 10.1016/j.softx.2025.102145
Jérémy Lavarenne , Asse Mbengue
{"title":"SARRA-Py: A Python-based geospatial simulation framework for agroclimatic modeling","authors":"Jérémy Lavarenne , Asse Mbengue","doi":"10.1016/j.softx.2025.102145","DOIUrl":"10.1016/j.softx.2025.102145","url":null,"abstract":"<div><div>SARRA-Py is an open-source, Python-based adaptation of the long-standing SARRA crop model family–specifically building upon SARRA-H to enable spatially explicit agroclimatic simulations in tropical and data-limited environments. By leveraging Python's geospatial libraries (e.g., Xarray), SARRA-Py extends SARRA-H's proven crop physiology routines to large-scale, raster-based analyses, streamlines ingestion of diverse climate inputs with minimal preprocessing, and eases model customization via a modular code structure. Users interact with SARRA-Py primarily through Jupyter notebooks that provide guided workflows for data preparation, parameter configuration, and visualization of results. This design closes the gap between point-based crop models and broader geospatial frameworks, offering a practical tool for agricultural risk management, climate adaptation studies, and yield forecasting. Consequently, SARRA-Py fosters reproducible, scenario-based analyses and informs decision-making in vulnerable regions where water deficits, sparse ground observations, and climate variability threatens food security.</div></div>","PeriodicalId":21905,"journal":{"name":"SoftwareX","volume":"30 ","pages":"Article 102145"},"PeriodicalIF":2.4,"publicationDate":"2025-03-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143724911","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
SoftwareXPub Date : 2025-03-28DOI: 10.1016/j.softx.2025.102150
Luca Joshua Francis , Lewis Gabriel B. Geissler , Nathan Okole , Bela Gipp , Cyrill Stachniss , René Heim
{"title":"ReflectDetect: A software tool for AprilTag-guided in-flight radiometric calibration for UAV-mounted 2D snapshot multi-camera imagery","authors":"Luca Joshua Francis , Lewis Gabriel B. Geissler , Nathan Okole , Bela Gipp , Cyrill Stachniss , René Heim","doi":"10.1016/j.softx.2025.102150","DOIUrl":"10.1016/j.softx.2025.102150","url":null,"abstract":"<div><div>Unmanned Aerial Vehicles (UAVs) equipped with optical sensors have transformed remote sensing in vegetation science by providing high-resolution, on-demand data, enhancing studies in forestry, agriculture, and environmental monitoring. However, accurate radiometric calibration of UAV imagery remains challenging. A common practice, using a single calibration target while holding the UAV-mounted camera close above it, is being criticized as the hemisphere is invisibly shaded and the reference images are not collected under flight conditions. <em>ReflectDetect</em> addresses these challenges by allowing in-flight radiometric calibration through automated detection via two different approaches: 1) a geotagging approach leveraging high-precision coordinates of the reflectance targets and 2) AprilTag based detection, a visual fiducial system frequently used in robotics. A brief statistical analysis and example data is provided to reassure the quality of the calibration results. ReflectDetect is available through a command-line interface and open-source (<span><span>https://github.com/reflectdetect/reflectdetect</span><svg><path></path></svg></span>). It now enables users to design new in-flight calibration studies to eventually improve radiometric calibration in applied UAV remote sensing.</div></div>","PeriodicalId":21905,"journal":{"name":"SoftwareX","volume":"30 ","pages":"Article 102150"},"PeriodicalIF":2.4,"publicationDate":"2025-03-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143715323","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
SoftwareXPub Date : 2025-03-28DOI: 10.1016/j.softx.2025.102135
José C. Fernández-Alvarez , Albenis Pérez-Alarcón , Raquel Nieto , Luis Gimeno
{"title":"Version 1.1.1 - TROVA: TRansport Of water VApor","authors":"José C. Fernández-Alvarez , Albenis Pérez-Alarcón , Raquel Nieto , Luis Gimeno","doi":"10.1016/j.softx.2025.102135","DOIUrl":"10.1016/j.softx.2025.102135","url":null,"abstract":"<div><div>TROVA is a software tool implemented in Fortran and Python focused on the study of moisture sources and sinks using the main Lagrangian methodologies found in the literature. In this upgraded version 1.1.1, the following aspects have been improved: 1) the ability to be installed as a Python package in an Anaconda environment with an improved configuration description, 2) the option to study moisture sources and sinks in different layers of the atmospheric vertical column, 3) the inclusion of an adjustable tracking time for the particles along their trajectories, and 4) the calculation of the water vapor residence time in the atmosphere for all particles over a target region. These updates allow the study and characterization of moisture transport for different extreme events and climatological periods.</div></div>","PeriodicalId":21905,"journal":{"name":"SoftwareX","volume":"30 ","pages":"Article 102135"},"PeriodicalIF":2.4,"publicationDate":"2025-03-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143715223","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Atlantic cod growth model: Open source Python package for numerical growth experiments","authors":"Nadezhda Sokolova , Anja Rohner , Martin Butzin , Hans-Otto Pörtner , Gerrit Lohmann","doi":"10.1016/j.softx.2025.102113","DOIUrl":"10.1016/j.softx.2025.102113","url":null,"abstract":"<div><div>In this article we introduce an open source tool that is used to study growth of Atlantic cod <em>(Gadus morhua)</em>, an economically important fish species, in different temperature environments. It is a mechanistic physiology-based growth model that simulates growth in controlled laboratory experiments as well as in an open sea environment. The model can be used by universities, industrial, and research institutes as a tool for testing research hypotheses, and studying temperature-dependent growth in fishes.</div></div>","PeriodicalId":21905,"journal":{"name":"SoftwareX","volume":"30 ","pages":"Article 102113"},"PeriodicalIF":2.4,"publicationDate":"2025-03-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143715324","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"PyMED-DX: A Python tool for diagnostic value evaluation of 2D medical images","authors":"Gorana Gojić , Vladimir Vincan , Ognjen Kundačina , Saša Taloši , Dragiša Mišković","doi":"10.1016/j.softx.2025.102128","DOIUrl":"10.1016/j.softx.2025.102128","url":null,"abstract":"<div><div>This paper presents a Python-based tool designed to simplify subjective assessment studies for diagnostic value assessment of 2D medical images. The tool facilitates rapid questionnaire generation, allowing users to integrate their data into predefined templates, and provides utilities to statistically and visually analyze collected responses. By reducing the technical overhead of study preparation, the tool allows users to focus on knowledge discovery while providing easy-to-use questionnaires for clinicians with no technical expertise required.</div></div>","PeriodicalId":21905,"journal":{"name":"SoftwareX","volume":"30 ","pages":"Article 102128"},"PeriodicalIF":2.4,"publicationDate":"2025-03-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143706340","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
SoftwareXPub Date : 2025-03-26DOI: 10.1016/j.softx.2025.102138
Davide Di Censo , Ilaria Rosa , Brigida Ranieri , Tiziana Di Lorenzo , Marcello Alecci , Tiziana M. Florio , Angelo Galante
{"title":"TrAQ: A novel, versatile, semi-automated, two-dimensional motor behavioural tracking software","authors":"Davide Di Censo , Ilaria Rosa , Brigida Ranieri , Tiziana Di Lorenzo , Marcello Alecci , Tiziana M. Florio , Angelo Galante","doi":"10.1016/j.softx.2025.102138","DOIUrl":"10.1016/j.softx.2025.102138","url":null,"abstract":"<div><div>We present TrAQ, a new MATLAB-based two-dimensional tracking software for Open Field video analysis of an unmarked single animal. TrAQ allows automatic recognition of the animal within a user-defined arena, providing a full range of quantitative kinematic behavioral parameters. TrAQ, free and non-species-specific application, was quantitively tested with rodents. Within free software an innovative feature of TrAQ is the automated counting of in-plane rotations, an important parameter in the 6-hydroxydopamine hemiparkinsonian rat model and in many rodent models of neurodegenerative diseases, and a very time-consuming manual task for highly trained human operators. Quantitative results were successfully validated against commercial software (for tracking) and manual annotation (for rotations in a hemiparkinsonian rat model). TrAQ allows the characterization of motor asymmetry using non-invasive tools, thus appreciating the spontaneous Open Field behaviour of unmarked single animal, with minimum user intervention.</div></div>","PeriodicalId":21905,"journal":{"name":"SoftwareX","volume":"30 ","pages":"Article 102138"},"PeriodicalIF":2.4,"publicationDate":"2025-03-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143706339","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"H-Alpha anomalyzer: An anomaly detector for H-Alpha solar observations using a grid-based approach","authors":"Mahsa Khazaei , Heba Mahdi , Kartik Chaurasiya , Azim Ahmadzadeh","doi":"10.1016/j.softx.2025.102120","DOIUrl":"10.1016/j.softx.2025.102120","url":null,"abstract":"<div><div>This article presents a Python package named H-Alpha Anomalyzer for detecting anomalous H-Alpha observations of the Sun. Using this open-source package, users can transform the labor-intensive task of filtering anomalous observations from millions of instances, thereby enhancing the quality of data used for data-hungry algorithms, particularly Deep Neural Networks (DNNs). Our region-based probabilistic method offers explainability by assigning anomaly likelihoods to each cell of a given observation. Additionally, users can set a probability threshold to customize the degree of anomaly required for an entire image to be classified as anomalous. This paper also reports the quantitative validation of the method. On a modest laptop computer, this lightweight package processes ten 2k-by-2k-pixel images per second, which is significantly faster than its DNN-based counterparts.</div></div>","PeriodicalId":21905,"journal":{"name":"SoftwareX","volume":"30 ","pages":"Article 102120"},"PeriodicalIF":2.4,"publicationDate":"2025-03-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143706338","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}