Skip to content

Latest commit

 

History

History
50 lines (34 loc) · 1.69 KB

README.md

File metadata and controls

50 lines (34 loc) · 1.69 KB

BEAST

Boundary Element Analysis and Simulation Toolkit

Build Status Coverage Status codecov.io Documentation

Introduction

This package contains common basis functions and assembly routines for the implementation of boundary element methods. Examples are included for the 2D and 3D Helmholtz equations and for the 3D Maxwell equations.

Support for the space-time Galerkin based solution of time domain integral equations is in place for the 3D Helmholtz and Maxwell equations.

Installation

Installation is done simply by cloning this repo from within Julia (v0.6):

  • Pkg.clone("https://github.com/krcools/BEAST.jl")

Prequisite packages will be pulled in automatically. In addition, some functionality requires gmsh to be installed and on the system path.

Hello World

To solve scattering by a time harmonic electromagnetic plane wave by a perfectly conducting sphere:

using CompScienceMeshes, BEAST
o, x, y, z = euclidianbasis(3)

Γ = meshsphere(1.0, 0.35)
RT = raviartthomas(Γ)

κ = 1.0
t = Maxwell3D.singlelayer(gamma=im*κ)
E = Maxwell3D.planewave(direction=z, polarization=x, wavenumber=κ)
e = (n × E) × n

@hilbertspace j
@hilbertspace k
efie = @discretise t[k,j]==e[k]  jRT kRT

u = gmres(efie)