由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Science版 - 有用Java编写科学计算程序的吗?
相关主题
Re: 请问哪一种方法在作数值积分时收敛最快
相关话题的讨论汇总
话题: java话题: fortran话题: oop话题: c++话题: scientific
进入Science版参与讨论
1 (共1页)
d*n
发帖数: 137
1
我们交流交流.
看过一本书, 英国和美国好几个大的实验室在作把Fortran, C程序转
换为
Java程序的工作.
c********s
发帖数: 123
2
why?
fortran is the king.

【在 d*n 的大作中提到】
: 我们交流交流.
: 看过一本书, 英国和美国好几个大的实验室在作把Fortran, C程序转
: 换为
: Java程序的工作.

j****d
发帖数: 1
3
That is not a good idea.
Real, serious, intensive computation is done on Fortan.
Perhaps some on c/c++. Java? No. Too slow, inconvient,
no much library, and few interested in it.
Also read "How Java's Floating-Point Hurts Everyone Everywhere"
http://www.cs.berkeley.edu/~wkahan/JAVAhurt.pdf

【在 d*n 的大作中提到】
: 我们交流交流.
: 看过一本书, 英国和美国好几个大的实验室在作把Fortran, C程序转
: 换为
: Java程序的工作.

a***w
发帖数: 30
4
泡咖啡喝吧还行计算起来太慢乐.

【在 d*n 的大作中提到】
: 我们交流交流.
: 看过一本书, 英国和美国好几个大的实验室在作把Fortran, C程序转
: 换为
: Java程序的工作.

h***o
发帖数: 539
5
c is the queen

【在 c********s 的大作中提到】
: why?
: fortran is the king.

r****y
发帖数: 1437
6

Matlab is witch.

【在 h***o 的大作中提到】
: c is the queen
h***o
发帖数: 539
7
mathematica is Daoist.....:P

【在 r****y 的大作中提到】
:
: Matlab is witch.

d*n
发帖数: 137
8
你要计算什么问题?
想当年c不也受到非难吗?
现在有多少人用c呢?
numeical recipes in c的前言有关于用c编程的解释,
也许, 过几年他们又有关于为什么用java的解释.

【在 a***w 的大作中提到】
: 泡咖啡喝吧还行计算起来太慢乐.
a***w
发帖数: 30
9

我想java的好处在于它支持多平台不受
OS和机型的限制,享有这些优点当然会付出
一些efficiency方面的代价乐,如果用
assemble写会有最有效的code,你不否认吧.
我不写java的,就当我瞎说吧.不好意思.:(

【在 d*n 的大作中提到】
: 你要计算什么问题?
: 想当年c不也受到非难吗?
: 现在有多少人用c呢?
: numeical recipes in c的前言有关于用c编程的解释,
: 也许, 过几年他们又有关于为什么用java的解释.

S*********g
发帖数: 5298
10
问题在于,用效率换取超平台性对于科学计算来说,是否合算.
对于汇编的问题,我想用计算效率换取简便性从而换取编程的效率
对于科学计算来说,显然是合算的.

【在 a***w 的大作中提到】
:
: 我想java的好处在于它支持多平台不受
: OS和机型的限制,享有这些优点当然会付出
: 一些efficiency方面的代价乐,如果用
: assemble写会有最有效的code,你不否认吧.
: 我不写java的,就当我瞎说吧.不好意思.:(

相关主题
Re: 请问哪一种方法在作数值积分时收敛最快
进入Science版参与讨论
a***w
发帖数: 30
11

我只是觉得java和C比C要更合适科学计算.

【在 S*********g 的大作中提到】
: 问题在于,用效率换取超平台性对于科学计算来说,是否合算.
: 对于汇编的问题,我想用计算效率换取简便性从而换取编程的效率
: 对于科学计算来说,显然是合算的.

S*********g
发帖数: 5298
12
给个理由先.

【在 a***w 的大作中提到】
:
: 我只是觉得java和C比C要更合适科学计算.

t****n
发帖数: 56
13
for those scientific computation, fortran is better.

【在 h***o 的大作中提到】
: c is the queen
a***w
发帖数: 30
14
Fu2 Le1 you Le. Not my major to compare comp languages.:(

【在 S*********g 的大作中提到】
: 给个理由先.
S*********g
发帖数: 5298
15
So?
Try to use JAVA to do some scientific calculation.
You will get the answer.

【在 a***w 的大作中提到】
: Fu2 Le1 you Le. Not my major to compare comp languages.:(
c****u
发帖数: 3277
16
我觉得是具体问题具体分析. JAVA在OOP方面有其独到之处, 也许对一些不
需要过于考虑performance的问题, JAVA的良好的扩展性会提供某些优势.
在编程的时候, 总是running time和programming time 相互谐调让步的,我感觉.

【在 S*********g 的大作中提到】
: 问题在于,用效率换取超平台性对于科学计算来说,是否合算.
: 对于汇编的问题,我想用计算效率换取简便性从而换取编程的效率
: 对于科学计算来说,显然是合算的.

S*********g
发帖数: 5298
17
你的讨论很有道理.我也知道.
现在就是在讨论对于绝大多数的科学计算来说,是否合算.

【在 c****u 的大作中提到】
: 我觉得是具体问题具体分析. JAVA在OOP方面有其独到之处, 也许对一些不
: 需要过于考虑performance的问题, JAVA的良好的扩展性会提供某些优势.
: 在编程的时候, 总是running time和programming time 相互谐调让步的,我感觉.

t****n
发帖数: 56
18
no, Java is not that good as C++ regarding OOP. It does not have interface
definitions for the classes, this is one of its real weaknesses.

【在 c****u 的大作中提到】
: 我觉得是具体问题具体分析. JAVA在OOP方面有其独到之处, 也许对一些不
: 需要过于考虑performance的问题, JAVA的良好的扩展性会提供某些优势.
: 在编程的时候, 总是running time和programming time 相互谐调让步的,我感觉.

p*****g
发帖数: 38
19

what do you mean? puzzled.

【在 t****n 的大作中提到】
: no, Java is not that good as C++ regarding OOP. It does not have interface
: definitions for the classes, this is one of its real weaknesses.

t****n
发帖数: 56
20
虽说Java是完全的面向对象语言,C++是一种混杂的OO语言,在进行
OOP时,两者还是有很大的不同的。对于OOP影响最大的,我觉得有
两点,一个是单/多继承,另一个是头文件(.h)。C++是多继承,因
此,你几乎无需担心,现在对于类的划分对将来的影响,因为,你
可以随时从已经生成的类再派生新类。而Java在某种程度上对这个
进行了限制。虽然可以通过Interface达到多继承的效果,但是对
于程序设计而言,还是影响很大的。其二,C++其实采用了C的很多
重要的特征,其中之一就是头文件。在C程序设计中,通常都是先
定义.h文件的。而且一般.h文件中只有类型定义和全局以及静态变
量(全局和静态变量是应有所限制的,一般不鼓励过度的使用)。这
其实是遵循在软件工程以及OO方法学研究的一个Observation的,
那就是:数据结构相对算法实现(Implementation)是较为稳定的,
即,Interface比较稳定,而Implementation是比较容易改动变化
的。这也就是所谓的“抽象”(如果细说的话,就有“功能抽象”和
“数据抽象”之分了,以及其他类型的抽象)。在C++中,这种抽象

【在 p*****g 的大作中提到】
:
: what do you mean? puzzled.

相关主题
Re: 请问哪一种方法在作数值积分时收敛最快
进入Science版参与讨论
m*****e
发帖数: 4193
21
Java is a great thing for distributed computing: platform-independence,
transparent networking, remote method invocation, and security.
I think Java should win in this field.
d*n
发帖数: 137
22
我觉得划算. 我的室友从曾老弄来一个关于核计算的程序,
单纯为了一个数组越界就弄了相当长的一段时间, 最后还
找了他清华的一帮同学来挑错.
即是JAVA程序效率如何不高, 在他调程序这段时间里早就算完了,
而且在这段时间里还可以干其他的事情.

【在 S*********g 的大作中提到】
: 你的讨论很有道理.我也知道.
: 现在就是在讨论对于绝大多数的科学计算来说,是否合算.

d*n
发帖数: 137
23
象我这种粗心的人, JAVA是再好不过的软件了, 计算时间
我是不在乎.

【在 d*n 的大作中提到】
: 我觉得划算. 我的室友从曾老弄来一个关于核计算的程序,
: 单纯为了一个数组越界就弄了相当长的一段时间, 最后还
: 找了他清华的一帮同学来挑错.
: 即是JAVA程序效率如何不高, 在他调程序这段时间里早就算完了,
: 而且在这段时间里还可以干其他的事情.

S*********g
发帖数: 5298
24
我原来在公司打工的时候为了一个IF语句也曾经忙过两天.
这种不健全命令总是会存在的,JAVA也一样.
其实,读后修改别人的程序总是一件很麻烦的事,即使是JAVA也一样.
只是老曾的学生在编写的时候就应该考虑到这个问题乐,

【在 d*n 的大作中提到】
: 我觉得划算. 我的室友从曾老弄来一个关于核计算的程序,
: 单纯为了一个数组越界就弄了相当长的一段时间, 最后还
: 找了他清华的一帮同学来挑错.
: 即是JAVA程序效率如何不高, 在他调程序这段时间里早就算完了,
: 而且在这段时间里还可以干其他的事情.

S*********g
发帖数: 5298
25
看来还是你的程序不需要太长的运行时间.
那样的话,为什么不用MATHEMATICA呢.
计算功能强大不说,写起来也是跟写数学公式差不多.
还有就事UNIX下和WINDOWS的程序完全兼容.

【在 d*n 的大作中提到】
: 象我这种粗心的人, JAVA是再好不过的软件了, 计算时间
: 我是不在乎.

d*n
发帖数: 137
26
Mathematica, maple耗内存
hehe, 北大物理系真有人只用Mathematica来算的,
在现代物理中心可花银子了.

【在 S*********g 的大作中提到】
: 看来还是你的程序不需要太长的运行时间.
: 那样的话,为什么不用MATHEMATICA呢.
: 计算功能强大不说,写起来也是跟写数学公式差不多.
: 还有就事UNIX下和WINDOWS的程序完全兼容.

n******e
发帖数: 50
27
No. Fortran 搞不定复杂的数据结构.

【在 t****n 的大作中提到】
: for those scientific computation, fortran is better.
t****n
发帖数: 56
28
Scientific computations normally do not need complex data structures.
Fortran wins it because it has the perfect mapping of the flow
charts and its high speed and easily being called by C/C++,
Pascal, etc.

【在 n******e 的大作中提到】
: No. Fortran 搞不定复杂的数据结构.
a****n
发帖数: 4
29

There's a free (maybe decent as well)
Java package for scientific computation.
Check out
http://fourier.dur.ac.uk:8000/%7Edma3mjh/jsci/index.html

【在 a***w 的大作中提到】
: Fu2 Le1 you Le. Not my major to compare comp languages.:(
a****n
发帖数: 4
30

en? java does carry interface ah. probably you mean
template?

【在 t****n 的大作中提到】
: no, Java is not that good as C++ regarding OOP. It does not have interface
: definitions for the classes, this is one of its real weaknesses.

相关主题
Re: 请问哪一种方法在作数值积分时收敛最快
进入Science版参与讨论
c********s
发帖数: 123
31
not many, serious numerical problem is still solved by fortran.
ever heard of a general circulation model done in C?

【在 d*n 的大作中提到】
: 你要计算什么问题?
: 想当年c不也受到非难吗?
: 现在有多少人用c呢?
: numeical recipes in c的前言有关于用c编程的解释,
: 也许, 过几年他们又有关于为什么用java的解释.

c********s
发帖数: 123
32
kidding? hehe fortran is crooss platform compiatible enough lah.
u write a fortran 77 program, i compile it eveyrwhere. haha

【在 S*********g 的大作中提到】
: 问题在于,用效率换取超平台性对于科学计算来说,是否合算.
: 对于汇编的问题,我想用计算效率换取简便性从而换取编程的效率
: 对于科学计算来说,显然是合算的.

r****y
发帖数: 1437
33

Not C cannot do it. But the old kernels were all written in
Fortran, even old Fortran. Not too many guys are brave enough to rewrite
them again because even reading through the whole program will be a horrible
job to take.

【在 c********s 的大作中提到】
: kidding? hehe fortran is crooss platform compiatible enough lah.
: u write a fortran 77 program, i compile it eveyrwhere. haha

c********s
发帖数: 123
34
don't think so. most GCMs appear fairly late.
they are still written in Fortran.
C can do it, technically.

【在 r****y 的大作中提到】
:
: Not C cannot do it. But the old kernels were all written in
: Fortran, even old Fortran. Not too many guys are brave enough to rewrite
: them again because even reading through the whole program will be a horrible
: job to take.

r****y
发帖数: 1437
35

Wrong. What is late? Even late one, they are brand new? Definitely
not. Jeff Kiehl once joked that actually the original GCM were only less
then 5 versions, then peoples coped them and made modification, then tons
of GCM shows up.

【在 c********s 的大作中提到】
: don't think so. most GCMs appear fairly late.
: they are still written in Fortran.
: C can do it, technically.

c********s
发帖数: 123
36
Even they are not brand new. They still could use C. But they did not use it.
What I am saying is that either C or fortran can do it. But for a scientist,
fortran is always the number 1 choise.
by the way, jeff Kiehl is my boss's opponent, so I am not ready to honor
what he said, hehe

【在 r****y 的大作中提到】
:
: Wrong. What is late? Even late one, they are brand new? Definitely
: not. Jeff Kiehl once joked that actually the original GCM were only less
: then 5 versions, then peoples coped them and made modification, then tons
: of GCM shows up.

f******e
发帖数: 10
37
手工汇编有程序优化好?
手工作坊对蒸汽机.

【在 S*********g 的大作中提到】
: 问题在于,用效率换取超平台性对于科学计算来说,是否合算.
: 对于汇编的问题,我想用计算效率换取简便性从而换取编程的效率
: 对于科学计算来说,显然是合算的.

f******e
发帖数: 10
38
why?

【在 a***w 的大作中提到】
: Fu2 Le1 you Le. Not my major to compare comp languages.:(
f******e
发帖数: 10
39

不明白.

【在 d*n 的大作中提到】
: 我觉得划算. 我的室友从曾老弄来一个关于核计算的程序,
: 单纯为了一个数组越界就弄了相当长的一段时间, 最后还
: 找了他清华的一帮同学来挑错.
: 即是JAVA程序效率如何不高, 在他调程序这段时间里早就算完了,
: 而且在这段时间里还可以干其他的事情.

f******e
发帖数: 10
40

那也叫科学计算?
我这里做把vq算9个小时. 还要同时处理2,3G的文本数据.
用java嘿嘿.

【在 d*n 的大作中提到】
: 象我这种粗心的人, JAVA是再好不过的软件了, 计算时间
: 我是不在乎.

相关主题
Re: 请问哪一种方法在作数值积分时收敛最快
进入Science版参与讨论
t****n
发帖数: 56
41
别小看汇编程序,真的会比编译器强的!汇编程序设计另有
一番风味的。技巧行相当强呢!

【在 f******e 的大作中提到】
: 手工汇编有程序优化好?
: 手工作坊对蒸汽机.

f******e
发帖数: 10
42
嘿嘿,写一段程序.先用C优化到不能优化.
用VC优化便宜成ReleaseVersion.
同样用汇编写一段.不定谁更快.(不许用mmx,pIII指令那样,人家就要call
intel的lib了)

【在 t****n 的大作中提到】
: 别小看汇编程序,真的会比编译器强的!汇编程序设计另有
: 一番风味的。技巧行相当强呢!

h***o
发帖数: 539
43
nod nod....汇编程序里经常要用些小trick
简洁,但是难懂。:(

【在 t****n 的大作中提到】
: 别小看汇编程序,真的会比编译器强的!汇编程序设计另有
: 一番风味的。技巧行相当强呢!

f*******d
发帖数: 339
44
Don't know if anyone really wrote scientific calculation
with Assembly.
For real big sci. computation, even using C or Fortran could
be rather
complicated.
The only advantage of Java over C I could think of is that
it support
machine-independent GUI interface,
so if one want to write a scientific code with lots of
graphics and human-machine
interaction, one might consider it.

【在 h***o 的大作中提到】
: nod nod....汇编程序里经常要用些小trick
: 简洁,但是难懂。:(

C***C
发帖数: 216
45
There is JNL already , free
also J-Wave is ready to sci calculating................
There is a Jave DSP in Arizona Univ....

【在 f*******d 的大作中提到】
: Don't know if anyone really wrote scientific calculation
: with Assembly.
: For real big sci. computation, even using C or Fortran could
: be rather
: complicated.
: The only advantage of Java over C I could think of is that
: it support
: machine-independent GUI interface,
: so if one want to write a scientific code with lots of
: graphics and human-machine

f*******d
发帖数: 339
46

What do these do? Where are they?
From my experience, for many algorithms, even free C code is
not available, I hate FORTRAN, but sometimes have no
alternative.

【在 C***C 的大作中提到】
: There is JNL already , free
: also J-Wave is ready to sci calculating................
: There is a Jave DSP in Arizona Univ....

c********s
发帖数: 123
47
why hate fortran? fortran is so cool

【在 f*******d 的大作中提到】
:
: What do these do? Where are they?
: From my experience, for many algorithms, even free C code is
: not available, I hate FORTRAN, but sometimes have no
: alternative.

K******g
发帖数: 16
48
Personally, I know Java is more suitable for OOP. (Actually,
you can use OOP in C if you want, the problem now is
language).
I think Java is not good for purely CACULATION in science,
as said before, lack of lib, low efficiency. etc. Some can
be solved, (lib),
On the other aspect, don't forget the "semantics" of the
programming in science. I think Java can do much better than
C.

【在 t****n 的大作中提到】
: no, Java is not that good as C++ regarding OOP. It does not have interface
: definitions for the classes, this is one of its real weaknesses.

1 (共1页)
进入Science版参与讨论
相关主题
Re: 请问哪一种方法在作数值积分时收敛最快
相关话题的讨论汇总
话题: java话题: fortran话题: oop话题: c++话题: scientific