Resonator2D:
Filter:
PMLib/Classes (extension) | Physical Modelling | Sound Synthesis

Resonator2D
ExtensionExtension

describes the physical properties of a linear two-dimensional resonator with stiffness and loss

Description

Resonator2D describes a two-dimensional resonator. If gamma is zero and kappa is non-zero it describes a thin, linear plate with frequency dependent and independent loss. If gamma is non-zero and kappa is zero or relatively small it describes a membrane with stiffness and frequency dependent and independent loss.

Class Methods

.new

Create a new instance of Resonator2D.

Arguments:

gamma

A SimpleNumber denoting the spatially scaled wavespeed.

WARNING: Note that it is generally not adviced to use very small, non-zero values for gamma as the smaller the value for gamma, the larger the number of modes will be. As a consequence, the calculation time might increase significantly and in the worst case either Python or SuperCollider will choke on the amount of data it needs to process resulting in no modal data at all. A zero value for gamma is perfectly fine though, provided that kappa is non-zero and relatively large (e.g. kappa > 10).
kappa

A SimpleNumber denoting a spatially scaled stiffness parameter.

b1

A SimpleNumber denoting a frequency independent damping constant.

b2

A SimpleNumber denoting a frequency dependent damping constant.

boundaryCond

A Symbol denoting a valid 2D boundary condition.

epsilon

A SimpleNumber denoting the aspect ratio: Lx/Ly of the rectangular domain.

Returns:

A new instance of Resonator2D.

.validBoundaryConds

Get an overview of all valid 2D boundary condition combinations.

Returns:

An immutable Array of valid 2D boundary conditions.

Instance Methods

.jsonString

Generate a json representation of a Resonator2D object instance.

Returns:

A String representing the resonator object in json format.

Examples