合并多个pdf文件
pdftk 1.pdf 2.pdf 3.pdf cat output 123.pdf
提取文件某几页合成为新文件
pdftk A=one.pdf B=two.pdf cat A1-7 B1-5 A8 output combined.pdf
128位加密文件
pdftk mydoc.pdf output mydoc.128.pdf owner_pw foo user_pw baz
加密但是允许打印
pdftk mydoc.pdf output mydoc.128.pdf owner_pw foo user_pw baz allow printing
解密文件
pdftk secured.pdf input_pw foopass output unsecured.pdf
2006年5月19日星期五
pdf文件处理工具:pdftk
pdftk是一个处理pdf文件的小工具,可以进行合并pdf文档,提取其中几页成为新pdf文件,加密解密等操作。
Labels:
Linux
2006年5月5日星期五
如何使用Maxima(二)
三角函数变换
常用的三角函数变换有下面几种:- trigexpand
- 利用和差化积公式展开
- trigreduce
- 利用积化和差等公式变成sin或cos的和
- trigsimp
- 利用sin2(x) + cos2 = 1等公式简化
- trigrat
- 简化分数形式
(%i1) sin(2*x)/cos(x)+cos(2*x); sin(2 x) (%o1) -------- + cos(2 x) cos(x) (%i2) trigexpand(%o1); 2 2 (%o2) - sin (x) + 2 sin(x) + cos (x) (%i3) trigreduce(%o1); (%o3) sec(x) sin(2 x) + cos(2 x) (%i4) trigsimp(%o1); sin(2 x) + cos(x) cos(2 x) (%o4) -------------------------- cos(x) (%i5) trigrat(%); (%o5) cos(2 x) + 2 sin(x)
微积分
微分:(%i1) f: sqrt(x-1)*exp(2*x^2); 2 2 x (%o1) sqrt(x - 1) %e (%i2) diff(f, x); 2 2 2 x 2 x %e (%o2) 4 sqrt(x - 1) x %e + ------------- 2 sqrt(x - 1) (%i3) diff(sin(x)*exp(x^2), x, 2); 2 2 2 2 x x x (%o3) 4 x %e sin(x) + %e sin(x) + 4 x %e cos(x)
不定积分:(%i4) integrate(%o2, x); 2 log(x - 1) 2 x - ---------- 2 (%o4) (x - 1) %e
定积分: 从这个例子可以看出,maxima是一个很聪明的代数系统,它不会像其他数学程序那样想当然的默认一个结果,而是主动问你必要的条件,然后给出正确的结果。(%i5) integrate(exp(-a*x^2), x, 0, inf); Is a positive, negative, or zero? positive; sqrt(%pi) (%o5) --------- 2 sqrt(a)
泰勒展开: 这个例子给出函数g的前三阶泰勒展开。(%i6) g: sin(2*x)*exp(a*x); a x (%o6) %e sin(2 x) (%i7) taylor (g, x, 0, 4); 2 3 3 4 2 (3 a - 4) x (a - 4 a) x (%o7)/T/ 2 x + 2 a x + ------------- + ------------- + . . . 3 3
2006年5月4日星期四
2006年5月3日星期三
如何使用Maxima(一)
Maxima是一个优秀的开放源代码代数运算系统,符号运算能力可以和著名商业数学软件Mathematica相媲美。这里是它的使用方法的一个简介。
运行和退出
运行:maxima
进入maxima环境后,会看到开始处有(%i1),这是行标。%i表示输入行,%o表示输出行,后面的数字表示第几个输入或输出。 退出:quit();
可以看出,maxima语法和C语言类似,语句结束需要加分号。maxima里面是要区分大小写的。算术运算
符号+, -, *, /, ^分别表示加、减、乘、除、乘方。maxima是一个精确计算的代数系统,例如分数,开方等运算会保持符号形式,不会被自动转化为小数。(%i1) 2/5+3/4; 23 (%o1) -- 20
如果要输出小数,可以用numer命令:(%i2) %,numer; (%o2) 1.15
百分号%代表最后一次输出的结果。另外,可以用bfloat输出任意精确度的小数,有效数字位数由变量fpprec控制,默认是16位。(%i3) fpprec:100; (%o3) 100 (%i4) bfloat(%pi); (%o4) 3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117068b0
(%i3)中的冒号表示赋值。代数运算
多项式展开:(%i5) (x^2+2*x*y+3*y^2)^3; 2 2 3 (%o5) (3 y + 2 x y + x ) (%i6) expand(%); 6 5 2 4 3 3 4 2 5 6 (%o6) 27 y + 54 x y + 63 x y + 44 x y + 21 x y + 6 x y + x
等量代换:(%i7) %o6, x=2/z; 5 4 3 2 108 y 252 y 352 y 336 y 192 y 64 6 (%o7) ------ + ------ + ------ + ------ + ----- + -- + 27 y z 2 3 4 5 6 z z z z z
提取公分母:(%i8) ratsimp(%); 6 6 5 5 4 4 3 3 2 2 27 y z + 108 y z + 252 y z + 352 y z + 336 y z + 192 y z + 64 (%o8) ----------------------------------------------------------------------- 6 z
因式分解:(%i9) factor(%); 2 2 3 (3 y z + 4 y z + 4) (%o9) ---------------------- 6 z
解非线性方程组:(%i10) a+b+2*c=0; (%o10) 2 c + b + a = 0 (%i11) 2*a-b=1; (%o11) 2 a - b = 1 (%i12) a-2*b*c=5; (%o12) a - 2 b c = 5 (%i13) solve([%o10,%o11,%o12],[a,b,c]); sqrt(7) + 1 2 sqrt(7) - 1 sqrt(7) - 14 (%o13) [[a = -----------, b = -------------, c = -------------], 3 3 4 sqrt(7) - 2 sqrt(7) - 1 2 sqrt(7) + 1 sqrt(7) + 14 [a = - -----------, b = - -------------, c = -------------]] 3 3 4 sqrt(7) + 2
订阅:
博文 (Atom)