-
Notifications
You must be signed in to change notification settings - Fork 0
/
2012-04-20.txt
269 lines (190 loc) · 7.26 KB
/
2012-04-20.txt
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
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
2012-04-20
09:45
schema di rappresentazione
corrispondenza tra spazio dei modelli matematici M e spazio di rappresentazioni simboliche R
seguendo una certa sintassi di generazione S
D dominio dello schema: sottoins di M, modelli che lo schema può rappresentare
V insieme di validità: in corrispondenza con gli oggetti significativi contenuti in D
S
D c M --> V c R
c: contenuto in
esistono varie classi di schemi di rappresentazione
le più importanti:
- schemi decompositivi
oggetto rappresentato da unione di componenti. la loro intersez, a coppie, è vuoto o è il bordo di entrambi
es. di rappresentazione decompositiva:
classi usate in Plasm: Topology, Pointset, Simplicial Complex (coppia di Topology e Pointset)
non si presta a rappresentare modelli di enormi dimensioni (QUESTO è IL NOSTRO OBIETTIVO!)
- schemi al contorno
tipo di schema di rappresentazione che rappresenta il solido attraverso il suo bordo (orientabile).
il bordo chiuso (che non ha a sua volta bordo) permette di determinare un interno e un esterno
f caratteristica di A*: X(A*B)
X(A*B) = X(A)*X(B)
X(A U B) = X(A) + X(B) - X(A int B)
vettore caratterisitico di un sottoinsieme di X
array dei valori delle f. caratterisitiche per tutti gli elem dell'insieme
X(A) = (X(A(x))) x € X
matrice caratteristica della famiglia di sottoinsiemi
numero righe
numero colonne: num elem ..
complessi:
- politopali (soprainsieme che continene simpliciali e cuboidali)
- simpliciali (famiglia di simplessi. ogni simplesso è caratterizzato dai suoi vertici, identificato dall'iniseme X)
- cuboidali
ogni complesso può essere identificato da una matrice caratteristica
vertici, spigoli e facce le rappresento con le loro matrici (o mappe) caratteristiche
posso pensare un complesso come unione dei suoi scheletri (dei vari ordini che corrispondono a vertici,spigoli, facce ?)
stesso numero di colonne. sulle colonne metto i vertici
sulle colonne ho l'1 se la cella è generata da quel vertice
sulle ogni riga avrò due volte 1
da qui ricavo la matrice delle facce
la riga mi dice da quali vertici è generata
es. cella di ordine 2: C2
1 1 0 1 0 0 questa faccia è generata dai vertici 0,1,3
NB quando conosco la matrice caratteristica della cella di ordine massimo posso ricavare tutte le altre!!
NB all'aumentare della grandezza delle dimensioni del modello diminuisce la % di elem della matrice != 0
MATRICE SPARSA
matrice con un elem dominante che predomina (es. lo zero)
a quel punto basta memorizzare gli elem non dominanti per risparmiare memoria
ooggi in disuso
in generale devo memorizzare delle triple i,j,v (riga,colonna,valore) che posso ordinare in determinati modi
NB se la matrice sparse è binaria posso rappresentare il tutto con coppie i,j:
se rappresento per righe posso rappresentare il tutto usando gli indici di colonna. se le indico vale 1 altrimenti vale 0
grafo: complesso simpliciale di ordine 1
MATRICI DI ADIACENZA
relazione tra elementi dello stesso tipo
Av: matrice di ADIACENZA dei vertici (dim v*v)
Ae: matrice di ADIACENZA degli spigoli (dim e*e)
MATRICI DI INCIDENZA
relazione tra elementi di tipo diverso
Ive matrice di INCIDENZA vertici-spigoli (vertici sulle righe, spigoli sulle colonne) (dim v*e)
trasponendo la matrice posso avere vertici su colonne e spigoli su righe
K^d Ak (0 <= K <= d)
NB numero vertici = numero spigoli!! (se il bordo è chiuso ovviamente)
matrice di adiacenza di ordine 2
A2 numero di vertici in comune (sulla diagonale ogni elem ha tre vertici in comune con sé stesso)
matrice di adiacenza
Ck*C(k-1) 1 <= k <= d
se rappr è per righe quando moltiplico devo moltiplicare da davanti (??)
C1*C0(trasposta)
c2*C1(trasposta) 9 spigoli 4 facce -> ogni elem in posizione ij di questa matrice di incidenza rappresenta il numero di vertici in comune tra spigolo i e faccia j
es.
2 2 2 1 1 0 1 0 0
2 1 1 2 2 1 1 1 0
1 0 1 1 2 2 2 1 1
0 0 0 1 1 2 1 2 2
la faccia 0 (1a riga) ha due vertici in comune con gli spigoli 0,1,2 (1a, 2a, 3a colonna)
un vertice in comune con gli spigoli 3,4,6 (4a,5a,7a colonna)
...
COBORDO
cobordo di ordine 1
delta1 (operatore di cobordo) si mette sempre l'ordine di partenza
complesso a celle K = unione delle celle dei vari ordini: K0 U K1 U K2
ogni campo può essere visto come uno spazio vettoriale(spazi lineare: combinazioni generali di insiemi generatori, cioè o-celle generano C0, le 1-celle generano)
spazi vettoriali sono associati a ogni cella
C0 C1 e C2 hanno elem chiamati CATENE
le celle supportano certi spazi di catene
avrò gli insiemi 0-catene, 1-catene, 2-catene
partial2
C2 -> C1
l'operazione che mi porta da una cella a quella di ordine inferiore si chiama BORDO
delta1
C2 <- C1
l'operazione inversa si chiama COBORDO
una 2-catena è una qualunque combinazione lineare di 2 celle
spazi e operatori definiscono il COMPLESSO DI CATENE/COCATENE (chain complex)
cioè tutti i possibili campi supportati da un complesso a celle K
---------------------------------------------------------------------------------------
15.45
ESTRUSIONE
le righe corrispondono alle celle
sulle righe
sulle colonne metti l'indice dei vertici
C2
1 1 0 1 0 0
0 1 0 1 1 0
0 1 0 1 1 0
0 0 1 0 1 1
ho tre elem non zero in ogni riga poiché ogni faccia è composta da 3 vertici
posso scrivere solo gli indice delle colonne con elem. non zero
(NB corrispondono all'indice dei vertici!!!)
2 cella rappresentata in forma compatta
0 1 3
1 3 4
1 2 4
2 4 5
per fare un'estrusione effettuo una traslazione nell'indice
es. vertici
aggiungo una colonna di 1
2 cella rappresentata in forma omogenea
1 0 1 3
1 1 3 4
1 1 2 4
1 2 4 5
rappresento un punto in forma
x
y
z
1
solo che metto l'uno prima di x y z
praticamente aggiungo una riga di 1 in fondo:
x1 x2 . xn
y1 y2 . yn
z1 z2 . zn
1 1 . 1
solo che ora sto considerando per colonna quindi aggiungo una colonna di 1
così preparo i dati per la traslazione e devo contemporaneamente generarne varie copie
ragiono sulle righe -> faccio i prodotti a dx, per delle matrici di traslazione
ricorda com'era la traslazione...
es. traslo un triangolo di vertici v0,v1,v2 -> ottengo un triangolo di vertici v3,v4,v5
ho aumentato l'indice di 3
devo avere una nuova matrice che contiene i vertici seguiti dalla copia traslata
x non fare casino sui vertici parto dall'indice dell'ultimo vertice (nel nostro caso 5)
sommo il successivo a tutti gli altri vertici (sommo 6 a tutti gli indici precedenti)
0 1 3
1 3 4
1 2 4
2 4 5
sommo 6 e aggiungo il numero ad ogni riga
A:
0 1 3 6 7 9
1 3 4 7 9 10
1 2 4 7 8 10
2 4 5 8 10 11
ho i vertici (0 1 2 3 4 5)
devo tornare nella forma 3 righe 4 colonne
0 1 2 3
1 2 3 4
2 3 4 5
questo è il risultato R a cui devo arrivare
come ci arrivo?
A * ? = R
matrice di parrtenza A (vedi prima)
MATRICE PERMUTAZIONE
matriche che ha un solo 1 per riga e un solo 1 per colonna
permettono di scambiare righe o colonne
es.
metto l'ultima riga dell'identità come prima riga
0 0 0 0 0 1
1 0 0 0 0 0
0 1 0 0 0 0
0 0 1 0 0 0
0 0 0 1 0 0
0 0 0 0 1 0
0 0 0 0 0 1
effetto: porta l'ultima riga come prima
A
0 0 1
1 0 0
0 1 0
B
1
2
3
A*B
3 1 2
ME SO ROTTO ER ASPODSOSDHASHDIJA
il prodotto delle mega maatrici produce tutti i tetraedri generati
http://images.stuffofawesome.com/haterz-gonna-hate--1305993607-113.gif
http://files.myopera.com/mpatricio/albums/7003662/funny-gif-yoga-balls.gif
http://i.imgur.com/Kw4sH.gif