Science topics: GNU
Science topic

GNU - Science topic

Explore the latest questions and answers in GNU, and find GNU experts.
Questions related to GNU
  • asked a question related to GNU
Question
3 answers
I am trying to model 3g5u with GROMACS. I have had problems with my .itp file(drug is actinomycin D), wherein the atomtypes did not match those of the charmm field(e.g., in the .itp file, C12 was named CH3, while the same atom was named CTL5 in the popc.itp of the charmm field). So I manually fixed that, but now I get the error that I don't have an actinomycin D molecule in my system. So what am I missing?
Here is the code:
gmx grompp -f minim.mdp -c system.gro -o em.tpr -p topol.top
:-) GROMACS - gmx grompp, 2019.2 (-:
GROMACS is written by:
Emile Apol Rossen Apostolov Paul Bauer Herman J.C. Berendsen
Par Bjelkmar Christian Blau Viacheslav Bolnykh Kevin Boyd
Aldert van Buuren Rudi van Drunen Anton Feenstra Alan Gray
Gerrit Groenhof Anca Hamuraru Vincent Hindriksen M. Eric Irrgang
Aleksei Iupinov Christoph Junghans Joe Jordan Dimitrios Karkoulis
Peter Kasson Jiri Kraus Carsten Kutzner Per Larsson
Justin A. Lemkul Viveca Lindahl Magnus Lundborg Erik Marklund
Pascal Merz Pieter Meulenhoff Teemu Murtola Szilard Pall
Sander Pronk Roland Schulz Michael Shirts Alexey Shvetsov
Alfons Sijbers Peter Tieleman Jon Vincent Teemu Virolainen
Christian Wennberg Maarten Wolf
and the project leaders:
Mark Abraham, Berk Hess, Erik Lindahl, and David van der Spoel
Copyright (c) 1991-2000, University of Groningen, The Netherlands.
Copyright (c) 2001-2018, The GROMACS development team at
Uppsala University, Stockholm University and
the Royal Institute of Technology, Sweden.
check out http://www.gromacs.org for more information.
GROMACS is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License
as published by the Free Software Foundation; either version 2.1
of the License, or (at your option) any later version.
GROMACS: gmx grompp, version 2019.2
Executable: /usr/local/bin/gmx
Data prefix: /usr/local
Working dir: /home/giancarlosortega/Downloads/pgp og files
Command line:
gmx grompp -f minim.mdp -c system.gro -o em.tpr -p topol.top
NOTE 1 [file minim.mdp]:
With Verlet lists the optimal nstlist is >= 10, with GPUs >= 20. Note
that with the Verlet scheme, nstlist has no effect on the accuracy of
your simulation.
Setting the LD random seed to -392528480
Generated 103181 of the 103285 non-bonded parameter combinations
Generating 1-4 interactions: fudge = 1
Generated 69770 of the 103285 1-4 parameter combinations
Excluding 3 bonded neighbours molecule type 'PGP'
Excluding 3 bonded neighbours molecule type 'POPC'
Excluding 2 bonded neighbours molecule type 'SOL'
Excluding 1 bonded neighbours molecule type 'CL'
ERROR 1 [file topol.top, line 183055]:
No such moleculetype actinomycin_D
There was 1 note
-------------------------------------------------------
Program: gmx grompp, version 2019.2
Source file: src/gromacs/gmxpreprocess/toppush.cpp (line 2403)
Fatal error:
There was 1 error in input file(s)
For more information and tips for troubleshooting, please check the GROMACS
-------------------------------------------------------
Relevant answer
Answer
Hi Ortega,
That probably means that your drug (actinomycin D) topology is not available in topol.top. Kindly be cautious while merging your .gro files and see the notation of ligand.gro and update that in topol.top.
Thanks.
  • asked a question related to GNU
Question
1 answer
I am trying to run an Abaqus VUMAT model and got in to issues at the run time.
The model has been run in a Linux cluster and compiled using Intel fortran compiler.
It gives an undefined reference to the symbol 'hpmp_bor', while searching for the component 'libmpiCC.so'.
I tried to link in other components (for ex. libmpi.so) which contains the same symbol, but somehow doesn't get through.
For your reference i am giving here the execution log from the run of Abaqus. Any help in that regard would be greatly appreciated.
baqus JOB ch901new3
Abaqus 6.14-1
Successfully checked out QEX/50 from DSLS server ze-ls1.fen.bris.ac.uk
Successfully checked out QXT/50 from DSLS server ze-ls1.fen.bris.ac.uk
Abaqus License Manager checked out the following licenses:
Abaqus/Explicit checked out 50 tokens from DSLS server ze-ls1.fen.bris.ac.uk.
<1838 out of 3600 licenses remain available>.
Begin Compiling Single Precision Abaqus/Explicit User Subroutines
Fri 26 Apr 2019 15:22:04 BST
Intel(R) Fortran Intel(R) 64 Compiler for applications running on Intel(R) 64, Version 16.0.2.181 Build 20160204
Copyright (C) 1985-2016 Intel Corporation. All rights reserved.
Intel(R) Fortran 16.0-1616
End Compiling Single Precision Abaqus/Explicit User Subroutines
Begin Linking Single Precision Abaqus/Explicit User Subroutines
Intel(R) Fortran Intel(R) 64 Compiler for applications running on Intel(R) 64, Version 16.0.2.181 Build 20160204
Copyright (C) 1985-2016 Intel Corporation. All rights reserved.
GNU ld version 2.20.51.0.2-5.36.el6 20100205
End Linking Single Precision Abaqus/Explicit User Subroutines
Fri 26 Apr 2019 15:22:17 BSTRun pre
Fri 26 Apr 2019 15:22:25 BST
End Analysis Input File Processor
Begin Abaqus/Explicit Packager
Fri 26 Apr 2019 15:22:25 BST
Run package
/cm/shared/apps/Abaqus-6.14/6.14-1/code/bin/package: symbol lookup error: /local/iq18664_ch901new3_19695/libmpiCC.so: undefined symbol: hpmp_bor
Fri 26 Apr 2019 15:22:26 BST
Abaqus Error: Abaqus/Explicit Packager exited with an error - Please see the
status file for possible error messages if the file exists.
Abaqus/Analysis exited with errors
Relevant answer
  • asked a question related to GNU
Question
7 answers
I am trying to use GPU Accerlation for GROMACS 2020.3.
I have installed cuda 11.0 and my NVIDIA graphics card driver is gt-force mx130
and i am running ubuntu 20.04
but when i run the command : gmx -version
I got this
GROMACS version: 2020.3
Verified release checksum is c0599e547549c2d0ef4fc678dc5a26ad0000eab045e938fed756f9ff5b99a197
Precision: single
Memory model: 64 bit
MPI library: thread_mpi
OpenMP support: enabled (GMX_OPENMP_MAX_THREADS = 64)
GPU support: disabled
SIMD instructions: AVX2_256
FFT library: fftw-3.3.8-sse2-avx-avx2-avx2_128
RDTSCP usage: enabled
TNG support: enabled
Hwloc support: disabled
Tracing support: disabled
C compiler: /usr/bin/cc GNU 9.3.0
C compiler flags: -mavx2 -mfma -fexcess-precision=fast -funroll-all-loops -O3 -DNDEBUG
C++ compiler: /usr/bin/c++ GNU 9.3.0
C++ compiler flags: -mavx2 -mfma -fexcess-precision=fast -funroll-all-loops -fopenmp -O3 -DNDEBUG
how would i make GPU support: enabled?
Relevant answer
Answer
Use this command while installing gromacs if you already installed CUDA
sudo cmake .. -DGMX_BUILD_OWN_FFTW=OFF -DREGRESSIONTEST_DOWNLOAD=OFF -DMAKE_C_COMPILER=gcc -DGMX_GPU=ON -DGMX_MPI=OFF -DREGRESSIONTEST_PATH=/your/pwd/path/here/Downloads/regressiontests-2020.3
  • asked a question related to GNU
Question
2 answers
Hi,
In order to register a project (in this case a systematic review) in Open Science Framework I need to choose a license, e.g., Academic Free License (https://opensource.org/licenses/AFL-3.0) or GNU LGPL (https://no.wikipedia.org/wiki/GNU_Lesser_General_Public_License). I have no experience with this and wonder what license to choose.
Appreciate any input.
Kind regards,
Astrid Brænden
Relevant answer
Answer
As it is a literature review and not software, the licences you mention are not appropriate. You should instead choose a Creative Commons Licence. Details can be found on the Creative Commons web site or on wikipedia. I tend to use CC BY NC, but the choice is really yours.
  • asked a question related to GNU
Question
2 answers
What is the difference between the MIT open source license and the modified version of the GNU General Public License (previously used)?
Relevant answer
Answer
The MIT license is the less restrictive of the two in terms of complying with the license. For example:
"Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software"[1]
the GNU license on the other hand states:
"You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it."[2]
Other conditions under the GNU license make it amenable to guarantee that additional work added to the code is maintained within the open source community. That is not a requirement of the MIT license.
If you are contemplating licensing under any of these licenses it is advisable to consult an IP attorney.
Regards
  • asked a question related to GNU
Question
3 answers
I am working on propagation channel measurement using USRP/GNU radio test-bed. I have started the measurement but stuck due to inability to convert the .dat file to a readable data that will enable me to plot the graph for multi-path and small-scale parameters. Thanks
Relevant answer
Answer
The method of reading the data file for MATLAB depends on the file format.
If it is a simple ASCII file (the content can be read with a text editor), for example, execute just as follows.
> data=load('filename.dat');
For binary files, it is a bit more complicated because you need specify the binary format. An example is as follows.
> fileID=fopen('filename.dat');
> data=fread(fileID,'int16','ieee-be');
> fclose(fileID);
I do not know about Octave. I wish you good luck.
  • asked a question related to GNU
Question
8 answers
I want to work with a open source code software which is written in Fortan 77 code. For that the GNU Fortan G77 compiler is required. I have never used this compiler. Is it possible to install it in a Windows 10 computer? I have heard GNU Fortran G77 is a freeware.Can someone give me a link to download it?
Relevant answer
Answer
As others have hinted, you do not want g77. That has been replaced by gfortran and you should install gfortran instead. It is a good compiler and should handle you old code just fine.
  • asked a question related to GNU
Question
18 answers
I tried to calculate the smallest number in my machine with gfortran, g++ and clang. I did it by looping as:
a = a / 1.73
In gfortran after 1358 loops, I found that a = 4.9406564584124654E-324, and the value of a never changes from loop 1358 till the end 1500 loop.
It is questionable for me that a non zero real number here a = 4.9406564584124654E-324 divided by a non zero number here 1.73 will keep the same value. The phenomenon seems to the qualification of the ground state energy in a quantum system.
Is this bugs for the gfortran compiler?
I have tested similar codes with gfortran (GNU Fortran 8.2.0 2018, 5.40 201609), g++ (GNU 5.4.0 201609, clang-1000.10.44.4) on Linux (Ubuntu, KylinOS,) and Macintosh. I also tried a =a / 1.7.
All have similar results. A ground state qualification and unchanged value of a.
I guess that it is related to the binary system used by the computer system.
Here with my codes.
Relevant answer
Answer
At least for Fortran, the language provides built-in intrinsic functions to return values like this. User's should not try to "compute" them.
Example:
program small
real(8) :: e, t
e = epsilon(1.0_8)
t = tiny (1.0_8)
write (*,*) "Smallest positive number is ", t
write (*,*) "Smallest number relative to 1 is ", e
end program small
% gf small.f90
% ./a.out
Smallest positive number is 2.2250738585072014E-308
Smallest number relative to 1 is 2.2204460492503131E-016
gfortran on a laptop with an Intel x86_64 processor.
  • asked a question related to GNU
Question
4 answers
Dear all ,
I am trying to install CAMx air quality model, but I got some issues associated to the "MPI_INST" and "NCF_INST" in the Makefile, and "MPI_INST" (located in the MPI/utilsub-directory). According to the Author Guide, I need to specified the right path for the MPI and NCF libraries, then, here I think is my problem:
1. I have already ensure the gfortran instalation as my compiler (GNU fortran 7.4.0, release in 2018). Additionally, I have already test and verified the compiler (See Figure 1)
2. I have already installed the MPI library (mpich 3.3a2), and as is suggested by the author guide, I tested it by using gfortran (my compiler). (see Figure 2)
3. After step 1 and 2, now I need to specified the MPI path at the two Makefiles. In order to obtain the path, I look for the directory mpich located at /usr/lib/mpich (see Figure 3, last line)
4. I update the path at those Makefiles need to compile correctly. Results in Figure 4.
As you can see, and as it ca be seeing in figure 5, the path was modified accordingly.
For those who are already users for this model CAMx, hope can help me to ensure the correct installation and run a simple example to verified it.
Best regards
Relevant answer
Answer
specify your question in precise order.
C is good as compare to Fortran
  • asked a question related to GNU
Question
4 answers
ِِAlthough there are a lot of materials about gcc compiler that describe its internal structure, however RTL is not well documented.
Since gcc 4.5, we can write a gcc-plugin to extand gcc in order to perform additional works, e.g., analyzing, instrumentation, ... etc.
However, most of free plugins deal with GIMPLE representation (because it is easy). What about dealing with RTL? all the guys who presented some works about gcc plugin, have only focused on GIMPLE (they said, OK, we will not talk about RTL due to scope considerations, or because it is very complicated)!.
Sometimes, we need to add compiler passes at RTL code as a back-end. To perform that, we need to understand RTL. Unfortunately, gcc RTL is not well documented.
So in order to perform works at RTL level, for example, implementing a gcc plugin as a back-end to inject some instructions into RTL code, What should we do? Reading .h .c .cc gcc files? I think gcc internal manual is not enough to perform such plugin.
Relevant answer
Answer
I've create a GCC plugin that does exactly what you want to do and even more, since I also add instructions at the beginning and the middle of basic blocks in RTL. This plugin executes after the RTL pass free_cfg, since that pass indicates the CFG of the program will not change anymore, making it the ideal point to work on basic blocks.
I agree with you that the documentation regarding RTL and how to build a plugin that deals with RTL is inadequate. I managed to develop my plugin through
  • Reading the GCC internal documentation, mainly the chapters about RTL and the CFG
  • Reading / Analyzing the plugin header files, such as rtl.h, basic-block.h, rtl.def, etc.
  • Reading / Analyzing the GCC code itself, using the github depository.
  • Trial and error: using lots of printf statements to find out what specific functions do; printing out the RTL to text documents and analyze how specific instructions must be build; trying out code and see its effect on the RTL.
One of the problems while building a (RTL) plugin, is that the error messages you get do not help you while compiling code with the built plugin. If you're lucky, the error message is "unrecognizable insn ..." and you can start figuring out what is wrong. In 90% of the cases however, the error message is just "Segmentation Fault" and that's it....
I think, having a look at our code my help you figure some things out. At this point however, I cannot yet share it with you as our legal department is still figuring out which license to apply to the code. (and I still have to thoroughly document the code ;) )
I hope this helps you a little. Feel free to contact me through email or private message for further information.
  • asked a question related to GNU
Question
1 answer
I am looking for an open source (i.e., free) Text-To-Speech library that works offline (i.e., data need not be sent to cloud like in case of Google Cloud Speech service) and can be sold (i.e., is commercially available, unlike some GNU licences) and is in any programming language for any Operation System.
Relevant answer
Answer
Pyttsx for python3 (Offline text to speech for python3)
Pyttsx is a good text to speech conversion library in python but it was written only in python2 untill now ! Even some fair amount of googling didn’t help much to get a tts library compatible with Python3.
  • asked a question related to GNU
Question
1 answer
I'm trying to solve an optimization problem using PARTICLESWARM function in MATLAB2014b. with aid of Open Source ECG Toolbox, version 1.0, November 2006 Released under the GNU General Public License.
The main objective of the code is to find the optimal parameters of the ECG model to achieve the minimum model error.
I have used PSO as optimizer to find these optimal parameters.
ends up with error:
Failure in initial user-supplied objective function evaluation. PARTICLESWARM cannot continue
Can any one help me please??
Codes attached
Relevant answer
i make the modification in function ECGOptimizeModel(x, indexes, meanphase)
can be, in this line:
options = optimoptions('particleswarm','SwarmSize',length(InitParams),'HybridFcn',@fminsearch,'Vectorized','on');
but i ends with error:
Error using particleswarm>makeState (line 699) When OPTIONS.Vectorized is 'on', your objective function must return a vector of length equal to the number of particles specified in OPTIONS.SwarmSize. Error in particleswarm>pswcore (line 164) state = makeState(nvars,lbMatrix,ubMatrix,objFcn,options); Error in particleswarm (line 146) [x,fval,exitFlag,output] = pswcore(objFcn,nvars,lbRow,ubRow,output,options); Error in ECGOptimizeModel (line 16) params = particleswarm(@(InitParams) ECGModelError(InitParams,x,meanphase,0),length(InitParams),InitParams-2,InitParams+2,options) Error in MY_ECGBeatFitterAuto (line 139) [params model er] = ECGOptimizeModel(y, indx, meanphase);
also i'm not figureout how to vectorize opjective function: can you help me with that, my objective function is:
function E = ECGModelError(X,ECGmn,Phasemn,flag); % % Synthetic ECG model error % % Open Source ECG Toolbox, version 1.0, November 2006 % Released under the GNU General Public License % Copyright (C) 2006 Reza Sameni % Sharif University of Technology, Tehran, Iran -- LIS-INPG, Grenoble, France % reza.sameni@gmail.com
% This program is free software; you can redistribute it and/or modify it % under the terms of the GNU General Public License as published by the % Free Software Foundation; either version 2 of the License, or (at your % option) any later version. % This program is distributed in the hope that it will be useful, but % WITHOUT ANY WARRANTY; without even the implied warranty of % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General % Public License for more details. You should have received a copy of the % GNU General Public License along with this program; if not, write to the % Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, % MA 02110-1301, USA.
L = (length(X)/3);
alphai = X(1:L); bi = X(L+1:2*L); tetai = X(2*L+1:3*L);
Z = zeros(size(ECGmn)); for j = 1:length(alphai), dtetai = rem(Phasemn - tetai(j) + pi,2*pi)-pi; Z = Z + alphai(j) .* exp(-dtetai .^2 ./ (2*bi(j) .^ 2)); end
if(flag==0) E = (Z-ECGmn); elseif(flag==1) E = (Z); end
  • asked a question related to GNU
Question
3 answers
Xcode & GNU library are installed. I am not familiar at all with C++ so anything obvious/basic that I may have missed would be a big help. 
Relevant answer
Answer
Yes, that might be the case... Try replacing c++ with g++ to see what happens. Also, please report any (error) messages you get while trying to build the executable.
  • asked a question related to GNU
Question
1 answer
I use GLPK solver (GNU Linear Programming Kit) for Optimal Power Flow analyzes. E.g. I want to minimize operating costs of generators (including slack). In Power Flow calculation, P and Q equations of the slack bus are not included in algorithm, because active power losses  are not known a priori. However, in OPF we must include slack bus equation because slack generator also has some operating costs..Would the system of equations be irregular or predefined in such case?
  • asked a question related to GNU
Question
2 answers
Hi all,
Presently, I am trying to program FPGA in USRP E310 for MIMO application.
This is the link of its online datasheet.( https://www.ettus.com/content/files/USRP_E310_Datasheet.pdf )
I am trying to edit the FPGA program in verilog as per my requirement. I have downloaded the open source code from Github (https://github.com/EttusResearch/fpga/tree/master/usrp3/top/e300) and building the bitstream from source. Later, I upload the bitstream to FPGA using uhd_usrp_probe command.
So far, I could toggle the frontend LEDs of USRP E310. I am trying to transmit Logic1 signal to one of the Transmitter ports. However, I can not see any output on the oscilloscope. Is there any possibility that frontend of USRP is not configured properly? if yes then, How to configure the USRP to transmit and receive the signal?
I wish to achieve the objective by only FPGA programming without using Gnu radio or any other software.
Kindly guide me if I am doing something wrong. It would be great if you can list down other data ports to be controlled.
Please tell me if my approach is correct and steps to be followed to program the FPGA correctly.
Any suggestions are welcome.
Relevant answer
Answer
I think you need to localize your problem first, and make sure each step gives you the valid result. It could be many possibilities from this point.
Cheers
  • asked a question related to GNU
Question
1 answer
Hello,
What do you consider the diversification operator in GAs? is it the crossover or the mutation operator? I always thought it is the crossover because it provides large jumps in the solution space by exchanging material between the parents, while mutation is the intensification because it allows for only a small change around the solution. However, it seems that many researchers consider mutation as the diversification strategy since it provides a variation in the solution to avoid getting stuck in a local optimum. What do you think?
Relevant answer
Answer
No, it is mutation not crossover that allows to avoid local minima in GA by introducing diversity in solution space.
Just search upon exploration and exploitation in GA.
  • asked a question related to GNU
Question
6 answers
Dear Friends,
    I'm using Ubuntu 12.04 LTS OS. Actually when I write code in C programming I encounter the analytical expression having the Hypergeometric2F1() function. I understand this type of predefined functions is not available in 'math.h'.
    Now the problem is I have to call Hypergeometric2F1() function from GSL library. How can I install it in my OS, how can I call it in my C code and how to compile the code.
Thanks,
jbSudhan
Relevant answer
Answer
The GSL source package provides the following binary packages:
gsl-bin: GNU Scientific Library (GSL) -- binary package
libgsl0-dbg: GNU Scientific Library (GSL) -- debug symbols package
libgsl0-dev: GNU Scientific Library (GSL) -- development package
libgsl0ldbl: GNU Scientific Library (GSL) -- library package
To install the library package, open a Terminal and type:
sudo apt-get install libgsl0ldbl
  • asked a question related to GNU
Question
1 answer
In case i publish raw measurement data (stand-alone or as supplemental material together with my paper or article), what are possible licence models i can use that regulate, what others are allowed to do with this data, e.g. can i restrict the use of the data to scientific applications and deny use for commercial applications? Are there standard licence models for this case?
Relevant answer
Answer
You can get the similar or apropriate answer by searching the keyword in the GOOGLE SCHOLAR page. Usually you will get the first paper similar to your keyword.
From my experience, this way will help you a lot. If you still have a problem, do not hasitate to let me know.
Kind regards, Dr ZOL BAHRI - Universiti Malaysia Perlis, MALAYSIA
  • asked a question related to GNU
Question
2 answers
I am trying to debug blast source code with gdb debugger. Any one have an idea in dealing with the make file and/or configuration file to allow me to put break point at the source code? I modified the configuration to compile with debug but I am not sure where to put the break point?
Relevant answer
Answer
Once you compile the code (using the -G flag) you run the program with GDB.
When you run the program on GDB if you have an error the execution will stop. At this point input the command backtrace and with the -G flag used in the compilation, the debugger will have enough information to give you where the program stopped.
If you need to set a breakpoint before this the you can use the following commands before issuing the run command
1) break offset - Set a breakpoint some number of lines  back(at offset) from the position at which execution stopped 
2) break function -Set a breakpoint at entry to function
Hope this helps
  • asked a question related to GNU
Question
1 answer
How to use GSL to perform Multiple Linear Regression ? I couldn't find any example on Google that could help me understand how to pass the coefficients of the X vectors
Relevant answer
Answer
after consulting some documents and some examples I could find what I wanted, here is the solution (see attached file) in case it could help someone else.
  • asked a question related to GNU
Question
4 answers
I use UBUNTU , Gfortran, GMT, gnuplot , MPI, GNU Octave and several open source projects. I wonder if I should cite /acknowledge them somehow, because their contribution is very useful. Is there anyone who has done this?
Relevant answer
Answer
Pankaj - there are two distinct ways (that I can think of) to do the acknowledgement. The first is that in any paper, presentation, or proceedings you write - make sure to mention what different software you used. The other way that comes to mind is that each of the products will always take contributions (whether financial or time). You could become a member of one of the teams and contribute via documentation, testing, or even coding.
  • asked a question related to GNU
Question
12 answers
I am using GNU gfortran, but I am not always satisfied with compilation. Can you suggest me another open source compiler?
Relevant answer
Answer
gfortran is one of the compilers for which -O0 is the default
this makes for fast compilation, but poor run-time.
This may also be an additional source of frustration.
Being in High Performance Computing, this is not the behavior that I want,
so I always use -O or -O2 with gfortran
You can verify this by comparing the output of
gfortran -Q --help=optimizers -c secondr.f90 | grep enabled > opts_default
and
gfortran -Q -O0 --help=optimizers -c secondr.f90 | grep enabled > opts_O0
and
gfortran -Q -O1 --help=optimizers -c secondr.f90 | grep enabled > opts_O1
Then
diff opts_default opts_O0
returns nothing, (identical)
while
diff opts_default opts_O1
Similarly, just specifying -O appears to mean -O1
at least in my version of gfortran, version 4.4.6