Algebra and Geometry with Python


Book Description

This book teaches algebra and geometry. The authors dedicate chapters to the key issues of matrices, linear equations, matrix algorithms, vector spaces, lines, planes, second-order curves, and elliptic curves. The text is supported throughout with problems, and the authors have included source code in Python in the book. The book is suitable for advanced undergraduate and graduate students in computer science.




Doing Math with Python


Book Description

Doing Math with Python shows you how to use Python to delve into high school–level math topics like statistics, geometry, probability, and calculus. You’ll start with simple projects, like a factoring program and a quadratic-equation solver, and then create more complex projects once you’ve gotten the hang of things. Along the way, you’ll discover new ways to explore math and gain valuable programming skills that you’ll use throughout your study of math and computer science. Learn how to: –Describe your data with statistics, and visualize it with line graphs, bar charts, and scatter plots –Explore set theory and probability with programs for coin flips, dicing, and other games of chance –Solve algebra problems using Python’s symbolic math functions –Draw geometric shapes and explore fractals like the Barnsley fern, the Sierpinski triangle, and the Mandelbrot set –Write programs to find derivatives and integrate functions Creative coding challenges and applied examples help you see how you can put your new math and coding skills into practice. You’ll write an inequality solver, plot gravity’s effect on how far a bullet will travel, shuffle a deck of cards, estimate the area of a circle by throwing 100,000 "darts" at a board, explore the relationship between the Fibonacci sequence and the golden ratio, and more. Whether you’re interested in math but have yet to dip into programming or you’re a teacher looking to bring programming into the classroom, you’ll find that Python makes programming easy and practical. Let Python handle the grunt work while you focus on the math. Uses Python 3




Math Adventures with Python


Book Description

Learn math by getting creative with code! Use the Python programming language to transform learning high school-level math topics like algebra, geometry, trigonometry, and calculus! Math Adventures with Python will show you how to harness the power of programming to keep math relevant and fun. With the aid of the Python programming language, you'll learn how to visualize solutions to a range of math problems as you use code to explore key mathematical concepts like algebra, trigonometry, matrices, and cellular automata. Once you've learned the programming basics like loops and variables, you'll write your own programs to solve equations quickly, make cool things like an interactive rainbow grid, and automate tedious tasks like factoring numbers and finding square roots. You'll learn how to write functions to draw and manipulate shapes, create oscillating sine waves, and solve equations graphically. You'll also learn how to: - Draw and transform 2D and 3D graphics with matrices - Make colorful designs like the Mandelbrot and Julia sets with complex numbers - Use recursion to create fractals like the Koch snowflake and the Sierpinski triangle - Generate virtual sheep that graze on grass and multiply autonomously - Crack secret codes using genetic algorithms As you work through the book's numerous examples and increasingly challenging exercises, you'll code your own solutions, create beautiful visualizations, and see just how much more fun math can be!




Geometric Algebra for Computer Science


Book Description

Until recently, almost all of the interactions between objects in virtual 3D worlds have been based on calculations performed using linear algebra. Linear algebra relies heavily on coordinates, however, which can make many geometric programming tasks very specific and complex-often a lot of effort is required to bring about even modest performance enhancements. Although linear algebra is an efficient way to specify low-level computations, it is not a suitable high-level language for geometric programming. Geometric Algebra for Computer Science presents a compelling alternative to the limitations of linear algebra. Geometric algebra, or GA, is a compact, time-effective, and performance-enhancing way to represent the geometry of 3D objects in computer programs. In this book you will find an introduction to GA that will give you a strong grasp of its relationship to linear algebra and its significance for your work. You will learn how to use GA to represent objects and perform geometric operations on them. And you will begin mastering proven techniques for making GA an integral part of your applications in a way that simplifies your code without slowing it down. * The first book on Geometric Algebra for programmers in computer graphics and entertainment computing * Written by leaders in the field providing essential information on this new technique for 3D graphics * This full colour book includes a website with GAViewer, a program to experiment with GA




Math for Programmers


Book Description

In Math for Programmers you’ll explore important mathematical concepts through hands-on coding. Filled with graphics and more than 300 exercises and mini-projects, this book unlocks the door to interesting–and lucrative!–careers in some of today’s hottest fields. As you tackle the basics of linear algebra, calculus, and machine learning, you’ll master the key Python libraries used to turn them into real-world software applications. Summary To score a job in data science, machine learning, computer graphics, and cryptography, you need to bring strong math skills to the party. Math for Programmers teaches the math you need for these hot careers, concentrating on what you need to know as a developer. Filled with lots of helpful graphics and more than 200 exercises and mini-projects, this book unlocks the door to interesting–and lucrative!–careers in some of today’s hottest programming fields. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the technology Skip the mathematical jargon: This one-of-a-kind book uses Python to teach the math you need to build games, simulations, 3D graphics, and machine learning algorithms. Discover how algebra and calculus come alive when you see them in code! About the book In Math for Programmers you’ll explore important mathematical concepts through hands-on coding. Filled with graphics and more than 300 exercises and mini-projects, this book unlocks the door to interesting–and lucrative!–careers in some of today’s hottest fields. As you tackle the basics of linear algebra, calculus, and machine learning, you’ll master the key Python libraries used to turn them into real-world software applications. What's inside Vector geometry for computer graphics Matrices and linear transformations Core concepts from calculus Simulation and optimization Image and audio processing Machine learning algorithms for regression and classification About the reader For programmers with basic skills in algebra. About the author Paul Orland is a programmer, software entrepreneur, and math enthusiast. He is co-founder of Tachyus, a start-up building predictive analytics software for the energy industry. You can find him online at www.paulor.land. Table of Contents 1 Learning math with code PART I - VECTORS AND GRAPHICS 2 Drawing with 2D vectors 3 Ascending to the 3D world 4 Transforming vectors and graphics 5 Computing transformations with matrices 6 Generalizing to higher dimensions 7 Solving systems of linear equations PART 2 - CALCULUS AND PHYSICAL SIMULATION 8 Understanding rates of change 9 Simulating moving objects 10 Working with symbolic expressions 11 Simulating force fields 12 Optimizing a physical system 13 Analyzing sound waves with a Fourier series PART 3 - MACHINE LEARNING APPLICATIONS 14 Fitting functions to data 15 Classifying data with logistic regression 16 Training neural networks




Applying Math with Python


Book Description

Discover easy-to-follow solutions and techniques to help you to implement applied mathematical concepts such as probability, calculus, and equations using Python's numeric and scientific libraries Key FeaturesCompute complex mathematical problems using programming logic with the help of step-by-step recipesLearn how to utilize Python's libraries for computation, mathematical modeling, and statisticsDiscover simple yet effective techniques for solving mathematical equations and apply them in real-world statisticsBook Description Python, one of the world's most popular programming languages, has a number of powerful packages to help you tackle complex mathematical problems in a simple and efficient way. These core capabilities help programmers pave the way for building exciting applications in various domains, such as machine learning and data science, using knowledge in the computational mathematics domain. The book teaches you how to solve problems faced in a wide variety of mathematical fields, including calculus, probability, statistics and data science, graph theory, optimization, and geometry. You'll start by developing core skills and learning about packages covered in Python's scientific stack, including NumPy, SciPy, and Matplotlib. As you advance, you'll get to grips with more advanced topics of calculus, probability, and networks (graph theory). After you gain a solid understanding of these topics, you'll discover Python's applications in data science and statistics, forecasting, geometry, and optimization. The final chapters will take you through a collection of miscellaneous problems, including working with specific data formats and accelerating code. By the end of this book, you'll have an arsenal of practical coding solutions that can be used and modified to solve a wide range of practical problems in computational mathematics and data science. What you will learnGet familiar with basic packages, tools, and libraries in Python for solving mathematical problemsExplore various techniques that will help you to solve computational mathematical problemsUnderstand the core concepts of applied mathematics and how you can apply them in computer scienceDiscover how to choose the most suitable package, tool, or technique to solve a certain problemImplement basic mathematical plotting, change plot styles, and add labels to the plots using MatplotlibGet to grips with probability theory with the Bayesian inference and Markov Chain Monte Carlo (MCMC) methodsWho this book is for This book is for professional programmers and students looking to solve mathematical problems computationally using Python. Advanced mathematics knowledge is not a requirement, but a basic knowledge of mathematics will help you to get the most out of this book. The book assumes familiarity with Python concepts of data structures.




Computational Line Geometry


Book Description

From the reviews: " A unique and fascinating blend, which is shown to be useful for a variety of applications, including robotics, geometrical optics, computer animation, and geometric design. The contents of the book are visualized by a wealth of carefully chosen illustrations, making the book a shear pleasure to read, or even to just browse in." Mathematical Reviews




A First Course in Computational Algebraic Geometry


Book Description

A quick guide to computing in algebraic geometry with many explicit computational examples introducing the computer algebra system Singular.




Understanding Geometric Algebra for Electromagnetic Theory


Book Description

This book aims to disseminate geometric algebra as a straightforward mathematical tool set for working with and understanding classical electromagnetic theory. It's target readership is anyone who has some knowledge of electromagnetic theory, predominantly ordinary scientists and engineers who use it in the course of their work, or postgraduate students and senior undergraduates who are seeking to broaden their knowledge and increase their understanding of the subject. It is assumed that the reader is not a mathematical specialist and is neither familiar with geometric algebra or its application to electromagnetic theory. The modern approach, geometric algebra, is the mathematical tool set we should all have started out with and once the reader has a grasp of the subject, he or she cannot fail to realize that traditional vector analysis is really awkward and even misleading by comparison. Professors can request a solutions manual by email: [email protected]




Vector and Geometric Calculus


Book Description

This textbook for the undergraduate vector calculus course presents a unified treatment of vector and geometric calculus. This is the printing of August 2022. The book is a sequel to the text Linear and Geometric Algebra by the same author. That text is a prerequisite for this one. Its web page is at faculty.luther.edu/ macdonal/laga. Linear algebra and vector calculus have provided the basic vocabulary of mathematics in dimensions greater than one for the past one hundred years. Just as geometric algebra generalizes linear algebra in powerful ways, geometric calculus generalizes vector calculus in powerful ways. Traditional vector calculus topics are covered, as they must be, since readers will encounter them in other texts and out in the world. Differential geometry is used today in many disciplines. A final chapter is devoted to it. Download the book's table of contents, preface, and index at the book's web site: faculty.luther.edu/ macdonal/vagc. From a review of Linear and Geometric Algebra: Alan Macdonald's text is an excellent resource if you are just beginning the study of geometric algebra and would like to learn or review traditional linear algebra in the process. The clarity and evenness of the writing, as well as the originality of presentation that is evident throughout this text, suggest that the author has been successful as a mathematics teacher in the undergraduate classroom. This carefully crafted text is ideal for anyone learning geometric algebra in relative isolation, which I suspect will be the case for many readers. -- Jeffrey Dunham, William R. Kenan Jr. Professor of Natural Sciences, Middlebury College