|
libsim Versione 8.0.0
|
◆ vol7d_merge()
Metodo per fondere 2 oggetti vol7d. Il secondo volume viene accodato al primo e poi distrutto, si veda quindi la descrizione di vol7d_append. Se uno degli oggetti this o that sono vuoti non perde tempo inutile,
Definizione alla linea 1705 del file vol7d_class.F90. 1707!! USE vol7d_class
1708!! TYPE(vol7d) :: vol1, vol2
1709!! CALL init(vol1)
1710!! CALL init(vol2)
1711!! ... ! riempio vol1
1712!! CALL vol7d_copy(vol1, vol2)
1713!! \endcode
1714!! nel primo caso, infatti, l'operatore di assegnazione copia solo i componenti
1715!! statici di \a vol1 nei corrispondenti elementi di \a vol2, mentre i componenti che
1716!! sono allocati dinamicamente (cioè quelli che in ::vol7d hanno l'attributo
1717!! \c POINTER, in pratica quasi tutti) non vengono duplicati, ma per essi vol2
1718!! conterrà un puntatore al corrispondente elemento a cui già punta vol1, e quindi
1719!! eventuali cambiamenti al contenuto di uno dei due oggetti influenzerà il
1720!! contenuto dell'altro; nel secondo caso, invece, vol1 e vol2 sono, dopo la
1721!! vol7d_copy, 2 istanze
1722!! completamente indipendenti, ma uguali tra loro per contenuto, della classe
1723!! vol7d, e quindi hanno vita indipendente.
1724SUBROUTINE vol7d_copy(this, that, sort, unique, miss, &
1725 lsort_time, lsort_timerange, lsort_level, &
|