Mathematical models are used to simulate real-world systems in many scientific fields. These models can be fitted to real-time data, and used to generate probabilistic forecasts that describe how the system will behave in the future and convey the uncertainty in these predictions.
{"title":"pypfilt: a particle filter for Python","authors":"Robert Moss","doi":"10.21105/joss.06276","DOIUrl":"https://doi.org/10.21105/joss.06276","url":null,"abstract":"Mathematical models are used to simulate real-world systems in many scientific fields. These models can be fitted to real-time data, and used to generate probabilistic forecasts that describe how the system will behave in the future and convey the uncertainty in these predictions.","PeriodicalId":16635,"journal":{"name":"Journal of open source software","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2024-04-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"140748372","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Aleksander Sulkowski, Clément Bouton, Chad Swanson
Summary Vertebrate genomes contain lower than expected frequencies of the CpG dinucleotide. Consequently, many vertebrate viruses have evolved to mimic this composition, possibly in order to evade host antiviral defences (Greenbaum et al., 2008). For example, the antiviral protein ZAP binds CpGs in viral single stranded RNA with specific spacing requirements (Gonçalves-Carneiro et al., 2022), though CpGs are also likely depleted in viral genomes due to other selective pressures (Forni et al., 2023). Increasing CpG abundance by synonymous recoding could facilitate attenuation of viruses without compromising their epitope antigenicity by changing non-CpG codons to alternatives containing CpG without changing the overall amino acid sequence (Gonçalves-Carneiro et al., 2022; Le Nouën et al., 2019; Sharp et al., 2023). There are three ways CpGs can be synonymously introduced in codons: at positions 1-2 for arginine (e.g. AGA → CGA), 2-3 for several amino acids (e.g. ACA → ACG), or in a 3-1 split configuration, if a subsequent codon begins with a G (e.g. ATA-GCA → ATC-GCA). Syn-CpG-Spacer is a Python progressive web app (PWA) (MDN Web Docs, 2023) made with the Panel library (Panel Development Team, 2024) that allows for consistent recoding of viral sequences and applying biologically relevant constraints. These include setting a minimum gap between CpG’s, optimising for an average CpG gap, protecting cis-acting regulatory signals from modification, and modulating the A-content in the overall sequence. The app features a sequence viewer made with the Bokeh library (Bokeh Development Team, 2024) that highlights CpG dinucleotides, allowing for efficient analysis of the resulting distribution of CpGs. This is complemented by a statistical data table. Utilising Biopython (Cock et al., 2009) modules, the user can load their sequence as a FASTA file and download the outputs as an alignment in the same format. As a PWA running on Pyodide (The Pyodide development team, 2023), the code is only executed in the user’s browser and they can install the app onto their machine for offline use.
{"title":"Syn-CpG-Spacer: A Panel web app for synonymous recoding of viral genomes with CpG dinucleotides","authors":"Aleksander Sulkowski, Clément Bouton, Chad Swanson","doi":"10.21105/joss.06332","DOIUrl":"https://doi.org/10.21105/joss.06332","url":null,"abstract":"Summary Vertebrate genomes contain lower than expected frequencies of the CpG dinucleotide. Consequently, many vertebrate viruses have evolved to mimic this composition, possibly in order to evade host antiviral defences (Greenbaum et al., 2008). For example, the antiviral protein ZAP binds CpGs in viral single stranded RNA with specific spacing requirements (Gonçalves-Carneiro et al., 2022), though CpGs are also likely depleted in viral genomes due to other selective pressures (Forni et al., 2023). Increasing CpG abundance by synonymous recoding could facilitate attenuation of viruses without compromising their epitope antigenicity by changing non-CpG codons to alternatives containing CpG without changing the overall amino acid sequence (Gonçalves-Carneiro et al., 2022; Le Nouën et al., 2019; Sharp et al., 2023). There are three ways CpGs can be synonymously introduced in codons: at positions 1-2 for arginine (e.g. AGA → CGA), 2-3 for several amino acids (e.g. ACA → ACG), or in a 3-1 split configuration, if a subsequent codon begins with a G (e.g. ATA-GCA → ATC-GCA). Syn-CpG-Spacer is a Python progressive web app (PWA) (MDN Web Docs, 2023) made with the Panel library (Panel Development Team, 2024) that allows for consistent recoding of viral sequences and applying biologically relevant constraints. These include setting a minimum gap between CpG’s, optimising for an average CpG gap, protecting cis-acting regulatory signals from modification, and modulating the A-content in the overall sequence. The app features a sequence viewer made with the Bokeh library (Bokeh Development Team, 2024) that highlights CpG dinucleotides, allowing for efficient analysis of the resulting distribution of CpGs. This is complemented by a statistical data table. Utilising Biopython (Cock et al., 2009) modules, the user can load their sequence as a FASTA file and download the outputs as an alignment in the same format. As a PWA running on Pyodide (The Pyodide development team, 2023), the code is only executed in the user’s browser and they can install the app onto their machine for offline use.","PeriodicalId":16635,"journal":{"name":"Journal of open source software","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2024-04-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"140746862","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"PyHeatDemand - Processing Tool for Heat Demand\u0000Data","authors":"A. Jüstel, Frank Strozyk","doi":"10.21105/joss.06275","DOIUrl":"https://doi.org/10.21105/joss.06275","url":null,"abstract":"","PeriodicalId":16635,"journal":{"name":"Journal of open source software","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2024-03-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"140078464","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}