patch programming

Science zone

Dr Darren of Webel originally trained as a computational physicist and applied mathematician, performed research from 1988 to 1993 in radio astronomy and astrophysics, and worked as a scientific computing expert and particle accelerator physicist from 1993 to 1999, as well as working on numerous science and education projects after establishing the Webel IT Australia Scientific IT Consultancy in 2000. You can find out more about his science career at: Dr Darren Kelly's full-career Curriculum Vitae.

From Wikipedia: Computational Physics (Aug 2016):

Computational physics is the study and implementation of numerical analysis to solve problems in physics for which a quantitative theory already exists. Historically, computational physics was the first application of modern computers in science, and is now a subset of computational science.

It is sometimes regarded as a subdiscipline (or offshoot) of theoretical physics, but others consider it an intermediate branch between theoretical and experimental physics, a third way that supplements theory and experiment.

This zone features various (mostly archival and historical) science projects, many of which demonstrate applications of the model-based software engineering and systems engineering technologies promoted on this site and offered as Webel services.

HERA particle accelerator: electron Beam Loss Monitor lifetime disruption plots
Example of numerical integation and visualisation of a differential equation in the Maple symbolic algebra system
Maple 3d plot animation example
Maple example: symbolic algebra equation and numerical solution
HERA particle accelerator: custom data analysis application
CT scan slice: visualisation example: 1
CT scan slice: visualisation example: 2
MOST radiotelescope: Java3D animation: steering (9.8M)
Figure 2: A diagram of MOST with the numbering system used in this  thesis report (1988)
Figure 3: MOST radiotelescope: A diagram of the coordinate system used in the report (1988)
Figure 10: the MOST radiotelescope synthesised beam
Figure 1: MOST radiotelescope "skymap" from observation of a strong point source at field centre
Figure 11: Model: UML2 composite structure diagram of the monochromator assembly
Figure 09: Model: bunker shield assembly for the Platypus reflectometer as "wrapped block" class diagram.
Figure 10: Model: UML2 composite structure diagram for the monochromation beam stage of the neutron diffractometers of the OPAL NBIs.
Figure 12: Model: UML2 composite structure diagram of the monochromator stage assembly with motorised goniometer rotation, tilt, and translation stages, which are driven by encoded devices.
Figure 13: Model: wrapped block class diagram (software engineering view) for the entire monochromation beam ("logical") stage.

Contents of: Science zone



Opens a GEM window for the Drancel RGB monitors.

I have tuned the size to work well on a data projector display at 1280x960 (the Mac OS X reference in the patch is irrelevant). I usually have the PureData audio synthesis control patches on the main display of a MacBook Pro, and the GEM visuals projected on a 2nd display.



The 1st-level virtual instrument user interface for the system. It is just enough to manage a few fundamental Drancing operations modes, to manage conditioning and control of 2 Drancel virtual 3D synthesis atoms (fed here by 2 Wiimotes), as well as offering some global controls, some output filters, some monitors, and a simple recording system. (It also fits nicely into a 1280x960 screencast when combined with Drancel monitor visuals side-by-side.)

It looks of course almost exactly like the 0th-level "wrapper" for the skin, except it shows the (rather tedious) connections, and some initialisations, as well as some OSC dump feeds from specific ports "pragmatically hardwired" into A0.pd (5600) and A1.pd (5602) (yes, this is indeed a rapid prototype).

SysML and UML abstractions (used as typed parts with ports) are so much easier to model, diagram, and connect up than this. I am working on forward-engineering from SysML tools to PureData and also $jsyn_$, i.e. SysML tools becomes a real-time synthesis patch editors !



Here the (X,Y,Z) signals are stereo panned, so that an entire Drancel is panned. This works well if an accelerometer is worn on the left/right hands/feet of a performer.



A Drancel is the virtual synthesis 3D "atom" of the Drancing accelerometer music system (where "music" means here both real-time sound and light synthesis).

A Drancel is designed to work with ANY triaxial accelerometer (of which the WiiTM Remote is a convenient example, thanks to its leverage of Bluetooth™ wireless technology).

It is the calibrated, conditioned, "homed", virtual Drancel that is considered to synthesise, not the triaxial accelerometer, which is merely a source of (X,Y,Z) acceleration signals that are mapped to synthesis channel triads and (R,G,B) (or other) light components.

A Drancel RGB (drancing light element) is to Drancing synthesis what a "pixel" (picture element) is to a picture.

Imagine hundreds of "Drancers" (Drancing performers), each with 5 Drancel RGB units, each synthesising sound and light, and you get the picture ! Can you hear it ? Can you see it ? That's the Drancing vision !

Drancels can act as independent synthesis units or they can be combined (multiplexed) to create arbitrarily complex syntheses. In this PureData prototype there are, however, only 2 Drancels, for 2 hand-held $Wiimotes$ as wireless accelerometer sources. (The original Drancing accelerometer suit (since 1997) had 5 triaxial accelerometers in a "body star" pattern.)

Currently the PureData synthesis prototype offers the following elementary synthesis units:

  • AM: modulation of the amplitudes of a triad of "fixed-frequency" oscillators,
    which frequencies can be set by the user using the sliders.
  • VFO: variable frequency oscillators: the user can set the scale of frequency driving, a frequency offset, the overall gain of the oscillations, and whether or not the frequencies are discretised to lock-on to MIDI note frequencies (as opposed to arbitrarily fine continjous frequency variation).
  • Drums: simple sample drums (I currently use the free AudioPervert CR-78 drum samples) which will probably be replaced soon with completely synthetic PureData drums.



Not pretty, and not as flexible as a generative programming approach. It's just enough to separate the set of chosen samples (visit DrumSamples.pd) from the playing via triggers and/or radio buttons. It's a rapid prototype after all !

Syndicate content