CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   Main CFD Forum (https://www.cfd-online.com/Forums/main/)
-   -   Build your own CFD software ? (https://www.cfd-online.com/Forums/main/4201-build-your-own-cfd-software.html)

Anonym December 10, 2001 11:48

Build your own CFD software ?
 
Hello all,

I hope you can give me some suggestions.

I did a PhD in an university in the UK. Naturally, I got a CFD source code from my former supervisor so that I could develope it and get my degree. I am now working in another university in the UK and would like to develop the code further for academic research.

My questions are: By law, am I illegal to use the code further without permission ? In general, how people deal with this kind of matters ? I would like to invite my former supervisor as a co-author if I could publish any paper in future, is that all right ?

Sorry be Anonym

andy December 10, 2001 13:23

Re: Build your own CFD software ?
 
> By law, am I illegal to use the code further without permission?

It depends on who owns the copyright to the code. This is determined by the employment status of the people who wrote the code and their conditions of service. The employer (i.e. the university) will generally own the code unless an industrial sponsor has paid a high overhead rate to obtain it.

Two questions:

(1) Who are the authors of the code. Just you or you and your supervisor? If your old supervisor has written part of the code then that will be owned by the university. Since CFD research is part of his normal duties there is almost no chance of his making a successful claim under current UK Employment law. However, the university are likely to give far more weight to his views then yours in any dispute!

(2) Were you a Research Assistant, Research Student or employee of an external company when you wrote the code? If you were an employee then you do not own the code. If you were a student then there is fair chance you own your own work. If you were self-funded then you would certainly own your own work. If you received a grant then you would have to check the conditions. I cannot say for certain but the chances are probably good.

> In general, how people deal with this kind of matters ?

Usually academics and their students would become familiar with a code, modify it and write papers based on the results. If an academic moved then the codes they developed which were not encumbered by external sponsorship agreements would also move. However, this has started to change recently and I have heard of a case of one university requiring a substantial payment for the transfer of a code (but I do not know the full background so do not read too much into it).

Generally, so long as you are using a code for research or teaching the old university is not going to mind. One thing that make them mind is if your old supervisor becomes upset and raises and objection. Having said that, getting them to agree to this officially could be a frustrating experience. In the past, academics have generally just got on with things. Of course, if you want to sell the code and its not all yours...

> I would like to invite my former supervisor as a co-author if I could publish any paper in future, is that all right?

Authorship of papers is determined by who did the work reported in the paper and not ownership/authorship of any code used. It sounds to me that an acknowledgement would probably be more appropriate but it would depend on the subject matter of the paper.


Anonym December 10, 2001 15:15

Re: Build your own CFD software ?
 
Dear Andy,

Thank you very much for your reply.

>>(1) Who are the authors of the code. Just you or you and your supervisor?

The code development had been involved many researchers and students under my former supervisor in the past years. Now I would like to use the main structure and develop it for my current project purpose which is different from my PhD work. As far as I know, what I want to do is also in the range of my former supervisors' interests (he has certainly a very broad interests. However, I might use different scheme and different approach as I plan to).

>>(2) Were you a Research Assistant, Research Student or employee of an external company when you wrote the code?

I was a research student funded by university studentship and I contributed part of the development of the code for my PhD research.

>>Generally, so long as you are using a code for research or teaching the old university is not going to mind. One thing that make them mind is if your old supervisor becomes upset and raises and objection.

That is what I am concerning about, as I am not 100% for sure my former supervisor would not be very upset. he did say that I would not be allowed to use the code once I left the former university unless we could do some cooperation. It would be fine, but what I can do if he simply say no this time. What if he regards our current group as a potential competitor although this sounds ridiculous. As a new researcher in CFD, my ability is mainly gained from the course of my PhD study. I really wish that I could carry on the development and build up my research career on it. I would like to make it clear here that I want to use the main structure of the code only for research purpose, not for any commercial related activities.

I will try to do my best to make my former supervisor happy and I believe that the worse thing won't happen. However, I would like to know what the consequence will be if the worse thing happens.

Thank you again.

Sorry be Anonym again

andy December 10, 2001 17:41

Re: Build your own CFD software ?
 
>> The code development had been involved many researchers and students under my former supervisor in the past years.

Morally, this setup tends to make the "software system" belong to the old group. I can understand someone getting upset if something they have grown over many years gets passed to a perceived competitor against their wishes.

>> I was a research student funded by university studentship.

In which case I would judge you could safely claim the routines you have physically created (but I am not a lawyer). However, I get the impression that what you value is a structure which you know how to use but to which you have no legal claim and, if I am interpreting the situation correctly, a weak-to-no moral claim if people dug their heels in.

>> he did say that I would not be allowed to use the code once I left the former university unless we could do some cooperation. It would be fine, but what I can do if he simply say no this time. What if he regards our current group as a potential competitor although this sounds ridiculous.

If the answer is no for whatever reason then I would suggest dropping that particular software system. If your previous supervisor does not wish to cooperate with you and your current group then, if I understand the situation correctly, there is little that can be done. I would suggest losing no energy over it but instead using it as an opportunity to get going with something new.

>> As a new researcher in CFD, my ability is mainly gained from the course of my PhD study. I really wish that I could carry on the development and build up my research career on it.

I get the impression, perhaps wrongly, that you place a lot of value on being able to use your old software system. Research careers are not built on owning code but being able to solve problems. Would your next employer rather see a demonstrated ability to adapt to new systems or a laser-like one-track continuation of your Ph.D? Wouldn't you rather broaden your horizons and grow? (at least the little bit involved in switching software systems).

>> I will try to do my best to make my former supervisor happy and I believe that the worse thing won't happen.

I would suggest it is probably much more important to make your current supervisor happy (but I do not know your situation). If your current group is happily developing software together using one system (whether better or worse than your old system is irrelevant) would it be wise to isolate yourself by using another? Would your current supervisor let you? Would your current supervisor want to be beholden to your old supervisor? Would he want to get involved with code which he might not be able to use for other related projects?

>> However, I would like to know what the consequence will be if the worse thing happens.

Nothing. (assuming you mean that your supervisor says no). I doubt you were given your current position on the condition you used your old system. I also suspect that now you know how to drive one system you can easily substitute another. There are plenty out there to choose from if you don't fancy developing your own or adapting those used by your current group.


Anonym December 11, 2001 05:46

Re: Build your own CFD software ?
 
Dear andy,

Thank you very much indeed for offering me your invaluable insights into things. I wish to continue the discussion with you but I don't feel it is good to give out further information about myself and my unusual situation here.

From the discussions with you, may I draw to the following conclusions:

(1) I would be safe to use the major parts of the old code although mostly they have been developed by my old fellows and I could develop it without giving notice to my former supervisor beforehand as long as for research purpose.

(2) If I discuss it with my former supervisor now and he says no, I should not use the old code further.

(3) It is better for me to use the code which belongs to the current group as I will not be isolated.

I will talk to my current supervisor and see what decision he would like to make.

Thank you again

Anonym

andy December 11, 2001 07:26

Re: Build your own CFD software ?
 
>> (1) I would be safe to use the major parts of the old code although mostly they have been developed by my old fellows and I could develop it without giving notice to my former supervisor beforehand as long as for research purpose.

Maybe if your old university/supervisor does not make a fuss. However, it is unlikely to be viable in the longer term if your work is successful. In this case you and your instituion would probably want to involve others and promote your work. Then what? You would be using large parts of code which is not yours or your institutions and you may well have alienated the owners by proceeding behind their backs. I think it unlikely that your current supervisor would agree to this as a good way forward but, again, I do not really know the position.

>> (2) If I discuss it with my former supervisor now and he says no, I should not use the old code further.

I suspect there would be little harm in quietly running it pretty much unchanged for internal purposes but I cannot see your current institution allowing you to base your current work on an external code in opposition to the wishes of the external codes owner (strictly employee of codes owner but the difference is unlikely to be significant in practice).

>> (3) It is better for me to use the code which belongs to the current group as I will not be isolated.

Yes. The benefits of working together in a happy group are usually substantial. (OK so there are two weasel words in that statement but I do not really know your position).

Anonym December 11, 2001 08:35

Re: Build your own CFD software ?
 
Dear Andy,

Thank you very much indeed.

One last question: Do you think I should have a try to talk to my previous supervisor as there might be a little chance to cooperate with him?

Regards

Anonym

andy December 11, 2001 09:33

Re: Build your own CFD software ?
 
You and your supervisor would have to be the main judge of this since it looks like a people thing. If the outcome is important to you then discussing things thoroughly with your current supervisor first is probably a wise move. It may be that an approach from him will be better received. Or maybe not. I cannot judge.

If you decide to use the old code only for limited internal use with the main base being another code and you judge the chance of "no" to be high it may be wiser not to ask. But if you and your supervisor want to both base your current work on the code and cooperate with your old supervisor then asking and living with the answer seems to be your only option.


just curious January 3, 2002 11:05

Re: Build your own CFD software ?
 
Will the things turn to be different if I rewrite the source code in an upgraded or another laguange? For example, upgrade the code from fortran 77 (or C) to fortran 90/95 (or C++), or convert it from fortran (or c/c++) to c/c++ (or fortran)?

andy January 3, 2002 14:26

Re: Build your own CFD software ?
 
The bottom line is that it is for the courts to decide. The people making the decisions are rarely "computer literate" and so the arguments would have to be made in non technical terms.

At a guess (and it is only that) a cosmetic change of syntax is likely to fail because you would still be stealing easily identifiable intellectual property. It would be relatively easy to demonstrate how it was done to a non-technical audience.

However, if you genuinely rewrite the methodology expressed in a "university research code" (typically Fortran code written swiftly to solve a small class of problems driven by simple text input and outputing to some plotting package) as a "commercial code" (more general and better defined interfaces, believable attempts at quality control, demonstratably more labour involved, possible change to more appropriate language, etc...). Then it is probable that one could successfully argue that although the production of the former is certainly part of the normal duties on an academic (the university owns the copyright) the production of the latter is not (the author owns the copyright). Although this advice was given to me first hand by a lawyer and he cited a case in the UK which was successfully defended along these lines I would still advise taking it with a pinch of salt. Firstly, the lawyer was touting for business and secondly it is always risky (and usually expensive) getting the courts to decide.


just curious January 8, 2002 13:04

Re: Build your own CFD software ?
 
Good to learn that, and thanks for your time.


All times are GMT -4. The time now is 13:36.