Language

Category

# Java for Scientific Computing

5.00 (4 reviews)

Students

Content

Last Update
Regular Price

## Topics

SKILLSHARE
30-DAY FREE TRIAL

## What you will learn

Using java for solving scientific problems (engineering, physics, etc.)

## Description

Whether you are an experienced java developer or a high-school or college student, if you are a java enthusiast then this course is for you. This course will equip you with an in-depth understanding of the fundamental concepts of scientific computing such as optimization, finding roots, and solving differential equations. The lectures and the accompanying powerpoint slides are designed and prepared with the utmost quality.

## Content

Introduction

Introduction

Overview

java.lang.Math class

Expression Evaluation

Exp4j Library

Custom Functions & Operators

Example1: Computation Time of Expressions

Example2: GUI for Expression Evaluation

Examining the Bytecodes

Example: Vectors

Symbolic Functions

Abstract Symbolic Function

Create the Function Space

Composition of Functions

Addition, Subtraction, Multiplication, and Division of Symbolic Functions

String Representation of Symbolic Functions

Complex Numbers

Implementing Complex Numbers

Polynomials

Polynomial Class and String Representation

Algebraic Operations on Polynomials

Operator Overloading for Polynomials & Other Polynomial Libraries

Polynomial Division

Sequences and Series

Basics of Sequences & Java implementation

Basics of Series & Java implementation

Numerical Test of Convergence

Taylor Expansion and Taylor Series

Sequence Transformations & Convergence Acceleration -- Part 1

Sequence Transformations & Convergence Acceleration -- Part 2

Sequence Transformations & Convergence Acceleration -- Part 3

Operations on Sequences and Series

Example of Series: Perturbation Theory

Application of Sequence Transformations: Romberg Integration

Rate and Order of Convergence

Radius of Convergence of Power Series

Review of Sequences and Series

Root Finding Algorithms

Fundamental Lemma of Root Bracketing

Bi-section Method

Finding All the Roots in an Interval

Tri-section Method

Secant Method & Brent Method

Improved Secant Method

Newton-Raphson Method -- Part 1

Newton-Raphson Method -- Part 2

Comparison of All the Root Finding Methods

Other Root Finding Libraries

Particle Swarm Optimization

Introduction to Particle Swarm Optimization

Java Implementation of Particle Swarm Optimization

Examples of Particle Swarm Optimization

Finding Roots of an Equation using Particle Swarm Optimization

Bounded Particle Swarm Optimization

Solving Ineqalities with Particle Swarm Optimization

Constructor Visualization

Visualization of Java Code

Numerical Integration

Forward, Backward, and Center Rectangle Method

Trapezoid Method

Java Implementation of Trapezoid Method

Simpson's Method & Recursive Integration

Legendre Polynomials

Java Implementation of Gauss-Legendre Method

2D Integration

3D Integration

Memoization of Integration

Example of Memoization

Other Integral Libraries

Richardson Extrapolation

The Basic Idea of Richardson Extrapolation

Java Implementation of Richardson Extrapolation

Solving Ordinary Differential Equations

Forward Euler Method -- Part 1

Forward Euler Method -- Part 2

Midpoint Method

Runge-Kutta Method

Solving a System of Ordinary Differential Equations

Examples of Solving a System of ODEs

ODEs of Complex Functions

Systems of ODEs of Complex Functions

Steady-State Solutions of ODE Systems

General Runge-Kutta Family for Solving ODEs

Boundary Value Problems for ODEs and the Shooting Method

Implicit (Backward) Euler Method for Solving ODEs

Finite Difference Method -- Part 1

Finite Difference Method -- Part 2

Special Functions

Bessel Function of the First Kind: Integral Formula for Integer Index

Bessel Function of the First Kind: Integral Formula for Non-integer Index

Bessel Function of the First Kind: Complex Arguments

Bessel Function of the First Kind: Small-Argument Expansion

Gamma Function

Bessel Function of the First Kind: Large-Argument Expansion

Bessel Function of the Second Kind (Neumann) & Hankel Functions

Derivatives of Bessel and Hankel Functions

Digamma Function

Beta Function

Error Function

Family of Error Functions

Other Error Function Libraries

Modified Bessel Function of the First Kind: Iv(x)

Modified Bessel Function of the Second Kind: Kv(x)

Spherical Bessel Functions

Airy Functions -- Part 1

Airy Functions -- Part 2

Struve Functions

Java Native Interface (JNI)

Introduction to Java Native Interface (JNI)

A Simple Example of Java/C++ Native Library Binding

A closer look at the JNI

Setting up JNI in Eclipse IDE -- Part 1

Setting up JNI in Eclipse IDE -- Part 2

Exporting Java Project to jar File With Dynamic Libraries

Configuring JNI in Eclipse IDE for JDK 9 or Later

Overriding Native Methods

Signature of Overloaded Native Methods in C++

Order of Execution for Static Initializers in the Class Hierarchy

Working with JNI Primitive Types

Working with JNI Primitive Arrays

Working with JNI Object Arrays

Using GNU Scientific Library

## Reviews

A
Ashkan14 June 2020

i have worked with java for 20 years, but not in the scientific area. So this is a course i have been waiting for for a long time. Merci Mohandez

Udemy ID

## 12/7/2019

Course created date

## 5/19/2021

Course Indexed date
Bot
Course Submitted by