1 /* written by Gosei Furuya <go.maxima@gmail.com>
2 # This program is free software; you can redistribute it and/or modify
3 # it under the terms of the GNU General Public License as published by
4 # the Free Software Foundation; either version 2 of the License, or
5 # (at your option) any later version.
8 /* to find integral factor for a diff form, if possible */
9 trans_toexact(_w):= block([anorm_table,a,b,c],
10 if d(_w)@ _w # 0 then return("no answer")
12 anorm_table:norm_table,
13 a:makelist(concat('u,i),i,1,dim),
14 norm_table:map("*",a,norm_table),
16 ( extsubb2[i]:cons(basis[i]=norm_table[i]/basis[i],extsub[i])),
19 norm_table:anorm_table,
21 ( extsubb2[i]:cons(basis[i]=norm_table[i]/basis[i],extsub[i]))