src/ModelPopDyClasses.cpp
dvar3_array PopProjector::projectUnFished(dvar3_array& n_msz, ostream& cout){
    if (debug) cout<<"starting PopProjector::projectUnFished(dirF, n_msz)"<<endl;
    RETURN_ARRAYS_INCREMENT();
    n1_msz.initialize();
    n2_msz.initialize();
    n3_msz.initialize();
    pCI->cmN_msz.initialize(); //set to 0's
    pCI->cpN_fmsz.initialize();//set to 0's
    pCI->rmN_fmsz.initialize();//set to 0's
    pCI->dmN_fmsz.initialize();//set to 0's
    //d3_array n1_msz(1,nMSs,1,nSCs,1,nZBs);
    //apply natural mortality BEFORE molting/growth/maturity
    n1_msz = pPI->applyNM(dtM, n_msz,cout);
    //apply molting/growth
    n2_msz = pPI->applyMG(n1_msz,cout);
    //apply natural mortality AFTER molting/growth
    n3_msz = pPI->applyNM(1.0-dtM, n2_msz,cout);

    //calculate mature biomass-at-mating from pre-molting/growth abundance
    matBio = pPI->calcMatureBiomass(n1_msz,cout);

    if (debug) {
        cout<<"matBio = "<<matBio<<endl;
        cout<<"finished PopProjector::projectUnFished(n_msz)"<<endl;   
    }
    RETURN_ARRAYS_DECREMENT();
    return 1.0*n3_msz;
}
/**
 * Project unfished single-sex population abundance forward one year,
 * based on single-sex population abundance on July 1. Recruitment
 * is NOT added in.
 * 
 * Also calculates:
 *      matBio - mature biomass at mating time
 *      pCI elements:
 *          cm_msz - total fishing mortality         (abundance) [=0]
 *          cp_fmsz - fishery captures, by fishery   (abundance) [=0]
 *          rm_fmsz - retained mortality, by fishery (abundance) [=0]
 *          dm_fmsz - discard mortality, by fishery  (abundance) [=0]
 * 
 * @param n_msz - initial abundance
 * @param cout - output stream for debug info
 * 
 * @return final sex-specific abundance, without recruitment
 */
Project unfished single-sex population abundance forward one year,
based on single-sex population abundance on July 1. Recruitment
is NOT added in.



@param n_msz - initial abundance
@param cout - output stream for debug info

@return final sex-specific abundance, without recruitment
Project unfished single - sex population abundance forward one year based on single - sex population abundance on July 1 . Recruitment is NOT added in . @param n_msz - initial abundance @param cout - output stream for debug info @return final sex - specific abundance without recruitment
dvar3_array PopProjector::projectUnFished(dvar3_array& n_msz, ostream& cout){
    if (debug) cout<<"starting PopProjector::projectUnFished(dirF, n_msz)"<<endl;
    RETURN_ARRAYS_INCREMENT();
    n1_msz.initialize();
    n2_msz.initialize();
    n3_msz.initialize();
    pCI->cmN_msz.initialize(); 
    pCI->cpN_fmsz.initialize();
    pCI->rmN_fmsz.initialize();
    pCI->dmN_fmsz.initialize();
    n1_msz = pPI->applyNM(dtM, n_msz,cout);
    n2_msz = pPI->applyMG(n1_msz,cout);
    n3_msz = pPI->applyNM(1.0-dtM, n2_msz,cout);
    matBio = pPI->calcMatureBiomass(n1_msz,cout);
    if (debug) {
        cout<<"matBio = "<<matBio<<endl;
        cout<<"finished PopProjector::projectUnFished(n_msz)"<<endl;   
    }
    RETURN_ARRAYS_DECREMENT();
    return 1.0*n3_msz;
}
dvar3_array PopProjector :: projectUnFished ( dvar3_array & n_msz , ostream & cout ) { if ( debug ) cout << " " << endl ; RETURN_ARRAYS_INCREMENT ( ) ; n1_msz . initialize ( ) ; n2_msz . initialize ( ) ; n3_msz . initialize ( ) ; pCI -> cmN_msz . initialize ( ) ; pCI -> cpN_fmsz . initialize ( ) ; pCI -> rmN_fmsz . initialize ( ) ; pCI -> dmN_fmsz . initialize ( ) ; n1_msz = pPI -> applyNM ( dtM , n_msz , cout ) ; n2_msz = pPI -> applyMG ( n1_msz , cout ) ; n3_msz = pPI -> applyNM ( 1.0 - dtM , n2_msz , cout ) ; matBio = pPI -> calcMatureBiomass ( n1_msz , cout ) ; if ( debug ) { cout << " " << matBio << endl ; cout << " " << endl ; } RETURN_ARRAYS_DECREMENT ( ) ; return 1.0 * n3_msz ; }
Project unfished single-sex population abundance forward one year,
 based on single-sex population abundance on July 1.
Project unfished single - sex population abundance forward one year based on single - sex population abundance on July 1 .
//set to 0's //set to 0's //set to 0's //set to 0's //d3_array n1_msz(1,nMSs,1,nSCs,1,nZBs); //apply natural mortality BEFORE molting/growth/maturity //apply molting/growth //apply natural mortality AFTER molting/growth //calculate mature biomass-at-mating from pre-molting/growth abundance