English
Related papers

Related papers: Computer algebra in Julia

200 papers

GPUs are popular devices for accelerating scientific calculations. However, as GPU code is usually written in low-level languages, it breaks the abstractions of high-level languages popular with scientific programmers. To overcome this, we…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-04-13 Tim Besard , Pieter Verstraete , Bjorn De Sutter

Technical computing is a challenging application area for programming languages to address. This is evinced by the unusually large number of specialized languages in the area (e.g. MATLAB, R), and the complexity of common software stacks,…

Programming Languages · Computer Science 2018-08-13 Jeff Bezanson , Jake Bolewski , Jiahao Chen

The Julia programming language was designed to fill the needs of scientific computing by combining the benefits of productivity and performance languages. Julia allows users to write untyped scripts easily without needing to worry about…

Programming Languages · Computer Science 2023-10-27 Benjamin Chung

We demonstrate how methods in Functional Programming can be used to implement a computer algebra system. As a proof-of-concept, we present the computational-algebra package. It is a computer algebra system implemented as an embedded…

Symbolic Computation · Computer Science 2018-10-02 Hiromi Ishii

Designing software systems for Geometric Computing applications can be a challenging task. Software engineers typically use software abstractions to hide and manage the high complexity of such systems. Without the presence of a unifying…

Mathematical Software · Computer Science 2017-05-19 Ahmad Hosny Eid

Since time immemorial an old adage has always seemed to ring true: you cannot use a high-level productive programming language like Python or R for real-time control and embedded-systems programming, you must rewrite your program in C. We…

Systems and Control · Electrical Eng. & Systems 2025-02-10 Fredrik Bagge Carlson , Cody Tapscott , Gabriel Baraldi , Chris Rackauckas

We present BSeries.jl, a Julia package for the computation and manipulation of B-series, which are a versatile theoretical tool for understanding and designing discretizations of differential equations. We give a short introduction to the…

Numerical Analysis · Mathematics 2022-12-06 David I. Ketcheson , Hendrik Ranocha

We introduce Metatheory.jl: a lightweight and performant general purpose symbolics and metaprogramming framework meant to simplify the act of writing complex Julia metaprograms and to significantly enhance Julia with a native term rewriting…

Programming Languages · Computer Science 2021-04-14 Alessandro Cheli

Quantum computations operate in the quantum world. For their results to be useful in any way, there is an intrinsic necessity of cooperation and communication controlled by the classical world. As a consequence, full formal descriptions of…

Quantum Physics · Physics 2007-05-23 Philippe Jorrand , Marie Lalire

In the realm of scientific computing, both Julia and Python have established themselves as powerful tools. Within the context of High Energy Physics (HEP) data analysis, Python has been traditionally favored, yet there exists a compelling…

Programming Languages · Computer Science 2024-04-30 Ianna Osborne , Jim Pivarski , Jerry Ling

We present Trixi.jl, a Julia package for adaptive high-order numerical simulations of hyperbolic partial differential equations. Utilizing Julia's strengths, Trixi.jl is extensible, easy to use, and fast. We describe the main design choices…

Mathematical Software · Computer Science 2022-01-19 Hendrik Ranocha , Michael Schlottke-Lakemper , Andrew R. Winters , Erik Faulhaber , Jesse Chan , Gregor J. Gassner

In certain scientific domains, there is a need for tensor operations. To facilitate tensor computations,computer algebra systems are employed. In our research, we have been using Cadabra as the main computer algebra system for several…

Symbolic Computation · Computer Science 2019-06-07 D. S. Kulyabov , A. V. Korolkova , L. A. Sevastianov

This report presents a brief review of matrix algebra and its implementation in Julia for power and energy applications. First, we present basic examples of data visualization, followed by conventional operations with matrices and vectors.…

Numerical Analysis · Mathematics 2024-05-13 Alejandro Garces-Ruiz

The Julia programming language continues to gain popularity both for its potential for programmer productivity and for its impressive performance on scientific code. It thus holds potential for large-scale HPC, but we have not yet seen this…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-09-30 Amal Rizvi , Kyle C. Hale

We argue that the Julia programming language is a compelling alternative to implementations in Python and C++ for common data analysis workflows in high energy physics. We compare the speed of implementations of different workflows in Julia…

Computational Physics · Physics 2021-04-13 Marcel Stanitzki , Jan Strube

Computer algebra in Java is a promising field of development. It has not yet reached an industrial strength, in part because of a lack of good user interfaces. Using a general purpose scripting language can bring a natural mathematical…

Symbolic Computation · Computer Science 2009-06-15 Raphael Jolly , Heinz Kredel

The use of programming languages can wax and wane across the decades. We examine the split-apply- combine pattern that is common in statistical computing, and consider how its invocation or implementation in languages like MATLAB and APL…

Programming Languages · Computer Science 2018-08-16 Jiahao Chen

The polylogarithm function is one of the constellation of important mathematical functions. It has a long history, and many connections to other special functions and series, and many applications, for instance in statistical physics.…

Numerical Analysis · Mathematics 2020-10-21 Matthew Roughan

This thesis proposes an advanced, generic and high-level code rewriting and analysis system in the Julia programming language, providing applied equality saturation in the presence of multiple dispatch and metaprogramming. We show how our…

Programming Languages · Computer Science 2022-02-08 Alessandro Cheli

MLJ (Machine Learing in Julia) is an open source software package providing a common interface for interacting with machine learning models written in Julia and other languages. It provides tools and meta-algorithms for selecting, tuning,…

Machine Learning · Computer Science 2020-12-01 Anthony D. Blaom , Franz Kiraly , Thibaut Lienart , Yiannis Simillides , Diego Arenas , Sebastian J. Vollmer