[Pcx-dev-l] Reordenamento - PCx Modificado

ra108980 em ime.unicamp.br ra108980 em ime.unicamp.br
Qui Dez 12 18:07:58 BRST 2013


Olá Daniele, tudo bem?

A  Fatoração de Cholesky Controlada é performada pela função 'ccf' que se
encontra em: PCx/SRC/ccf.c
Informações sobre a chamada da mesma  podem ser obtidas no arquivo
'outros.c' também no  arquivo SRC.

Abraço,

Lino



> ----- Forwarded message from Daniele Silva <silvadc.dcs em gmail.com> -----
>
> Date: Wed, 11 Dec 2013 09:50:17 -0200
> From: Daniele Silva <silvadc.dcs em gmail.com>
> To: Aurelio Ribeiro Leite de Oliveira <aurelio em ime.unicamp.br>, Raniere
> Silva <ra092767 em ime.unicamp.br>,
> 	carlalucke em gmail.com
> Subject: Reordenamento - PCx Modificado
>
> Olá! Tudo bem?
>
>
> Como vocês já sabem estou tentando reativar o reordenamento da matriz de
> restrições no PCx Modificado. Desse modo, surgiram alguns pontos que eu
> gostaria de compartilhar com vocês.
>
>
>     *1. "Estrutura" Factor*
>
>            É possível chamar a função Order, na qual é feito o
> reordenamento, sem maiores problemas, desde que seja feita anteriormente a
> chamada da          função NewFactorType, a qual faz o alocamento de
> memória de alguns fatores utilizados no reordenamento (estrutura Factor).
> Função esta muito parecida com a função criada posteriormente,
> a SplitFactorType, que aloca também memória para essa estrutura Factor,
> mas
> de uma forma diferente.
>
>            Dentre essas diferenças, a relevante para o reordenamento é o
> tamanho e a função dada para os vetores Factor->Perm e Factor->InvPerm. Em
> um primeiro momento, estes são utilizados para armazenar respectivamente,
> a
> permutação das linhas de A e a permutação inversa dessas. Já na chamada da
> função SplitFactorType, o espaço destinado a estes é diferente e os mesmos
> possuem um outro objetivo na função Create_LU. Sendo assim, seria
> necessário armazenar os dados destes em outros vetores antes da chamada
> da SplitFactorType, ou se possível, adicionar outros vetores a estrutura
> Factor com outros nomes, para guardar as reordenações.
>
>            Assim, surge minha primeira dúvida: onde está "localizada" esta
> estrutura e se é possível fazer alterações na mesma.
>
>
>     *2.  Função Order*
>
>         Foram feitas algumas modificações na função Order. Havia um
> "return
> (1) " logo após a chamada da função mínimo grau. Eu retirei tal return,
> caso este tenha alguma razão importante para estar ali, por favor me
> comuniquem.
>
>        A outra modificação, foi que comentei o código após a chamada da
> mínimo grau, pois eram coisas relacionadas a Fatoração de Cholesky do
> Ng-Peyton. Aliás preciso verificar se não há outras coisas que não
> precisam
> ser feitas.
>
>
>   * 3. Como e onde será feito o reordenamento*
>
>      Aí vem a dúvida mor: como e onde será feito este reordenamento?  É
> possível armazenar as permutações após a chamada da função order, mas
> ainda
> estou perdida qual o melhor momento para repassar tais informações e como
> fazê-lo. Help?
>
>     Segue uma ideia, dentro da função Create_LU há duas rotinas
> relacionadas a criação de ADAt, de repente passar a informação do
> reordenamento aí e já criar ADAt reordenada... seria uma boa? Alguém que
> trabalhe com essa parte da Create_LU que possa me dar alguma orientação?
>
> Ah outra coisa, o vetor b do sistema (AX=b) também precisa ser reordenado
> certo? Se sim, não é necessário fazer a volta da permutação na resposta
> final, ou sim?
>
> Outra dúvida, caso que tenha que mexer na Fatoração Controlada de
> Cholesky,
> onde está essa função e em que momento esta é chamada?
>
>
> Abraços.
> Daniele
>
> ----- End forwarded message -----
> _______________________________________________
> Pcx-dev-l mailing list
> Pcx-dev-l em listas.unicamp.br
> https://www.listas.unicamp.br/mailman/listinfo/pcx-dev-l
>





Mais detalhes sobre a lista de discussão Pcx-dev-l