Dear Ting Wei,

For me, your problem breaks down into two parts:
1) What do you want to do?
2) How can you do it?

Since you already have a hypothesis, I would write down the mathematical 
formula of the calculation you would like do. In the internet, you should be 
able to find the formula's you need.
The next step is to look at the input a nd output. Since you want to work on 
the SelfRotation, I guess you want to manipulate structure factor-like 
entities. In the CCP4 world, these reside in mtz files, so you would need to be 
able to read and write mtz files.

For a practical implementation, I would first look if there are CCP4 programs 
which could do the job. E.g. SFTOOLS (if you do not use the gui) allows you to 
do any manipulation like multiplication, division additions etc. on structure 
factors you could imagine, including complex operations involving phases. It 
can also calculate correlation factors. Reading and writing of mtz files is 
automatically taken care of.

If you want to do more complex operations, e.g. involving rotated h,k,l 
indices, you have to write something yourself. In this case I would convert the 
input mtz files into text files using a program like MTZDUMP. It is easy to 
write a program to read and write text files and if necessary, you can convert 
them afterwards back to mtz files using CCP4i. Once your program works you can 
add (link) CCCP4 library routines to read and write mtz files. These text files 
also make debugging easier since you can provide a file with only a few 
reflections and manually check that all calculations are performed correctly.

Concerning the calculations, you might want to look at the cctbx and clipper 
libraries, which contain a large number of subroutines for all kinds of 
crystallographic calculations. I assume their documentions also contains 
recommendations for which compiler to use.

Good luck!
Herman


________________________________
Von: CCP4 bulletin board [mailto:[email protected]] Im Auftrag von Ting-Wei 
Jiang
Gesendet: Donnerstag, 15. August 2013 10:56
An: [email protected]
Betreff: [ccp4bb] About Self Rotation and Fortran
Dear all experts,

I'm sorry for asking the not-so-related question here.
Really, I've got stuck in there for a long time so could you give me some 
suggestions.
Below is my difficulty:
I make a hypothesis which is related to improving the SelfRotation so I want to 
prove it is correct.

That means I have to calculate convolution but I only used fortran a few times 
to change format or do simple calculation.(Fortran is the only programming 
language I've ever used...Besides a little bit linux script)

I don't know where to start ?
1. learning from fundamental then try to code "convolution" : <
2. Looking for related library (where?)
Thanks for your reading and I really appreciate any suggestion.
Sincerely,
TingWei  : )

Reply via email to