aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ChangeLog9
-rw-r--r--src/algebra/integrat.spad.pamphlet2
-rw-r--r--src/testsuite/aw-440.input4
3 files changed, 14 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index a2f12f8c..73f2297f 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,12 @@
+2009-02-04 Gabriel Dos Reis <gdr@cs.tamu.edu>
+ Waldek Hebisch <hebisch@math.uni.wroc.pl>
+
+ Fix AW/440
+ * algebra/integrat.spad.pamphlet
+ (integrate$FunctionSpaceComplexIntegration): Use complexIntegrate
+ for complex expressions.
+ * testsuite/aw-440.input: New.
+
2009-02-04 Waldek Hebisch <hebisch@math.uni.wroc.pl>
Gabriel Dos Reis <gdr@cs.tamu.edu>
diff --git a/src/algebra/integrat.spad.pamphlet b/src/algebra/integrat.spad.pamphlet
index ab2eb2be..97eb0d2e 100644
--- a/src/algebra/integrat.spad.pamphlet
+++ b/src/algebra/integrat.spad.pamphlet
@@ -195,7 +195,7 @@ FunctionSpaceIntegration(R, F): Exports == Implementation where
not empty? rest rest l
integrate(f, x) ==
- not real? f => complexIntegrate(f, x)
+ R has complex or not real? f => complexIntegrate(f, x)
f := distribute(f, x::F)
tf := [k for k in tower f | member?(x, variables(k::F)@List(SE))]$List(K)
ltf := select(is?(operator #1, "tan"::SE), tf)
diff --git a/src/testsuite/aw-440.input b/src/testsuite/aw-440.input
new file mode 100644
index 00000000..ed11c072
--- /dev/null
+++ b/src/testsuite/aw-440.input
@@ -0,0 +1,4 @@
+-- Contributed by Martin Rubey
+-- Also similar to AW/442
+integrate(log(1-z^3)*(%i*z)^(1/2),z)
+integrate(csc(z)*(1-1/(%iz)^(1/2))^(1/2),z)