§ y<ˆjkãó„—dZgd¢ZddlZddlZddlZddlmZddlmZejZej Z dd „Z d „Z d„Z d„Z dS)z(Fortran to Python Interface Generator. )Úrun_mainÚcompileÚ get_includeéNé)Úf2py2e)ÚdiagnoseÚuntitledÚTú.fFcód—ddl}ddl}|€.| |¬¦«\} } tj| ¦«n|} t |t ¦«st |d¦«} t| d¦«5} |  |¦«ddd¦«n #1swxYwYdd|| j g} t |t ¦«r'tj dk} |  || ¬ ¦«}|   |¦«tj dd g| z} tj| d ¬ ¦«}|r&t!|j ¦«¦«n(#t&$rtj| d dd¬¦«}YnwxYw|€tj| ¦«n#|€tj| ¦«wwxYw|r|S|jS)a Build extension module from a Fortran 77 source string with f2py. Parameters ---------- source : str or bytes Fortran source of module / subroutine to compile .. versionchanged:: 1.16.0 Accept str as well as bytes modulename : str, optional The name of the compiled python module extra_args : str or list, optional Additional parameters passed to f2py .. versionchanged:: 1.16.0 A list of args may also be provided. verbose : bool, optional Print f2py output to screen source_fn : str, optional Name of the file where the fortran source is written. The default is to use a temporary file with the extension provided by the ``extension`` parameter extension : ``{'.f', '.f90'}``, optional Filename extension if `source_fn` is not provided. The extension tells which fortran standard is used. The default is ``.f``, which implies F77 standard. .. versionadded:: 1.11.0 full_output : bool, optional If True, return a `subprocess.CompletedProcess` containing the stdout and stderr of the compile process, instead of just the status code. .. versionadded:: 1.20.0 Returns ------- result : int or `subprocess.CompletedProcess` 0 on success, or a `subprocess.CompletedProcess` if ``full_output=True`` Examples -------- .. literalinclude:: ../../source/f2py/code/results/compile_session.dat :language: python rN)Úsuffixzutf-8Úwz-cz-mÚposix)rz)import numpy.f2py as f2py2e;f2py2e.main()T)Úcapture_outputéó)ÚstdoutÚstderr)ÚtempfileÚshlexÚmkstempÚosÚcloseÚ isinstanceÚstrÚopenÚwriteÚnameÚsplitÚextendÚsysÚ executableÚ subprocessÚrunÚprintrÚdecodeÚOSErrorÚCompletedProcessÚremoveÚ returncode)ÚsourceÚ modulenameÚ extra_argsÚverboseÚ source_fnÚ extensionÚ full_outputrrÚfÚfnameÚargsÚis_posixÚcÚcps úg/builddir/build/BUILD/cloudlinux-venv-1.0.12/venv/lib64/python3.11/site-packages/numpy/f2py/__init__.pyrrs)€ðx€O€O€OØ€L€L€LàÐØ×#Ò#¨9Ð#Ñ5Ô5‰ˆˆ5õ Œ�‰ Œ ˆ ˆ àˆå �f�cÑ "Ô "ð&Ý�V˜WÑ%Ô%ˆðÝ �%˜Ñ Ô ð  Ø �GŠG�F‰OŒOˆOð ð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð�d˜J¨¬Ð/ˆå �j¥#Ñ &Ô &ð AÝœ 7Ò*ˆHØŸš Z°x˜Ñ@Ô@ˆJà � Š �JÑÔÐå Œ^Ø Ø 8ð :à<@ñ Aˆð *Ý” °$Ð7Ñ7Ô7ˆBð ð *Ý�b”i×&Ò&Ñ(Ô(Ñ)Ô)Ð)øøõ ð Mð Mð MåÔ,¨Q°¸CÈÐLÑLÔLˆBˆBˆBð Møøøð Ð Ý ŒI�eÑ Ô Ð øøð Ð Ý ŒI�eÑ Ô Ð Ð ð øøøððØˆ àŒ}ÐsUÁ!F Á1B F ÂBÂF ÂBÂA1F Ä E Ä#)F Å "E1Å.F Å0E1Å1F Æ F$có†—tj tj t¦«d¦«S)aw Return the directory that contains the ``fortranobject.c`` and ``.h`` files. .. note:: This function is not needed when building an extension with `numpy.distutils` directly from ``.f`` and/or ``.pyf`` files in one go. Python extension modules built with f2py-generated code need to use ``fortranobject.c`` as a source file, and include the ``fortranobject.h`` header. This function can be used to obtain the directory containing both of these files. Returns ------- include_path : str Absolute path to the directory containing ``fortranobject.c`` and ``fortranobject.h``. Notes ----- .. versionadded:: 1.21.1 Unless the build system you are using has specific support for f2py, building a Python extension using a ``.pyf`` signature file is a two-step process. For a module ``mymod``: * Step 1: run ``python -m numpy.f2py mymod.pyf --quiet``. This generates ``_mymodmodule.c`` and (if needed) ``_fblas-f2pywrappers.f`` files next to ``mymod.pyf``. * Step 2: build your Python extension module. This requires the following source files: * ``_mymodmodule.c`` * ``_mymod-f2pywrappers.f`` (if it was generated in Step 1) * ``fortranobject.c`` See Also -------- numpy.get_include : function that returns the numpy include directory Úsrc)rÚpathÚjoinÚdirnameÚ__file__©rr8rr|s)€õX Œ7�<Š<�œŸš­Ñ1Ô1°5Ñ 9Ô 9Ð9rcóŽ—|dkrddlm}|t¦«}|Std t|¦«¦«‚)NÚtestr)Ú PytestTesterz!module {!r} has no attribute {!r})Únumpy._pytesttesterrBÚ__name__ÚAttributeErrorÚformat)ÚattrrBrAs r8Ú __getattr__rH«s[€ð ˆv‚~€~Ø4Ð4Ð4Ð4Ð4Ð4؈|�HÑ%Ô%ˆØˆ õð%ß%+¢V­H°dÑ%;Ô%;ñ=ô=ð =rcód—tt¦« ¦«dhz¦«S)NrA)ÚlistÚglobalsÚkeysr?rr8Ú__dir__rM¹s%€Ý •‘ ” —’Ñ Ô  F 8Ñ+Ñ ,Ô ,Ð,r)r r TNr F)Ú__doc__Ú__all__r!r#rr rrrÚmainrrrHrMr?rr8úrQsÑðððð 1Ð 0Ð 0€à € € € ØÐÐÐØ € € € àÐÐÐÐÐØÐÐÐÐÐà Œ?€Ø „{€ð"ØØØØØð gðgðgðgðT,:ð,:ð,:ð^ =ð =ð =ð-ð-ð-ð-ð-r