[ << ] [ < ] [ Acima ] [ > ] [ >> ]         [Topo] [Conteúdo] [Índice] [ ? ]

1 Introdução

A Biblioteca Científica GNU (GSL) é uma coleção de rotinas para computação numérica. As rotinas foram escritas a partir do zero na linguagem de programação C, e mostram uma moderna Applications Programming Interface (1) (API) para programadores em C, permitindo que invólucros sejam escritos para linguagens do mais alto nível. O código fonte é distribuído sob a Licença Pública Geral GNU.


[ << ] [ < ] [ Acima ] [ > ] [ >> ]         [Topo] [Conteúdo] [Índice] [ ? ]

1.1 Rotinas Disponíveis na GSL

A biblioteca abrange um extenso intervalo de tópicos na computação numérica. Rotinas estão disponíveis nas seguintes áreas,

Números ComplexosRaízes de Polinômios
Funções EspeciaisVetores e Matrizes
PermutaçõesCombinações
OrdenaçãoSuporte a BLAS
Álgebra LinearBiblioteca CBLAS
Transformações Rápidas de FourierSistemas de autovalores autovetores
Números AleatóriosQuadratura
Distribuições AleatóriasSequências Quase Aleatórias
HistogramasEstatística
Integração de Monte CarloN-Tuplas
Equações DiferenciaisAnelamento Simulado
Diferenciação NuméricaInterpolação
Aceleração de SériesAproximações de Chebyshev
Procura de RaízesTransformações Discretas de Hankel
Ajuste de Mínimos QuadradosMinimização
Ponto Flutuante IEEEConstantes Físicas
SplinesWavelets

O uso dessas rotinas é descrito nesse manual. Cada capítulo fornece definições detalhadas das funções, seguidos de programas exemplo e referências para artigos nos quais os algoritmos são baseados.

Onde foi possível as rotinas se basearam em pacote confiáveis de domínio público tais como FFTPACK e QUADPACK, os quais os desenvolvedores da GSL reimplementaram em linguagem C com convenções modernas de código.


[ << ] [ < ] [ Acima ] [ > ] [ >> ]         [Topo] [Conteúdo] [Índice] [ ? ]

1.2 A GSL é Software Livre

As subrotinas na Biblioteca Científica GNU são “software livre”; isso significa que todo mundo é livre para usá-lo, e para redistribuí-lo em outros programas igualmente livres. A biblioteca não é de domínio público; ela está protegida por leis e existem condições para sua distribuição. Essas condições foram pensadas de forma a permitir qualquer coisa que um cidadão comprometido e cooperador pode desejar fazer. O que não é permitido é para tentar evitar outros de compartilhar adicionalmente qualquer versão do software que eles possam pegar de você.

Especificamente, desejamos garantir que você tenha o direito de compartilhar cópias de programas que você está fornecendo e que usem a Biblioteca Científica GNU, a qual você recebeu o código fonte ou caso não tenha pegado o código fonte pode fazê-lo se assim desejar, que você pode mudar esses programas ou usar partes dele em novos programas livres, e que você saiba que pode fazer essas coisas.

Para garantir que todas as pessoas tenham tal direito, temos que proibir você de privar alguém mais desses direitos. Por exemplo, se você distribuir cópias de qualquer código que usa a biblioteca Científica GNU, você deve fornecer aos destinatários todos os direitos que você tiver recebido. Você deve garantir que eles, também, recebam ou possam pegar o código fonte, ambos a biblioteca e o código usado. E você deve dizer a eles então seus direitos. Isso significa que a biblioteca não deve ser ser redistribuída em programas proprietários.

Também, para nossa própria proteção, devemos garantir que todos saibam que não existe garantida para a Biblioteca Científica GNU. Se esses programas forem modificados por alguém mais e passados adiante, desejamos que seus receptores saibam que o que eles possuem não é o que nós distribuimos, de forma que quaisquer problemas introduzidos por outros não irá refletir sobre nossa reputação.

As condições precisas para a distribuição de programas relacionados com a Biblioteca Científica GNU são encontrados na Licença Pública Geral GNU (veja seção Licença Pública Geral GNU). Informação adicional sobre essa licença está disponível no sítio do projeto GNU Frequently Asked Questions about the GNU GPL,

A Free Software Foundation também fornece um serviço de consultoria sobre licenciamento para usuários comerciais ( detalhes de contato disponíveis em http://www.fsf.org/).


[ << ] [ < ] [ Acima ] [ > ] [ >> ]         [Topo] [Conteúdo] [Índice] [ ? ]

1.3 Obtendo a GSL

O código fonte da biblioteca pode ser obtido de diferentes formas, pelo recebimento de uma cópia dada por um amigo, pagando por uma cópia dela em CDROM ou copiando da internet. Uma lista de servidores ftp públicos os quais mantém cópias do código pode ser encontrada no sítio GNU,

A plataforma preferida para a biblioteca é um sistema GNU, o qual permite que a biblioteca aproveite as vantagens de recursos adicionais no compilador C GNU e na biblioteca C GNU. Todavia, a biblioteca é completamente portável e pode compilar sobre a maioria dos sistemas com um compilador C.

Anúncios de novos releases, atualizações e outros eventos relevantes são feitos na lista info-gsl@gnu.org. Para assinar essa lista de pequeno tráfego, envie um email da seguinte forma:

To: info-gsl-request@gnu.org 
Subject: subscribe

Você irá receber uma resposta perguntando se você deseja responder com o objetivo de confirmar sua subscrição.


[ << ] [ < ] [ Acima ] [ > ] [ >> ]         [Topo] [Conteúdo] [Índice] [ ? ]

1.4 Nenhuma Garantia

O programa descrito nesse manual não tem nenhuma garrantida, ele é fornecido “como está”. É de sua responsabilidade validar o comportamento das rotinas e sua exatidão usando o código fonte fornecido, ou pagar suporte ou garantias de redistribuidores comerciais. Consulte a licença Pública Geral GNU para detalhes adicionais (veja seção Licença Pública Geral GNU).


[ << ] [ < ] [ Acima ] [ > ] [ >> ]         [Topo] [Conteúdo] [Índice] [ ? ]

1.5 Informando Erros

Uma lista de erros conhecidos pode ser encontrada no arquivo ‘BUGS’ incluído na distribuição GSL ou online no rastreador de erros da GSL.(2) Detalhes de problemas de compilação podem ser encontrados no arquivo ‘INSTALL’.

Se você encontrar um erro que não está listado nesses arquivos, por favor informe-o para bug-gsl@gnu.org.

Todos os erros informados devem incluir:

É muito útil se você puder verificar se o mesmo problema ocorre quando a biblioteca for compilada sem otimização. Obrigado.

Quaisquer erros e omissões nesse manual podem também serem informados para o mesmo endereço (3).


[ << ] [ < ] [ Acima ] [ > ] [ >> ]         [Topo] [Conteúdo] [Índice] [ ? ]

1.6 Informação Adicional

Informação adicional, incluindo cópias online desse manual, links para projetos relacionados, e arquivos de email das listas de discursão estã disponíveis a partir do sítio mencionado acima.

Quaisquer questões sobre o uso e instalação da biblioteca podem ser enviadas para a lista help-gsl@gnu.org. Para assinar essa lista, envie um email da seguinte forma:

To: help-gsl-request@gnu.org
Subject: subscribe

Essa lista de discursão pode ser usada para fazer questionamentos não cobertos por esse manual, e para contactar os desenvolvedores da biblioteca.

Se você for referir-se à Biblioteca Científica GNU em um artigo de jornal, a forma recomendada é citar esse manual de referência, e.g. M. Galassi et al, Biblioteca Científica GNU Manual de Referência (3rd Ed.), ISBN 0954612078.

Se você desejar fornecer um sítio na internet, use “http://www.gnu.org/software/gsl/”.


[ << ] [ < ] [ Acima ] [ > ] [ >> ]         [Topo] [Conteúdo] [Índice] [ ? ]

1.7 Convenções usadas nesse manual

Esse manual contém muitos exemplos os quais podem ser digitados no teclado. Um comando inserido no terminal é mostrado da seguinte forma,

$ comando

O primeiro caractere na linha é o prompt do terminal, e não deve ser digitado. O sinal de dólar ‘$’ é usado como prompt padrão nesse manual, embora alguns sistemas possam usar um caractere diferente.

Os exemplos assumem o uso de um sistema operacional GNU. Podem existir diferenças menores na saída em outros sistemas. Os comandos para ajustar variáveis de ambiente usam a sintaxe Bourne shell do GNU shell (bash) padrão.


[ << ] [ >> ]           [Topo] [Conteúdo] [Índice] [ ? ]

Esse documento foi gerado em 23 de Julho de 2013 usando texi2html 5.0.