[Molds-dev] [Patch] Unpaired_electron_population

Zurück zum Archiv-Index

Okuyama okymm****@gmail*****
2013年 1月 8日 (火) 00:01:33 JST


Dear Mr. Fujii,

This is Okuyama.

Thanks for reviewing my patch files.
I read your E-mail. In your E-mail,
I think there is a problem in the source code that you suggested.
You suggested new source code:

   742 int InputParser::ParseConditionsCIS(vector<string>*
inputTerms, int parseIndex) const{
    743    Parameters::GetInstance()->SetRequiresCIS(true);
    744    parseIndex++;
     .
     .
     .
     .
    827       // unpaired electron population
    828       if((*inputTerms)[parseIndex].compare(this->stringCISUnpairedPop)
== 0){
    829          if((*inputTerms)[parseIndex+1].compare(this->stringYES) == 0){
    830             Parameters::GetInstance()->SetRequiresUnpairedPopCIS(true);
    831          }
    832          else{
    833             Parameters::GetInstance()->SetRequiresUnpairedPopCIS(false);
    834          }
    835          parseIndex++;
    836       }
    837       parseIndex++;
    838    }
    839    return parseIndex;
    840 }

I implement the above source code into my source code and
run the implemented source code in my PC.
In CIS input, the following input is OK:

unpaired_electron_population yes

or

unpaired_electron_population no

However, the calculation stops abnormaly (segmentation fault)
when the following input:

unpaired_electron_population

Now, I'm investigating the problem.
I may have any time to solve this problem since I can't solve the
problem....
I think I'd like to have a chance to talk with you by mobile phone etc.

Best regards.

Okuyama





On 2013年01月06日 02:55, Mikiya Fujii wrote:
> Dear Okuyama,
>
> Thanks for your patches. I had reviewed them.
>
> ***
> Your coding-grammar and -style are quite fine!
> But, I ask you to fix only one modification about input control:
> (1) UEP should be set as "unpaired_electron_population yes" in CIS-directive,
>     that is, the following input obeys the MolDS's input style.
>
>     CIS
>       ....
>       mulliken m
>       mulliken n
>       unpaired_electron_population yes
>       ....
>     END
>
>     The corresponding code in the InputParser.cpp (r1234 which your 2
> patches and my modification had been applied to) is written as
>
>     742 int InputParser::ParseConditionsCIS(vector<string>*
> inputTerms, int parseIndex) const{
>     743    Parameters::GetInstance()->SetRequiresCIS(true);
>     744    parseIndex++;
>      .
>      .
>      .
>      .
>     827       // unpaired electron population
>     828       if((*inputTerms)[parseIndex].compare(this->stringCISUnpairedPop)
> == 0){
>     829          if((*inputTerms)[parseIndex+1].compare(this->stringYES) == 0){
>     830             Parameters::GetInstance()->SetRequiresUnpairedPopCIS(true);
>     831          }
>     832          else{
>     833             Parameters::GetInstance()->SetRequiresUnpairedPopCIS(false);
>     834          }
>     835          parseIndex++;
>     836       }
>     837       parseIndex++;
>     838    }
>     839    return parseIndex;
>     840 }
>
> With integration of the (1) to your second patch "add_opt_ctrl.patch",
> please commit your code to the trunk.
>
>
> ***
> Besides, I ask you to do two more tasks about this ticket.
> [1] Update test input and output files in the molds/trunk/test for the UEP.
>     I think that updating of only "c2h6_pm3_directCIS_singlet.in" and
> "c2h6_pm3_directCIS_singlet.dat" is enough.
> [2] Update documents (molds/trunk/doc/README.txt) to use UEP.
>     Explanation of the UEP option should be written in the
> <CIS>-paragraph of the README.txt.
>
> Of course, please commit [1] and [2] too.
>
>
> Please ask me if you have any question.
> My best,
> Mikiya
>
> ***************************************
> Mikiya Fujii, Ph.D.
>
> Yamashita & Ushiyama Laboratory,
> Department of Chemical System Engineering,
> Faculty of Engineering,
> The University of Tokyo.
>
> tel&fax: +81-3-5841-7286
> email: fujii****@tcl*****
> HP: http://www.tcl.t.u-tokyo.ac.jp/
> ***************************************
>
>
> 2013/1/4 Okuyama <okymm****@gmail*****>:
>> Dear colleagues
>>
>> This is Okuyama.
>>
>> I send patch files to impliment the unpaired electron population (UEP)
>> and the input control to this mailing list.
>> The patch files are the following files:
>>      *calc_uep_without_opt_ctrl.patch
>>      *add_opt_ctrl.patch
>>
>> calc_uep_without_opt_ctrl.patch adds source code to be available the
>> unpaired electron population.
>> By appling this patch file, it's possible to calculate the unpaired
>> electron population of excited states on each single atom in molecule.
>> Upto this implimentation, you can calculate the unpaired electron
>> population of nth-excited states
>> by adding the follwing input:
>>      CIS
>>          mulliken n
>>      END
>> Next, the file, add_opt_ctrl.patch adds the input control of the
>> unpaired electron population.
>> The input control executes the calculation of the UEP
>> when there is a keyword, 'unpaired_electron_population' in the CIS input.
>>
>> *Procedure to apply the patch files to the MolDS
>>      Revision of the Molds is 1234
>>      In a directory, trunk,
>>      1. patch -p0 < calc_uep_without_opt_ctrl.patch
>>      2. patch -p2 < add_opt_ctrl.patch
>>
>> *How to use the UEP calculation
>> Example) Calculation of the UEP of the m and n-th excited states
>> CIS
>>      ....
>>      mulliken m
>>      mulliken n
>>      unpaired_electron_population
>>      ....
>> END
>>
>> I have made sure the following terms:
>>      * There are not segmentation fault and abort by executing all the
>> test inputs.
>>      * The MolDS.out is created by executing make depend INTEL=64 &&
>> make INTEL=64
>>      * For all the test inputs including CIS keyword, I added the
>> follwing keyword:
>>          CIS
>>              ....
>>              mulliken 2
>>              mulliken 3
>>              unpaired_electron_population
>>              ...
>>          END
>>        Under above condition, I make sure that there is no segmentation
>> fault.
>>
>> At last, in this implimentation, it will not calculate the UEP at the
>> ground state.
>> The reason why the UEP at the ground state is zero and, therefore this
>> calculation is nonsense.
>>
>> Best regards.
>>
>> -------------- next part --------------
>> テキスト形式以外の添付ファイルを保管しました...
>> ファイル名: calc_uep_without_opt_ctrl.patch
>> 型:         text/x-patch
>> サイズ:     8604 バイト
>> 説明:       無し
>> Download
>> -------------- next part --------------
>> テキスト形式以外の添付ファイルを保管しました...
>> ファイル名: add_opt_ctrl.patch
>> 型:         text/x-patch
>> サイズ:     4357 バイト
>> 説明:       無し
>> URL:        http://lists.sourceforge.jp/mailman/archives/molds-dev/attachments/20130104/ce956b15/attachment-0001.bin
>> _______________________________________________
>> MolDS-dev mailing list
>> MolDS****@lists*****
>> http://lists.sourceforge.jp/mailman/listinfo/molds-dev




MolDS-dev メーリングリストの案内
Zurück zum Archiv-Index