<div dir="ltr"><div>I've never encountered a recent Fortran compiler that doesn't allow maximum identifier length to exceed the 31 characters specified in Fortran 95. Since Fortran 2003 extended this to 63, I vote for that.<br><br></div>--Richard<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Sep 22, 2017 at 6:36 PM, Smith, Barry F. <span dir="ltr"><<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
  Since these don't seem to cause problems maybe we can change the maximum allowed to 63?<br>
<div class="HOEnZb"><div class="h5"><br>
> On Sep 22, 2017, at 8:01 PM, Lisandro Dalcin <<a href="mailto:dalcinl@gmail.com">dalcinl@gmail.com</a>> wrote:<br>
><br>
> 32 CharacteristicPackageInitializ<wbr>ed<br>
> 32 CharacteristicSendCoordinatesE<wbr>nd<br>
> 32 DMForestGetBaseCoordinateMappi<wbr>ng<br>
> 32 DMForestSetBaseCoordinateMappi<wbr>ng<br>
> 32 DMGlobalToLocalBeginDefaultShe<wbr>ll<br>
> 32 DMLocalToGlobalBeginDefaultShe<wbr>ll<br>
> 32 DMNetworkAssembleGraphStructur<wbr>es<br>
> 32 DMNetworkGetVariableGlobalOffs<wbr>et<br>
> 32 DMPlexComputeInterpolatorGener<wbr>al<br>
> 32 DMPlexCreateDefaultReferenceTr<wbr>ee<br>
> 32 DMPlexCreateFromCellListParall<wbr>el<br>
> 32 DMShellSetLocalToLocalVecScatt<wbr>er<br>
> 32 DMSwarmRegisterUserDatatypeFie<wbr>ld<br>
> 32 ISGlobalToLocalMappingApplyBlo<wbr>ck<br>
> 32 ISLocalToGlobalMappingApplyBlo<wbr>ck<br>
> 32 ISLocalToGlobalMappingGetIndic<wbr>es<br>
> 32 MatCreateMPIAIJSumSeqAIJSymbol<wbr>ic<br>
> 32 MatCreateMPIMatConcatenateSeqM<wbr>at<br>
> 32 MatFDColoringGetPerturbedColum<wbr>ns<br>
> 32 MatMPIAIJDiagonalScaleLocalSet<wbr>Up<br>
> 32 MatPartitioningRegisterAllCall<wbr>ed<br>
> 32 MatSchurComplementGetSubMatric<wbr>es<br>
> 32 MatSchurComplementSetSubMatric<wbr>es<br>
> 32 PCBDDCApplyNullSpaceCorrection<wbr>PC<br>
> 32 PCGAMGClassicalInitializePacka<wbr>ge<br>
> 32 PCGASMCreateStraddlingSubdomai<wbr>ns<br>
> 32 PCNNApplyInterfacePrecondition<wbr>er<br>
> 32 PetscDrawXiQuickWindowFromWind<wbr>ow<br>
> 32 PetscDSGetJacobianPrecondition<wbr>er<br>
> 32 PetscDSHasJacobianPrecondition<wbr>er<br>
> 32 PetscDSSetJacobianPrecondition<wbr>er<br>
> 32 PetscDualSpaceSimpleSetDimensi<wbr>on<br>
> 32 PetscErrorPrintfInitializeCall<wbr>ed<br>
> 32 PetscEventPerfLogDeactivateCla<wbr>ss<br>
> 32 PetscFEGetFaceCentroidTabulati<wbr>on<br>
> 32 PetscObjectInheritPrintedOptio<wbr>ns<br>
> 32 PetscOptionsHelpPrintedSinglet<wbr>on<br>
> 32 PetscSectionCreateSubmeshSecti<wbr>on<br>
> 32 PetscSectionGetConstraintIndic<wbr>es<br>
> 32 PetscSectionSetConstraintIndic<wbr>es<br>
> 32 PetscSpacePolynomialGetSymmetr<wbr>ic<br>
> 32 PetscSpacePolynomialSetSymmetr<wbr>ic<br>
> 32 PetscViewerASCIIPushSynchroniz<wbr>ed<br>
> 32 PetscViewerBinaryReadStringArr<wbr>ay<br>
> 32 PetscViewerFlowControlStepMast<wbr>er<br>
> 32 PetscViewerFlowControlStepWork<wbr>er<br>
> 32 SNESSetComputeApplicationConte<wbr>xt<br>
> 32 SNESSetLagPreconditionerPersis<wbr>ts<br>
> 32 TaoGetCurrentFunctionEvaluatio<wbr>ns<br>
> 32 TaoGetMaximumFunctionEvaluatio<wbr>ns<br>
> 32 TaoIsObjectiveAndGradientDefin<wbr>ed<br>
> 32 TaoLineSearchAppendOptionsPref<wbr>ix<br>
> 32 TaoLineSearchSetObjectiveRouti<wbr>ne<br>
> 32 TaoSetEqualityConstraintsRouti<wbr>ne<br>
> 32 TaoSetMaximumFunctionEvaluatio<wbr>ns<br>
> 32 TSPseudoIncrementDtFromInitial<wbr>Dt<br>
> 33 DMPlexCreateSectionBCIndicesFi<wbr>eld<br>
> 33 DMPlexInsertBoundaryValuesRiem<wbr>ann<br>
> 33 DMPlexMatGetClosureIndicesRefi<wbr>ned<br>
> 33 DMShellSetGlobalToLocalVecScat<wbr>ter<br>
> 33 DMShellSetLocalToGlobalVecScat<wbr>ter<br>
> 33 DMSwarmCreateLocalVectorFromFi<wbr>eld<br>
> 33 DMSwarmRegisterPetscDatatypeFi<wbr>eld<br>
> 33 ISLocalToGlobalMappingConcaten<wbr>ate<br>
> 33 ISLocalToGlobalMappingRegister<wbr>All<br>
> 33 ISLocalToGlobalMappingRestoreI<wbr>nfo<br>
> 33 KSPMonitorDynamicToleranceDest<wbr>roy<br>
> 33 MatFactorFactorizeSchurComplem<wbr>ent<br>
> 33 MatMPIAdjCreateNonemptySubcomm<wbr>Mat<br>
> 33 MatMPIBAIJDiagonalScaleLocalSe<wbr>tUp<br>
> 33 MatPartitioningParmetisGetEdge<wbr>Cut<br>
> 33 MatSeqBAIJSetNumericFactorizat<wbr>ion<br>
> 33 ourtaoobjectiveandgradientrout<wbr>ine<br>
> 33 PCBDDCGetDirichletBoundariesLo<wbr>cal<br>
> 33 PCBDDCNullSpaceAssembleCorrect<wbr>ion<br>
> 33 PCBDDCSetDirichletBoundariesLo<wbr>cal<br>
> 33 PCBDDCSolveSubstructureCorrect<wbr>ion<br>
> 33 PCFactorReorderForNonzeroDiago<wbr>nal<br>
> 33 PCGAMGClassicalPackageInitiali<wbr>zed<br>
> 33 PCGASMSetHierarchicalPartition<wbr>ing<br>
> 33 PetscDualSpaceCreateReferenceC<wbr>ell<br>
> 33 PetscDualSpaceSimpleSetFunctio<wbr>nal<br>
> 33 PetscGridHashGetEnclosingBoxQu<wbr>ery<br>
> 33 PetscObjectDestroyOptionsHandl<wbr>ers<br>
> 33 PetscObjectProcessOptionsHandl<wbr>ers<br>
> 33 PetscPartitionerRegisterAllCal<wbr>led<br>
> 33 PetscPartitionerShellSetPartit<wbr>ion<br>
> 33 PetscSectionAddFieldConstraint<wbr>Dof<br>
> 33 PetscSectionGetClosurePermutat<wbr>ion<br>
> 33 PetscSectionGetFieldConstraint<wbr>Dof<br>
> 33 PetscSectionRestoreFieldPointS<wbr>yms<br>
> 33 PetscSectionSetClosurePermutat<wbr>ion<br>
> 33 PetscSectionSetFieldConstraint<wbr>Dof<br>
> 33 PetscViewerBinaryWriteStringAr<wbr>ray<br>
> 33 SNESLineSearchAppendOptionsPre<wbr>fix<br>
> 33 TaoLineSearchGetFullStepObject<wbr>ive<br>
> 33 TaoLineSearchSetInitialStepLen<wbr>gth<br>
> 33 TaoSetObjectiveAndGradientRout<wbr>ine<br>
> 33 TSMonitorLGCtxSetDisplayVariab<wbr>les<br>
> 34 CharacteristicSendCoordinatesB<wbr>egin<br>
> 34 DMCompositeRestoreLocalAccessA<wbr>rray<br>
> 34 DMPlexComputeCellGeometryAffin<wbr>eFEM<br>
> 34 DMPlexComputeInjectorReference<wbr>Tree<br>
> 34 DMPlexSNESComputeJacobianActio<wbr>nFEM<br>
> 34 DMShellSetCreateFieldDecomposi<wbr>tion<br>
> 34 DMSwarmCreateGlobalVectorFromF<wbr>ield<br>
> 34 DMSwarmDestroyLocalVectorFromF<wbr>ield<br>
> 34 DMSwarmSetPointsUniformCoordin<wbr>ates<br>
> 34 ISLocalToGlobalMappingGetBlock<wbr>Info<br>
> 34 ISLocalToGlobalMappingGetBlock<wbr>Size<br>
> 34 ISLocalToGlobalMappingSetBlock<wbr>Size<br>
> 34 KSPMonitorLGTrueResidualNormCr<wbr>eate<br>
> 34 KSPMonitorSNESLGResidualNormCr<wbr>eate<br>
> 34 MatPartitioningSetPartitionWei<wbr>ghts<br>
> 34 PCBDDCApplyInterfacePreconditi<wbr>oner<br>
> 34 PCBDDCDestroyNullSpaceCorrecti<wbr>onPC<br>
> 34 PCBDDCDetectDisconnectedCompon<wbr>ents<br>
> 34 PCBDDCMatISGetSubassemblingPat<wbr>tern<br>
> 34 PetscObjectComposedDataIncreas<wbr>eInt<br>
> 34 PetscObjectsListGetGlobalNumbe<wbr>ring<br>
> 34 PetscPrintXMLNestedLinePerfRes<wbr>ults<br>
> 34 PetscViewerASCIISynchronizedPr<wbr>intf<br>
> 34 SNESGetAlwaysComputesFinalResi<wbr>dual<br>
> 34 SNESSetAlwaysComputesFinalResi<wbr>dual<br>
> 34 SNESVIComputeMeritFunctionGrad<wbr>ient<br>
> 34 TaoSetInequalityConstraintsRou<wbr>tine<br>
> 34 VecTaggerCDFIterativeGetTolera<wbr>nces<br>
> 34 VecTaggerCDFIterativeSetTolera<wbr>nces<br>
> 35 CharacteristicSetFieldInterpol<wbr>ation<br>
> 35 DMCreateDomainDecompositionSca<wbr>tters<br>
> 35 DMDAGetPreallocationCenterDime<wbr>nsion<br>
> 35 DMDASetPreallocationCenterDime<wbr>nsion<br>
> 35 DMPlexInsertBoundaryValuesEsse<wbr>ntial<br>
> 35 DMPlexReferenceTreeGetChildSym<wbr>metry<br>
> 35 DMShellSetCreateDomainDecompos<wbr>ition<br>
> 35 DMSwarmDestroyGlobalVectorFrom<wbr>Field<br>
> 35 DMSwarmSortGetNumberOfPointsPe<wbr>rCell<br>
> 35 KSPMonitorSNESLGResidualNormDe<wbr>stroy<br>
> 35 MatDenseOrthogonalRangeOrCompl<wbr>ement<br>
> 35 MatSchurComplementUpdateSubMat<wbr>rices<br>
> 35 PCGAMGSetUseParallelCoarseGrid<wbr>Solve<br>
> 35 PetscDualSpaceLagrangeGetConti<wbr>nuity<br>
> 35 PetscDualSpaceLagrangeSetConti<wbr>nuity<br>
> 35 PetscObjectComposedDataIncreas<wbr>eReal<br>
> 35 PetscObjectPrintClassNamePrefi<wbr>xType<br>
> 35 PetscSpacePolynomialGetNumVari<wbr>ables<br>
> 35 PetscSpacePolynomialSetNumVari<wbr>ables<br>
> 35 PetscViewerBinaryGetMPIIODescr<wbr>iptor<br>
> 35 SNESDefaultMatrixFreeSetParame<wbr>ters2<br>
> 35 SNESLineSearchMonitorSetFromOp<wbr>tions<br>
> 35 SNESLineSearchMonitorSolutionU<wbr>pdate<br>
> 35 TaoLineSearchComputeObjectiveA<wbr>ndGTS<br>
> 36 ISLocalToGlobalMappingRestoreI<wbr>ndices<br>
> 36 ISLocalToGlobalMappingSetFromO<wbr>ptions<br>
> 36 MatColoringCreateLargestFirstW<wbr>eights<br>
> 36 MatColoringCreateSmallestLastW<wbr>eights<br>
> 36 PetscDSGetComponentDerivativeO<wbr>ffsets<br>
> 36 PetscLayoutSetISLocalToGlobalM<wbr>apping<br>
> 36 PetscSectionCreateGlobalSectio<wbr>nLabel<br>
> 36 SNESVIComputeBsubdifferentialV<wbr>ectors<br>
> 37 DMCompositeGetISLocalToGlobalM<wbr>appings<br>
> 37 ISLocalToGlobalMappingGetBlock<wbr>Indices<br>
> 37 MatPartitioningParmetisSetRepa<wbr>rtition<br>
> 37 PCBDDCGraphComputeConnectedCom<wbr>ponents<br>
> 37 PetscObjectComposedDataIncreas<wbr>eScalar<br>
> 37 PetscPrintXMLGlobalPerformance<wbr>Element<br>
> 37 PetscSectionGetConstrainedStor<wbr>ageSize<br>
> 37 PetscSectionGetFieldConstraint<wbr>Indices<br>
> 37 PetscSectionSetFieldConstraint<wbr>Indices<br>
> 37 SNESObjectiveComputeFunctionDe<wbr>faultFD<br>
> 38 CharacteristicSetVelocityInter<wbr>polation<br>
> 38 DMPlexCreateSpectralClosurePer<wbr>mutation<br>
> 38 DMPlexReferenceTreeGetChildren<wbr>Matrices<br>
> 38 ISLocalToGlobalMappingRestoreB<wbr>lockInfo<br>
> 38 MatFactorSolveSchurComplementT<wbr>ranspose<br>
> 38 MatMPIAIJSetUseScalableIncreas<wbr>eOverlap<br>
> 38 ourtaolinesearchobjectiveandgt<wbr>sroutine<br>
> 38 PetscObjectComposedDataIncreas<wbr>eIntstar<br>
> 38 PetscObjectCopyFortranFunction<wbr>Pointers<br>
> 38 TaoLineSearchSetObjectiveAndGT<wbr>SRoutine<br>
> 39 ISLocalToGlobalMappingRegister<wbr>AllCalled<br>
> 39 MatPartitioningHierarchicalGet<wbr>Fineparts<br>
> 39 PCTelescopeGetIgnoreKSPCompute<wbr>Operators<br>
> 39 PCTelescopeSetIgnoreKSPCompute<wbr>Operators<br>
> 39 PetscObjectComposedDataIncreas<wbr>eRealstar<br>
> 39 PetscSectionCreateGlobalSectio<wbr>nCensored<br>
> 40 CharacteristicSetFieldInterpol<wbr>ationLocal<br>
> 40 DMPlexInsertBoundaryValuesEsse<wbr>ntialField<br>
> 40 LCLComputeAugmentedLagrangianA<wbr>ndGradient<br>
> 40 MatPartitioningHierarchicalSet<wbr>Nfineparts<br>
> 40 PetscSectionGetClosureInverseP<wbr>ermutation<br>
> 40 TaoLineSearchComputeObjectiveA<wbr>ndGradient<br>
> 41 ISLocalToGlobalMappingRestoreB<wbr>lockIndices<br>
> 41 MatPartitioningHierarchicalGet<wbr>Coarseparts<br>
> 41 MatSchurComplementComputeExpli<wbr>citOperator<br>
> 41 PetscObjectComposedDataIncreas<wbr>eScalarstar<br>
> 41 TaoLineSearchGetNumberFunction<wbr>Evaluations<br>
> 42 DMPlexReferenceTreeRestoreChil<wbr>drenMatrices<br>
> 42 MatPartitioningHierarchicalSet<wbr>Ncoarseparts<br>
> 42 MatPartitioningParmetisSetCoar<wbr>seSequential<br>
> 42 PCBDDCGraphComputeConnectedCom<wbr>ponentsLocal<br>
> 43 CharacteristicSetVelocityInter<wbr>polationLocal<br>
> 43 DMShellSetCreateDomainDecompos<wbr>itionScatters<br>
> 43 ourtaolinesearchobjectiveandgr<wbr>adientroutine<br>
> 43 TaoLineSearchSetObjectiveAndGr<wbr>adientRoutine<br>
> 44 KSPGMRESModifiedGramSchmidtOrt<wbr>hogonalization<br>
> 45 KSPGMRESClassicalGramSchmidtOr<wbr>thogonalization<br>
><br>
><br>
> --<br>
> Lisandro Dalcin<br>
> ============<br>
> Research Scientist<br>
> Computer, Electrical and Mathematical Sciences & Engineering (CEMSE)<br>
> Extreme Computing Research Center (ECRC)<br>
> King Abdullah University of Science and Technology (KAUST)<br>
> <a href="http://ecrc.kaust.edu.sa/" rel="noreferrer" target="_blank">http://ecrc.kaust.edu.sa/</a><br>
><br>
> 4700 King Abdullah University of Science and Technology<br>
> al-Khawarizmi Bldg (Bldg 1), Office # 0109<br>
> Thuwal 23955-6900, Kingdom of Saudi Arabia<br>
> <a href="http://www.kaust.edu.sa" rel="noreferrer" target="_blank">http://www.kaust.edu.sa</a><br>
><br>
> Office Phone: <a href="tel:%2B966%2012%20808-0459" value="+966128080459">+966 12 808-0459</a><br>
<br>
</div></div></blockquote></div><br></div>