Academia.edu no longer supports Internet Explorer.
To browse Academia.edu and the wider internet faster and more securely, please take a few seconds to upgrade your browser.
Beginning Julia Programming
…
37 pages
1 file
This paper discusses the definition and implementation of mathematical functions, focusing on in-built functions in the Julia programming language. It covers basic arithmetic operations such as division, introduced various division functions like div, fld, and cld, and exemplifies their usage with both integer and floating-point numbers. Special emphasis is placed on the modulo operations and the functionality of mod2pi, showcasing relevant syntax and behavior.
2020
In problems of mathematical physics, to study the structures of spaces using the Cayley-Klein models in theoretical calculations, the use of generalized complex numbers is required. In the case of computational experiments, such tasks require their high-quality implementation in a programming language. The proposed small implementation of generalized complex numbers in modern programming languages have several disadvantages. In this article, we propose using the Julia language as the language for implementing generalized complex numbers, not least because it supports the multiple dispatch mechanism. The paper demonstrates the approach to the implementation of one of the types of generalized complex numbers, namely dual numbers. We place particular emphasis on the description of the use of the multiple dispatch mechanism to implement a new numerical type. The resulting implementation of dual numbers can be considered as a prototype for a complete software module for supporting genera...
The standard mathematical library known as libm o?ers a small set of functions in a small set of precisions. Performance of libm functions is of critical importance, in particular in scienti?c and ?nancial computing libm for each new processor, a time-consuming and error-prone task. A ?rst objective of this project is therefore to automate libm development, up to the point where libms generated in a fraction. Applications often require functions not present in the libm. In such case, a composition of libm functions may be very ine?cient, or simply not possible (function de?ned by a deferential equation or by interpolation of a set of data points for instance). Even the libm functions are oared in a limited choice of implementations which will most of the time poorly match the actual needs of an application in terms of range, accuracy, performance and resource consumption. The set of functions and contexts available to programmers. The process of implementing a mathematical function into code is composed of several steps; typically range reduction, approximation, evaluation (additions, multiplications, and pre-computed constant values). Approach of this project is therefore to unify the understanding of function, sharing common mathematical, methodological, and implementation tools. In particular this will lead to on-demand generation for the same breadth of targets and with the same guarantees on numerical quality.
Discrete and Continuous Models and Applied Computational Science
Hyperbolic complex numbers are used in the description of hyperbolic spaces. One of the well-known examples of such spaces is the Minkowski space, which plays a leading role in the problems of the special theory of relativity and electrodynamics. However, such numbers are not very common in different programming languages. Of interest is the implementation of hyperbolic complex in scientific programming languages, in particular, in the Julia language. The Julia language is based on the concept of multiple dispatch. This concept is an extension of the concept of polymorphism for object-oriented programming languages. To implement hyperbolic complex numbers, the multiple dispatching approach of the Julia language was used. The result is a library that implements hyperbolic numbers. Based on the results of the study, we can conclude that the concept of multiple dispatching in scientific programming languages is convenient and natural.
Journal of Physics: Conference Series
In this article, we compare the support for SIMD instructions for Julia and Fortran. The comparison is carried out according to the methodology described in work of T. Kalibera, R. E. Jones. The first part of the article gives a brief description of this technique. We emphasize on the practical implementation using Python, NumPy and SciPy. The second part of the article briefly discusses the syntactic capabilities of Fortran and Julia to work with SIMD processor extensions. Specific code snippets are given. Next, the performance of Julia and Fortran is compared for arithmetic operations on arrays of small length. The results are presented in tabular and graphical form.
Applied mathematics, 2024
This paper provides a method of the process of computation called the cumulative method, it is based upon repeated cumulative process. The cumulative method is being adapted to the purposes of computation, particularly multiplication and division. The operations of multiplication and division are represented by algebraic formulas. An advantage of the method is that the cumulative process can be performed on decimal numbers. The present paper aims to establish a basic and useful formula valid for the two fundamental arithmetic operations of multiplication and division. The new cumulative method proved to be more flexible and made it possible to extend the multiplication and division based on repeated addition/subtraction to decimal numbers.
2014
The calculator package allows us to use L ATEX as a calculator, with which we can perform many of the common scientific calculations (with the limitation in accuracy imposed by the TEX arithmetic). The calculus package uses calculator to compute simultaneously a function and its derivative. 1
Mathematical Software - Proceedings of the First International Congress of Mathematical Software, 2002
We describe the environment for symbolic and numeric computations, called SYNAPS (Symbolic and Numeric APplicationS) and developed in C++. Its aim is to provide a coherent platform integrating many of the nowadays freely available software in scientific computing. The approach taken here is inspired by the recent paradigm of software developments called active library. In this paper, we explain the design choices of the kernel and their impact on the development of generic and efficient codes for the treatment of algebraic objects, such as vectors, matrices, univariate and multivariate polynomials. Implementation details illustrate the performance of the approach. 1
An Introduction to Maple V, 2001
The use of registered names, trademarks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use.
2016
Abstract: One of the most important features of GeoGebra is the coordination of the geometric and algebraic representations, easily observed in GeoGebra window. Using GeoGebra software the teacher can geometrically and fruitfully teach the concepts and algorithms of arithmetic operations in the elementary school. Our paper focuses on two important operations: multiplication and division in the set of natural numbers. Using GeoGebra features we visually demonstrate the concepts of these two operations and help the students to develop the process of mastering multiplication and division facts. Our paper aims to achieve three objectives: Firstly, teach multiplication and division using an area model with base and height of 10 squares. The table designed for this special purpose can be considered as a platform where the arrangements of objects, pictures or numbers in columns and rows is done. Secondly, teach division by using the concept of sharing or partitioning. We have designed a pa...
Loading Preview
Sorry, preview is currently unavailable. You can download the paper by clicking the button above.
International Journal of Software & Hardware Research in Engineering, 8(2), 27–35., 2020
Facta universitatis - series: Electronics and Energetics, 2007
J. Multiple Valued Log. Soft Comput., 2014
ACM Transactions on Mathematical Software, 1980
International Journal of Advanced Science and Engineering, 2023
Proceedings of the ACM on Programming Languages
1978 IEEE 4th Symposium onomputer Arithmetic (ARITH), 1978
2011 41st IEEE International Symposium on Multiple-Valued Logic, 2011
The IMA Volumes in Mathematics and its Applications, 2008
Zenodo (CERN European Organization for Nuclear Research), 2022
1972 IEEE 2nd Symposium on Computer Arithmetic (ARITH), 1972
Lecture Notes in Computer Science
Journal of Symbolic Computation, 1986
Numerical Algorithms, 2004
Journal of Universal Computer Science, 1995
HAL (Le Centre pour la Communication Scientifique Directe), 2022