#!/usr/bin/perl

$damp = 0.85;
$a = $b = $c = $d = $e = 0;
$f = 1; # We'll give the external site an "average" pagerank
$iterate = 40; # loop 40 times

# Looping with extras
# forward links
# a -> b	- 1 outgoing link	- home
# b -> c	- 1 outgoing link	- about
# c -> d,e	- 2 outgoing links	- products
# d -> a	- 1 outgoing links	- more info
# e         - nothing           - site B
# f -> a    - 1 outgoing link   - exclusive link!

# i.e. "backward" links (what's pointing to me?)
# a <= d,f
# b <= a
# c <= b
# d <= c/2
# e <= c/2
# f <= we're going to assume it has enough incoming links to maintain a PR of 1.
while ($iterate--) {
	printf("a: %.5f b: %.5f c: %.5f d: %.5f e: %.5f f: %.5f\n", $a, $b, $c, $d, $e, $f);

	$a = 1 - $damp + $damp * ($d + $f);
	$b = 1 - $damp + $damp * ($a);
	$c = 1 - $damp + $damp * ($b);
	$d = 1 - $damp + $damp * ($c/2);
	$e = 1 - $damp + $damp * ($c/2);
	$f = 1; # this site has average SEO
}

Outputs

a: 0.00000 b: 0.00000 c: 0.00000 d: 0.00000 e: 0.00000 f: 1.00000
a: 1.00000 b: 1.00000 c: 1.00000 d: 0.57500 e: 0.57500 f: 1.00000
a: 1.48875 b: 1.41544 c: 1.35312 d: 0.72508 e: 0.72508 f: 1.00000
a: 1.61632 b: 1.52387 c: 1.44529 d: 0.76425 e: 0.76425 f: 1.00000
a: 1.64961 b: 1.55217 c: 1.46934 d: 0.77447 e: 0.77447 f: 1.00000
a: 1.65830 b: 1.55956 c: 1.47562 d: 0.77714 e: 0.77714 f: 1.00000
a: 1.66057 b: 1.56148 c: 1.47726 d: 0.77784 e: 0.77784 f: 1.00000
a: 1.66116 b: 1.56199 c: 1.47769 d: 0.77802 e: 0.77802 f: 1.00000
a: 1.66131 b: 1.56212 c: 1.47780 d: 0.77807 e: 0.77807 f: 1.00000
a: 1.66136 b: 1.56215 c: 1.47783 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000
a: 1.66137 b: 1.56216 c: 1.47784 d: 0.77808 e: 0.77808 f: 1.00000

This page and its contents are copyright © 2024, Ian Rogers. Theme derived from Prav