capítulo 6 arrays & clusters. uma array é uma lista de informações indexadas todas do mesmo...

Post on 17-Apr-2015

107 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Capítulo 6Capítulo 6

Arrays & ClustersArrays & Clusters

Arrays & Clusters

• Uma array é uma lista de informações indexadas todas do mesmo tipo. Ela pode ter no máximo ((2exp31)) -1 elementos por dimensão e podem ter várias dimensões.

• Um Cluster é, basicamente, um array que pode conter informações de tipos diferentes. (exceto array, chart ou graph)

• A indexação começa sempre na posição 0 até n-1, onde n é o número máximo de elementos.

• Ondas senoidais, por exemplo, podem ser armazenadas em arrays, pois cada ponto de sua amplitude pode ser um elemento deste array ( 1D ). Caso hajam mais ondas, basta aumentar sua dimensão. ( Ex. 2 D )

• Arrays podem ser de dois tipos: 1D arrays ou 2D arrays

É uma 1D array quando possui apenas uma linha, de N elementos:

1 2 3 4 5 6 7 ..N

É uma 2D array, possui mais de uma linha:

1,2 2,2 3,2 4,2 5,2 6,2 7,2 X,2

1,1 2,1 3,1 4,1 5,1 6,1 7,1 X,1

1,3 2,3 3,3 4,3 5,3 6,3 7,3 X,3

1,4 2,4 3,4 4,4 5,4 6,4 7,4 X,4

1,Y 2,Y 3,Y 4,Y 5,Y 6,Y 7,Y X,Y

Array Controls e Indicators

• Podemos criar um array controls ou indicator no painel frontal ou diagrama de fluxo de dados, combinando um array shell com um numeric, Boolean, string ou cluster. O elemento do array não pode ser array, chart ou graph.

• É necessário dois “steps” para a criação de um array control ou indicator :– Selecione um array shell no subpalette Array & Cluster do

Controls Palette e arraste-o para dentro do painel de controle.– Coloque dentro do array shell um dado válido ( númeric,

Boolean ou string ). Redimensione o array shell para acomodar os novos dados.

Array Controls e Indicators - Step 1

Clique em Array & Cluster

SelecioneArray

Mova o array shelle solte

2

3

1

Array Controls e Indicators - Step 2

Escolha um Digital Control

A janela é ajustadaautomaticamente

Defina o número deelementos que você deseja ( use a seta )

O index value correspodeao primeiro elemento visível do array

Terminal de um Array Shell

Array Shell Array de string

Colchete significaum array

Terminal com bordas cor de rosasignifica um array de strings

Terminal combordas pretas

Array Multidimensional

Adicionando dimensões a um array

Array 2D

Criando um 2D Array com Loops

• Assim como as Strings, Arrays possuem diversas funções que são utilizadas em sua manipulação.

• As funções são, na verdade, muito parecidas.

• Algumas delas poderiam ser criadas pelo próprio programador, porém isso seria muito trabalhoso, gerando um atraso desnecessário ao projeto.

A seguir, algumas das funções mais utilizadas quando trabalhamos com arrays.

Arrays

Array Size

• Array Size - Retorna o número de elementos em cada dimensão de uma array. A array de entrada pode ser n -dimensional, de qualquer tipo.

• Teste o arquivo Array Size Demo.vi

Index Array

• Index Array - Retorna o elemento da array na posição requerida.

• Pode-se localizar quantos elementos forem necessários adicionando mais terminais. A saída será uma Sub - Array, que conterá os elementos localizados.

• Teste o arquivo Array Index Demo.vi

Replace Array Element

• Replace Array Element - Troca o elemento de determinada posição da array por outro.

• Pode-se trocar N posições, porém com o mesmo novo elemento.

• NEW ELEMENT - É o elemento a ser inserido

• A saída será a array original com os elementos definidos já trocados.

Array Subset

• Array SubSet - Retorna uma porção de uma array começando no Index, e pegando o número de caracteres definido por LENGHT.

• Pode-se incluir N segmentos a serem procuradas. A saída será uma sub - array, com todos os segmentos encontrados.

• Teste o arquivo Array Subset Demo.vi

Initialize Array

• Initialize Array - Cria um array n - dimensional com elementos contendo o valor que você especificou. Todos o elementos são inicializados com o mesmo valor.

• Teste o arquivo Array Initialization Demo.vi

Build Array

• Build Array - Concatena os elementos das entradas a uma array, de cima para baixo.

• Podem haver N entradas, o que implica em N+1 linhas.

• Os elementos de entrada pode em ser Arrays, mas seu comprimento deve ser igual ou menor do que a array a serem concatenados.

• Teste o arquivo Array Build Demo.vi

Transpose 2D Array

• Transpose 2D Array - Transpõe os elementos de uma 2D array.

• A transposição é feita trocando as linhas pelas colunas, assim uma array, antes [I,J] ficará sendo [J,I] .

• A array pode ser de qualquer tipo .

Split 1D Array

• Split 1D Array - Divide uma 1D array em duas sub - arrays, na posição determinada pelo INDEX.

• Se o index for menor ou igual a zero, a primeira sub - array será vazia.

• Se o index for maior do que o tamanho da array, a segunda sub - array estará vazia.

Sort 1D Array

• Sort 1D Array - Rerranja os elementos de uma array de forma que fiquem em ordem crescente.

• A 1D array não pode ser booleana.

Array Max & Min

• Array Max & Min - Procura pelo maior e o menor valor de uma array e retorna esses valores, e sua localização.

Clusters

• Um cluster, ao contrário de uma array, pode conter vários tipos de dados dentro de suas partições.

• Essa característica nos permite simplificar a ligação entre processos, já que muitas vezes eles não estão utilizando variáveis diferentes.

• Seus benefícios se estendem até mesmo na visualização no projeto, que se torna mais fácil e “limpa”.

Suas funções serão vistas a seguir :

Array to Clusters

• Permite a conversão de uma 1D Array para um cluster, do mesmo tipo dos elementos dessa array. O tamanho padrão de elementos deste Cluster é nove, que pode ser estendido até 256. Para se mudar o tamanho, basta dar um clique direito, e modificar suas propriedades.

• Cria, a partir dos componentes de suas entradas, de cima para baixo, uma Array de Clusters desses componentes. Se a entrada for de 4 Pontos Flutuantes, de uma casa decimal de precisão, a saída será uma array de clusters de quatro elementos contendo um número Ponto Flutuante, com uma casa decimal de precisão. O elemento 0 da array terá o valor da primeira entrada, e assim sucessivamente.

Build Cluster Array

• Organiza todos os componentes de entrada em um só cluster.

Bundle

Exemplo da Função Bundle

Cluster Bundle Demo.vi

• Troca os componentes do cluster de entrada. A seleção dos componentes é feita com um clique direito nos terminais de entrada, através da seleção do nome na lista de elementos do cluster a ser modificado. É obrigatório que haja um Cluster de entrada.

Bundle by Name

• Converte um 1D Cluster para uma 1D array. É obrigatório que todos os componentes deste cluster sejam do mesmo tipo.

Cluster to Array

• Faz a indexação de uma série de arrays, e cria um cluster array, cujo n-ésimo elemento contém o n-ésimo elemento de cada uma das arrays de entrada.

Index & Bundle Cluster Array

• Fragmenta um cluster em seus componentes originais. Teste o arquivo Cluster Unbundle Demo.vi

Unbundle

• Fragmenta os elementos do cluster especificados. O nome deve ser selecionado no terminal de saída, através de um clique direito, selecionando a partir da lista de elementos deste cluster.

Unbundle By Name

top related