Search Constraints
Number of results to display per page
Results for:
Affiliation
Franklin W. Olin College of Engineering
Remove constraint Affiliation: Franklin W. Olin College of Engineering
1  9 of 9
Search Results

ebook
Most books that use MATLAB are aimed at readers who know how to program. This book is for people who have never programmed before. As a result, the order of presentation is unusual. The book starts with scalar values and works up to vectors and matrices very gradually. This approach is good for beginning programmers, because it is hard to understand composite objects until you understand basic programming semantics. But there are problems: The MATLAB documentation is written in terms of matrices, and so are the error messages. To mitigate this problem, the book explains the necessary vocabulary early and deciphers some of the messages that beginners find confusing. Many of the examples in the first half of the book are nonstandard MATLAB. I address this problem in the second half by translating the examples into a more idiomatic style. The book puts a lot of emphasis on functions, in part because they are an important tool for controlling program complexity, and also because they are useful for working with MATLAB tools like fzero and ode45. I assume that readers know calculus, differential equations, and physics, but not linear algebra. I explain the math as I go along, but the descriptions might not be enough for someone who hasn't seen the material before. There are small exercises within each chapter, and a few larger exercises at the end of some chapters.

ebook
How to Think Like a Computer Scientist: Learning with Pythonis an introduction to programming using Python.
 Subjects:
 Computing
 Keywords:
 Computer programming Programming languages (Electronic computers) Textbooks Python (Computer program language)
 Resource Type:
 ebook

ebook
Think DSP is an introduction to Digital Signal Processing in Python. The premise of this book (and the other books in the Think X series) is that if you know how to program, you can use that skill to learn other things. The author is writing this book because he thinks the conventional approach to digital signal processing is backward: most books (and the classes that use them) present the material bottomup, starting with mathematical abstractions like phasors.
 Subjects:
 Electrical Engineering and Computing
 Keywords:
 Signal processing  Digital techniques  Data processing Python (Computer program language) Textbooks
 Resource Type:
 ebook

ebook
This book is about complexity science, data structures and algorithms, intermediate programming in Python, and the philosophy of science: Data structures and algorithms: A data structure is a collection that contains data elements organized in a way that supports particular operations. For example, a dictionary organizes keyvalue pairs in a way that provides fast mapping from keys to values, but mapping from values to keys is generally slower. An algorithm is a mechanical process for performing a computation. Designing efficient programs often involves the coevolution of data structures and the algorithms that use them. For example, the first few chapters are about graphs, a data structure that is a good implementation of a graphnested dictionariesand several graph algorithms that use this data structure. Python programming: This book picks up where Think Python leaves off. I assume that you have read that book or have equivalent knowledge of Python. As always, I will try to emphasize fundmental ideas that apply to programming in many languages, but along the way you will learn some useful features that are specific to Python. Computational modeling: A model is a simplified description of a system that is useful for simulation or analysis. Computational models are designed to take advantage of cheap, fast computation. Philosophy of science: The models and results in this book raise a number of questions relevant to the philosophy of science, including the nature of scientific laws, theory choice, realism and instrumentalism, holism and reductionism, and Bayesian epistemology. This book focuses on discrete models, which include graphs, cellular automata, and agentbased models. They are often characterized by structure, rules and transitions rather than by equations. They tend to be more abstract than continuous models; in some cases there is no direct correspondence between the model and a physical system. Complexity science is an interdisciplinary fieldat the intersection of mathematics, computer science and physicsthat focuses on these kinds of models. That's what this book is about.
 Subjects:
 Computing
 Keywords:
 Computational complexity Python (Computer program language) Textbooks
 Resource Type:
 ebook

ebook
Think Bayes is an introduction to Bayesian statistics using computational methods. The premise of this book, and the other books in the Think X series, is that if you know how to program, you can use that skill to learn other topics. Most books on Bayesian statistics use mathematical notation and present ideas in terms of mathematical concepts like calculus. This book uses Python code instead of math, and discrete approximations instead of continuous mathematics. As a result, what would be an integral in a math book becomes a summation, and most operations on probability distributions are simple loops. I think this presentation is easier to understand, at least for people with programming skills. It is also more general, because when we make modeling decisions, we can choose the most appropriate model without worrying too much about whether the model lends itself to conventional analysis. Also, it provides a smooth development path from simple examples to realworld problems.
 Subjects:
 Computing and Mathematics and Statistics
 Keywords:
 Bayesian statistical decision theory Python (Computer program language) Textbooks
 Resource Type:
 ebook

ebook
Think Stats is an introduction to Probability and Statistics for Python programmers. Think Stats emphasizes simple techniques you can use to explore real data sets and answer interesting questions. The book presents a case study using data from the National Institutes of Health. Readers are encouraged to work on a project with real datasets. If you have basic skills in Python, you can use them to learn concepts in probability and statistics. Think Stats is based on a Python library for probability distributions (PMFs and CDFs). Many of the exercises use short programs to run experiments and help readers develop understanding.
 Subjects:
 Computing and Mathematics and Statistics
 Keywords:
 Textbooks Statistics  Computer programs
 Resource Type:
 ebook

ebook
Think Java is a handson introduction to computer science and programming used by many universities and high schools around the world. Its conciseness, emphasis on vocabulary, and informal tone make it particularly appealing for readers with little or no experience. The book starts with the most basic programming concepts and gradually works its way to advanced objectoriented techniques. In this fully updated and expanded edition, authors Allen Downey and Chris Mayfield introduce programming as a means for solving interesting problems. Each chapter presents material for one week of a college course and includes exercises to help you practice what you’ve learned. Along the way, you’ll see nearly every topic required for the AP Computer Science A exam and Java SE Programmer I certification.
 Subjects:
 Computing
 Keywords:
 Java (Computer program language) Computer programming Programming languages (Electronic computers) Textbooks
 Resource Type:
 ebook

ebook
The Little Book of Semaphores is a free (in both senses of the word) textbook that introduces the principles of synchronization for concurrent programming. In most computer science curricula, synchronization is a module in an Operating Systems class. OS textbooks present a standard set of problems with a standard set of solutions, but most students don't get a good understanding of the material or the ability to solve similar problems. The approach of this book is to identify patterns that are useful for a variety of synchronization problems and then show how they can be assembled into solutions. After each problem, the book offers a hint before showing a solution, giving students a better chance of discovering solutions on their own. The book covers the classical problems, including "Readerswriters," "Producerconsumer", and "Dining Philosophers." In addition, it collects a number of notsoclassical problems, some written by the author and some by other teachers and textbook writers. Readers are invited to create and submit new problems.
 Subjects:
 Computing
 Keywords:
 Computer programming Operating systems (Computers) Textbooks
 Resource Type:
 ebook

ebook
Think Python is a concise introduction to software design using the Python programming language. Intended for people with no programming experience, this book starts with the most basic concepts and gradually adds new material. Some of the ideas students find most challenging, like recursion and objectoriented programming, are divided into a sequence of smaller steps and introduced over the course of several chapters. This textbook has been used in classes atBard College,Olin College of Engineering, University of California, Santa Barbara, University of Maine, University of Northern Colorado.
 Subjects:
 Computing
 Keywords:
 Computer programming Python (Computer program language) Textbooks Programming languages (Electronic computers)
 Resource Type:
 ebook