-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathGPU Fractal Explorer.prj
152 lines (147 loc) · 6.76 KB
/
GPU Fractal Explorer.prj
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
<deployment-project plugin="plugin.apptool" plugin-version="1.0">
<configuration build-checksum="2551556181" file="/home/btordoff/matlab/FileExchangeSubmissions/GPU-Fractal-Explorer/GPU Fractal Explorer.prj" location="/home/btordoff/matlab/FileExchangeSubmissions/GPU-Fractal-Explorer" name="GPU Fractal Explorer" target="target.mlapps" target-name="Package App">
<param.appname>GPU Fractal Explorer</param.appname>
<param.authnamewatermark>Ben Tordoff</param.authnamewatermark>
<param.email>[email protected]</param.email>
<param.company>MathWorks</param.company>
<param.icon>${PROJECT_ROOT}/GPU Fractal Explorer_resources/icon_24.png</param.icon>
<param.icons>
<file>${PROJECT_ROOT}/GPU Fractal Explorer_resources/icon_48.png</file>
<file>${PROJECT_ROOT}/GPU Fractal Explorer_resources/icon_24.png</file>
<file>${PROJECT_ROOT}/GPU Fractal Explorer_resources/icon_16.png</file>
</param.icons>
<param.summary>Explore several fractals using MATLAB and an NVIDIA GPU</param.summary>
<param.description>This application allows you to explore several different fractals in MATLAB with the help of a capable NVIDIA GPU. It was inspired by Cleve Moler's article <a href="https://www.mathworks.com/company/newsletters/articles/gpu-enables-obsession-with-fractals.html">GPU Enables Obsession with Fractals</a>, where each fractal has the common pattern that every location (i.e. pixel in the resulting image) can be calculated independently. This makes them trivially parallel and eminently suitable for acceleration on a GPU using the <a href="https://www.mathworks.com/help/parallel-computing/gpuarray.arrayfun.html">gpuArray/arrayfun</a> feature.
The following fractals are included:
1. Burning Ship: Mandelbrot-like iteration with update function (|Re(z)|+i|Im(z)|)^2
2. Mandelbrot: The classic Mandelbrot set
3. Mandelbar: A Mandelbrot variant using a conjugating update
4. Mandelbrot 11: A Mandelbrot variant using ^11 instead of ^2.
5. Newton's Method (cubic): Iterations to convergence of Newton's method for the function x.^3 - 2.*x - 5
6. Newton's Method (trig): Iterations to convergence of Newton's method for the function tan(sin(x)) - sin(tan(x))
7. Tower of Powers: Cycle count for y(k+1) = z^y(k)
This app is provided purely for your entertainment, but has the following features:
* Use the normal MATLAB zoom and pan to browse each fractal
* Quickly switch between fractals
* Sit back and watch the app pan and zoom between pre-stored locations for each fractal
* Add your own locations to the animation lists
You might also be interested in my other GPU fractal apps:
* <a href="https://www.mathworks.com/matlabcentral/fileexchange/30988-a-gpu-mandelbrot-set">A GPU Mandelbrot Set</a>
* <a href="https://www.mathworks.com/matlabcentral/fileexchange/33201-gpu-julia-set-explorer">GPU Julia Set Explorer</a></param.description>
<param.screenshot />
<param.version>1.0</param.version>
<param.products.name>
<item>Parallel Computing Toolbox</item>
</param.products.name>
<param.products.id>
<item>-1</item>
</param.products.id>
<param.products.version>
<item>-1</item>
</param.products.version>
<param.platforms />
<param.output>${PROJECT_ROOT}</param.output>
<param.guid>3699e83d-6db1-4782-b202-cf1f4cb48a84</param.guid>
<unset>
<param.screenshot />
<param.version />
<param.platforms />
<param.output />
</unset>
<fileset.main>
<file>${PROJECT_ROOT}/fractalExplorer.m</file>
</fileset.main>
<fileset.depfun>
<file>${PROJECT_ROOT}/computeBurningShipCPU.m</file>
<file>${PROJECT_ROOT}/computeBurningShipGPU.m</file>
<file>${PROJECT_ROOT}/computeMandelbarCPU.m</file>
<file>${PROJECT_ROOT}/computeMandelbarGPU.m</file>
<file>${PROJECT_ROOT}/computeMandelbrotCPU.m</file>
<file>${PROJECT_ROOT}/computeMandelbrotGPU.m</file>
<file>${PROJECT_ROOT}/computeMultibrotCPU.m</file>
<file>${PROJECT_ROOT}/computeMultibrotGPU.m</file>
<file>${PROJECT_ROOT}/computeNewtonCubicCPU.m</file>
<file>${PROJECT_ROOT}/computeNewtonCubicGPU.m</file>
<file>${PROJECT_ROOT}/computeNewtonTrigCPU.m</file>
<file>${PROJECT_ROOT}/computeNewtonTrigGPU.m</file>
<file>${PROJECT_ROOT}/computeTowerCPU.m</file>
<file>${PROJECT_ROOT}/computeTowerGPU.m</file>
<file>${PROJECT_ROOT}/defineFractals.m</file>
</fileset.depfun>
<fileset.resources>
<file>${PROJECT_ROOT}/+colormap</file>
<file>${PROJECT_ROOT}/README.md</file>
<file>${PROJECT_ROOT}/SECURITY.md</file>
<file>${PROJECT_ROOT}/icons</file>
<file>${PROJECT_ROOT}/license.txt</file>
<file>${PROJECT_ROOT}/locations</file>
</fileset.resources>
<fileset.package />
<build-deliverables>
<file location="/home/btordoff/matlab/FileExchangeSubmissions" name="GPU-Fractal-Explorer" optional="false">/home/btordoff/matlab/FileExchangeSubmissions/GPU-Fractal-Explorer</file>
</build-deliverables>
<workflow />
<matlab>
<root>/mathworks/UK/devel/archive/R2020b/perfect/matlab</root>
<toolboxes>
<toolbox name="matlabcoder" />
<toolbox name="embeddedcoder" />
<toolbox name="gpucoder" />
<toolbox name="fixedpoint" />
<toolbox name="matlabhdlcoder" />
<toolbox name="neuralnetwork" />
<toolbox name="polyspacebugfinder" />
</toolboxes>
<toolbox>
<matlabcoder>
<enabled>true</enabled>
</matlabcoder>
</toolbox>
<toolbox>
<embeddedcoder>
<enabled>true</enabled>
</embeddedcoder>
</toolbox>
<toolbox>
<gpucoder>
<enabled>true</enabled>
</gpucoder>
</toolbox>
<toolbox>
<fixedpoint>
<enabled>true</enabled>
</fixedpoint>
</toolbox>
<toolbox>
<matlabhdlcoder>
<enabled>true</enabled>
</matlabhdlcoder>
</toolbox>
<toolbox>
<neuralnetwork>
<enabled>true</enabled>
</neuralnetwork>
</toolbox>
<toolbox>
<polyspacebugfinder>
<enabled>true</enabled>
</polyspacebugfinder>
</toolbox>
</matlab>
<platform>
<unix>true</unix>
<mac>false</mac>
<windows>false</windows>
<win2k>false</win2k>
<winxp>false</winxp>
<vista>false</vista>
<linux>true</linux>
<solaris>false</solaris>
<osver>4.19.0-13-amd64</osver>
<os32>false</os32>
<os64>true</os64>
<arch>glnxa64</arch>
<matlab>true</matlab>
</platform>
</configuration>
</deployment-project>