Next: Funções e Variáveis Definidas para Units, Previous: unit, Up: unit [Contents][Index]

### 74.1 Introdução a Units

O pacote unit torna o usuário apto a converter entre unidades arbitrárias e trabalhar com dimensões em equações. O funcionamento desse pacote é radicalmente diferente do pacote original units do Maxima - apesar de o original conter uma lista básica de definições, o pacote atual usa um conjunto de regras para permitir ao usuário escolher, sobre uma base dimensional, qual a resposta fianl de unidade pode ser convertida. Isso irá separar unidades em lugar de misturá-las na tela, permitindo ao usuário durante a leitura identificar as unidades associadas com uma resposta em particular. Isso permitirá ao usuário simplificar uma expressão em sua Base fundamental de Unidades, bem como fornecer ajuste fino sobre a simplificação de unidades derivadas. Análise dimensional é possível, e uma variedade de ferramentas está disponível para gerenciar a conversão e também uma variedade de opções de simplificação. Adicionalmente para personalizar conversão automática, units também fornede um manual tradicional de opções de conversão.

Nota -quando conversões de unidade forem não exatas Maxima irá fazer aproximações resultando em frações. Esso é uma conceqüência das técnicas usadas para simplificar unidades. A mensagem de alerta desse tipo de substituição está desabilitada por padrão no caso de inidades (normalmente essas mensagens estão habilitadas) uma vez que essa situação de iemissão de mensagens de alerta ocorre freqüêntemente e os alertas confundem a saída. (O estado atual de `ratprint` é restabelecido após uma conversão de unidades, de forma que modificações de usuário para aquela configuração irão ser preservadas de outra forma.) Se o usuário precisar dessa informação para `units`, ele pode escolher unitverbose:on para reativar a impressão de mensagens de alerta do processo de conversão.

unit está inclído no Maxima no diretório share/contrib/unit directory. Isso segue aos pacotes normais do Maxima conforme convenções:

    (%i1) load("unit")$
    *******************************************************************
    *                       Units version 0.50                        *
    *          Definitions based on the NIST Reference on             *
    *              Constants, Units, and Uncertainty                  *
    *       Conversion factors from various sources including         *
    *                   NIST and the GNU units package                *
    *******************************************************************

    Redefining necessary functions...
    WARNING: DEFUN/DEFMACRO: redefining function TOPLEVEL-MACSYMA-EVAL ...
    WARNING: DEFUN/DEFMACRO: redefining function MSETCHK ...
    WARNING: DEFUN/DEFMACRO: redefining function KILL1 ...
    WARNING: DEFUN/DEFMACRO: redefining function NFORMAT ...
    Initializing unit arrays...
    Done.

As mensagens WARNING (DE ALERTA) são esperadas n ão uma causa de preocupação - elas indicam que o pacote unit está redefinindo funções anteriormente definidas no local adequado do Maxima. Essa redefinição é necessária com o bojetivo de manusear adequadamente as unidades. O usuário pode estar consciente que se outras modificações tiverem sido feitas para essas funções por outros pacotes essas novas mudanças irão ser sobrescritas por meio desse processo de disponibilização do pacote `unit`.

O arquivo unit.mac também chama um arquivo lisp, a saber unit-functions.lisp, que contém as funçãoes lisp necessárias ao pacote.

Clifford Yapp é o autor primário. Ele recebeu grande contribuição de Barton Willis da University of Nebraska at Kearney (UNK), Robert Dodier, e da intrépida tribo da lista de mensagens do Maxima.

Existem provavelmente muitos erros. Diga-me quais. `float` e `numer` não fazem o que é esperado.

PORFAZER : funcionalidade de dimensão, manuseio de temperatura, a função `showabbr` e Cia. Ltda. Mostrar exemplos com adição de quantidades contendo unidades.

Next: Funções e Variáveis Definidas para Units, Previous: unit, Up: unit [Contents][Index]