Direkt zum Hauptbereich

Mandelbrot Set drawn by a Turing Machine

Abstract

the Mandelbrot set is the set of values of c in the complex plane for which the orbit of 0 under iteration of the complex quadratic polynomial z_(n+1)=z_n^2+c remains bounded.

That is, a complex number c is part of the Mandelbrot set if, when starting with z0 = 0 and applying the iteration repeatedly, the absolute value of zn remains bounded however large n gets. 

Screenshots

The Turing Machine runs around the Mandelbrot Set

The Mandelbrot Set completed
a click into the Mandelbrot Set draws the Julia Set

a click into the Mandelbrot Set draws the Julia Set

Running the Java Application

git clone https://github.com/phasenraum2010/mandelbrot.git
cd mandelbrot
mvn clean install exec:java

or Download the jar and double click on it to start the Application:
http://www.thomas-woehlke.de/a/mandelbrot/mandelbrot-1.1-SNAPSHOT.jar

Running the JavaScript Application

goto: http://woehlke.org/html5-lab/mandelbrot/

The Turing Machine to Compute the Mandelbrot Set

The Complex Number Plane is divided into Cells for the two dimensional Tape of the Turing-Machine.

Starting with Complex Number of Cell right from the Mandelbrot Set the Turing Machine goes one Step to the left and computes, wether the Complex Number of the Cell is inside the Set. If not, it continues to go left.

The Turing-Machine then goes around the Set by computing wether the Complex Number of the Cell is inside the Set. If not it turns left, else it turns right. After that it goes one step forward.

After the Turing Machine finished to run around the Set, the Application paints the Inside of the Set Black und computes the Colors of the Outside.

Julia Set

The Mandelbrot Set is drawn into the Complex Number Plane and so clicking into it, it delivers the Complex Number to calculate a Julia Set for it.

The most beautiful Julia Sets are drawn by clicking into the Border of the Mandelbrot Set.

More

Kommentare

Beliebte Posts aus diesem Blog

Java EE 7 Petclinic

A Java EE 7 Version of Spring Petclinic.

Depending on JSF and EJB and ready to run on JBoss WildFly and Oracle Glassfish.

You find a running Version with WildFly on OpenShift, the RedHat Cloud:
http://javaee7petclinic-port80guru.rhcloud.com

Source Code ist hosted on Github:
https://github.com/phasenraum2010/javaee7-petclinic

The Domain Modell  contains all basic Relationships between Entities like OneToMany, ManyToOne and also ManyToMany:


Pageflow  is complex enough to be interesting for Functional Tests with Selenium2 Webdriver, Arquillian Drone and Graphene:


Use Cases


Some Example Screen Shots






install JBoss Wildfly install JBoss Wildfly 8.0.0.Final from http://wildfly.org/downloads/
to e.g. /Users/tw/srv/wildfly-8.0.0.Final/

start JBoss by: cd /Users/tw/srv/wildfly-8.0.0.Final/bin ; ./standalone.sh
install Glassfish 4 I installed Netbeans 7.4 with Glassfish 4.0 from https://netbeans.org/downloads/
starting on Mac OSX:
cd /Applications/NetBeans/glassfish-4.0/bin/
./asadmin start-data…

MySQL DataSource for Wildfly10 like Openshift

how to configure Wildfly10 to have a DataSource for MySQL like Openshift the RedHat Cloud.

I installed Wildfly10 on ~/srv/wildfly-10.0.0.Final

Step 1: Add MySQL Driver to modules:

Download the mysql-driver mysql-connector-java-5.1.38.jar from any Maven Repository e.g.: http://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.38/

go to WildFly modules Directory:
cd wildfly-10.0.0.Final/modules/system/layers/base
mkdir -p mysql/mysql-connector-java/main

copy  mysql-driver mysql-connector-java-5.1.38.jar here.

add a file module.xml with content:

<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.1" 
        name="mysql.mysql-connector-java">
    <resources>
        <resource-root path="mysql-connector-java-5.1.38.jar"/>
        <!-- Insert resources here -->
    </resources>
    <dependencies>
        <module name="javax.api"/>
        <module name="javax.tr…

MySQL as Default Database in WildFly 8.0.0.CR1

How to  replac the H2 Database for Default DataSource in JBoss WildFly 8.0.0.CR1:

Step 1: Add MySQL Driver to modules:

Download the mysql-driver mysql-connector-java-5.1.22.jar from any Maven Repository e.g.: http://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.22/

go to WildFly modules Directory:
cd wildfly-8.0.0.CR1/modules/system/layers/base
mkdir -p mysql/mysql-connector-java/main

copy  mysql-driver mysql-connector-java-5.1.22.jar here.

add a file module.xml with content:

<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.1" 
        name="mysql.mysql-connector-java">
    <resources>
        <resource-root path="mysql-connector-java-5.1.22.jar"/>
        <!-- Insert resources here -->
    </resources>
    <dependencies>
        <module name="javax.api"/>
        <module name="javax.transaction.api"/>
        <module name="javax.serv…