diff --git a/is/mpi_session/Untitled.ipynb b/is/mpi_session/Untitled.ipynb new file mode 100644 index 0000000..5f593d2 --- /dev/null +++ b/is/mpi_session/Untitled.ipynb @@ -0,0 +1,34 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/mr/ub10/A2.m b/mr/ub10/A2.m new file mode 100644 index 0000000..7ab588c --- /dev/null +++ b/mr/ub10/A2.m @@ -0,0 +1,131 @@ +start=[3,7] +%start= [8,2] +goal=[8,8] + +d=[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1 + -1,-1,inf,inf,-1,inf,inf,inf,inf,-1 + -1,inf,inf,inf,-1,inf,inf,inf,inf,-1 + -1,inf,inf,inf,-1,-1,inf,inf,inf,-1 + -1,inf,-1,inf,inf,-1,-1,inf,-1,-1 + -1,inf,-1,inf,-1,-1,-1,inf,-1,-1 + -1,inf,-1,inf,inf,inf,inf,inf,inf,-1 + -1,inf,-1,inf,inf,inf,inf,inf,inf,-1 + -1,-1,-1,-1,-1,-1,-1,-1,-1,-1]; + +d(start(1),start(2))= 0; +d +%make d template to show changes +dvt= d; +for e= 1:size(d,1) + for f= 1:size(d,2) + if dvt(e,f)>-1 + dvt(e,f)= NaN; + end + end +end +dvt +d +changed = true; +s2= sqrt(2); +step=-1; +while changed + step=step+1 + changed= false; + dv= dvt; + for y = size(d,1)-1:-1:2%forward scan + for x = 2:size(d,2)-1 + if(d(y,x) >-1) + a=[d(y,x)]; + if(d(y,x-1) >-1) + a=[a d(y,x-1)+1]; + end + if(d(y,x+1) >-1) + a=[a d(y,x+1)+s2]; + end + if(d(y+1,x)>-1) + a=[a d(y+1,x)+1]; + end + if d(y+1,x-1) >-1 + a=[a d(y+1,x-1)+s2]; + end + + mi = min(a); + if(mi~=d(y,x)); + changed = true; + end + if(d(y,x)~=mi) + dv(y,x)=mi; + end + d(y,x) = mi; + + + end + end + end + forward=0 + d + dv + dv=dvt; + for y = 2:size(d,1)-1%backward scan + for x = size(d,2)-1:-1:2 + if(d(y,x) >-1) + a=[d(y,x)]; + if(d(y,x+1) >-1) + a=[a d(y,x+1)+1]; + end + if(d(y-1,x-1) >-1) + a=[a d(y-1,x-1)+s2]; + end + if(d(y-1,x)>-1) + a=[a d(y-1,x)+1]; + end + if d(y-1,x+1) >-1 + a=[a d(y-1,x+1)+s2]; + end + mi = min(a); + if(mi~=d(y,x)) + changed = true; + end + if(d(y,x)~=mi) + dv(y,x)=mi; + end + d(y,x) = mi; + + end + end + end + backward=0 + step + d + dv +end +%plot gradient +colormap(summer) +imagesc(d) + +%get gradient path. +cp= goal; +path =goal; + +while ~isequal(cp,start) + neighbours=[]; + for x = [cp(1)-1:cp(1)+1] + for y=[cp(2)-1:cp(2)+1] + if ~isequal([x,y],cp) && (d(x,y)>-1) + neighbours = cat(1,neighbours,[x,y]); + end + end + end + nv=[]; + for i = 1:size(neighbours,1) + yy=neighbours(i,:); + nv = [nv d(yy(1),yy(2))]; + end + [m,minindex] = min(nv); + m; + cp= neighbours(minindex,:); + path = cat(1,cp,path); +end +path + + diff --git a/mr/ub10/A4/gradientA.png b/mr/ub10/A4/gradientA.png new file mode 100644 index 0000000..26eb5f3 --- /dev/null +++ b/mr/ub10/A4/gradientA.png Binary files differ diff --git a/mr/ub10/A4/gradientB.png b/mr/ub10/A4/gradientB.png new file mode 100644 index 0000000..1556b73 --- /dev/null +++ b/mr/ub10/A4/gradientB.png Binary files differ diff --git a/mr/ub10/DTA.m b/mr/ub10/DTA.m new file mode 100644 index 0000000..de78d16 --- /dev/null +++ b/mr/ub10/DTA.m @@ -0,0 +1,82 @@ +function [ output_args ] = DTA(map,start,aim) +%UNTITLED4 Summary of this function goes here +% Detailed explanation goes here + +d=[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1 + -1,-1,inf,inf,-1,inf,inf,inf,inf,-1 + -1,inf,inf,inf,-1,inf,inf,inf,inf,-1 + -1,inf,inf,inf,-1,-1,inf,inf,inf,-1 + -1,inf,-1,inf,inf,-1,-1,inf,-1,-1 + -1,inf,-1,inf,-1,-1,-1,inf,-1,-1 + -1,inf,-1,inf,inf,inf,inf,inf,inf,-1 + -1,0,-1,inf,inf,inf,inf,inf,inf,-1 + -1,-1,-1,-1,-1,-1,-1,-1,-1,-1] +dvt= d + +changed = true; +s2= sqrt(2); +step=-1; +while changed + step=step+1 + changed= false; + for y = size(d,1)-1:-1:2 + for x = 2:size(d,2)-1 + x + y + d(y,x) + if(d(y,x) >-1) + a=[d(y,x)] + if(d(y,x-1) >-1) + a=[a d(y,x-1)+1]; + end + if(d(y,x+1) >-1) + a=[a d(y,x+1)+s2]; + end + if(d(y+1,x)>-1) + a=[a d(y+1,x)+1]; + end + if d(y+1,x-1) >-1 + a=[a d(y+1,x-1)+s2]; + end + mi = min(a); + if(mi~=d(y,x)); + changed = true; + end + d(y,x) = mi; + + end + end + end + forward=0 + d + for y = 2:size(d,1)-1 + for x = size(d,2)-1:-1:2 + if(d(y,x) >-1) + a=[d(y,x)]; + if(d(y,x+1) >-1) + a=[a d(y,x+1)+1]; + end + if(d(y-1,x-1) >-1) + a=[a d(y-1,x-1)+s2]; + end + if(d(y-1,x)>-1) + a=[a d(y-1,x)+1]; + end + if d(y-1,x+1) >-1 + a=[a d(y-1,x+1)+s2]; + end + mi = min(a); + if(mi~=d(y,x)) + changed = true; + end + d(y,x) = mi; + end + end + end + backward=0 + step + d +end + +end + diff --git a/mr/ub10/Sublime Text 2.0.2.dmg b/mr/ub10/Sublime Text 2.0.2.dmg new file mode 100644 index 0000000..0a894e9 --- /dev/null +++ b/mr/ub10/Sublime Text 2.0.2.dmg Binary files differ diff --git a/mr/ub10/untitled5.m b/mr/ub10/untitled5.m new file mode 100644 index 0000000..df48b26 --- /dev/null +++ b/mr/ub10/untitled5.m @@ -0,0 +1,10 @@ +a= [1,1] +b=[1,1] + +a~=b +a=[1 2 3 + 4 5 6 + 7 8 9 +] +colormap(summer) +imagesc( a )