# Matlab Problem with Generating Barnsley Fern Fractal in MATLAB

Tags:
1. Sep 21, 2016

### Euler2718

The code is as followed:

Code (Matlab M):

function fern()

AI = [0  0 ; 0 0.16];

AII = [ 0.85  0.04 ; -0.04 -0.85 ] ;

AIII = [ 0.2  -0.26 ; 0.23 0.22 ] ;

AIV = [-0.15  0.28 ; 0.26 0.24 ];

BI = [ 0 ; 0];
BII = [ 0 ; 1.6];
BIII = [ 0 ; 1.6];
BIV = [0 ; 0.44];

N = 10000;
I = 50;

H = zeros(N,2);

for n=1 : N

x = rand;
y = rand;
T = [x;y];

for i=1 : I

p = rand;

if p < 0.01
%disp('Scheme 1')
S1x = AI*T + BI;
S1y = AI*T + BI;
x = S1x(1);
y = S1y(2);
elseif p < 0.08
%disp('Scheme 2')
S2x = AII*T + BII;
S2y = AII*T + BII;
x = S2x(1);
y = S2y(2);
elseif p < 0.15
%disp('Scheme 3')
S3x = AIII*T + BII;
S3y = AIII*T + BII;
x = S3x(1);
y = S3y(2);
else
%disp('Scheme 4')
S4x = AIV*T + BIV;
S4y = AIV*T + BIV;
x = S4x(1);
y = S4y(2);
end
H(n,1) = x;
H(n,2) = y;
end
end

X = H(:,1);
Y = H(:,2);
plot(X,Y,'.')
I have no idea why it isn't working. Is not the iterative process correct? I ran it once and got the picture below. I'm at the end of the road here, and on a deadline, any help would be appreciated.

Last edited by a moderator: Sep 23, 2016
2. Sep 23, 2016

### Staff: Mentor

3. Sep 24, 2016

### Image Analyst

How can I copy your code to MATLAB? When I simply copied and pasted, it put your whole program as one single line in MATLAB, then added a URL reference link below it.

4. Oct 3, 2016

### Staff: Mentor

Try copying to another editor that recognizes newline chars as line separators and will then save to the windows crlf format (carriage return/linefeed line terminator).

This is a common problem when moving text from unix to windows and vice versa (in which case you'll see every other line as a blank line)