{"id":"https://openalex.org/W3125671456","doi":"https://doi.org/10.3233/spr-140379","title":"Formula Translation in Blitz++, NumPy and Modern Fortran: A Case Study of the Language Choice Tradeoffs","display_name":"Formula Translation in Blitz++, NumPy and Modern Fortran: A Case Study of the Language Choice Tradeoffs","publication_year":2014,"publication_date":"2014-01-01","ids":{"openalex":"https://openalex.org/W3125671456","doi":"https://doi.org/10.3233/spr-140379","mag":"3125671456"},"language":"en","primary_location":{"id":"pmh:oai:doaj.org/article:8f3a598919c741b58a2319506bbb2243","is_oa":false,"landing_page_url":"https://doaj.org/article/8f3a598919c741b58a2319506bbb2243","pdf_url":null,"source":{"id":"https://openalex.org/S4306401280","display_name":"DOAJ (DOAJ: Directory of Open Access Journals)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Scientific Programming, Vol 22, Iss 3, Pp 201-222 (2014)","raw_type":"article"},"type":"preprint","indexed_in":["doaj"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5039467749","display_name":"Sylwester Arabas","orcid":"https://orcid.org/0000-0003-2361-0082"},"institutions":[{"id":"https://openalex.org/I4654613","display_name":"University of Warsaw","ror":"https://ror.org/039bjqg32","country_code":"PL","type":"education","lineage":["https://openalex.org/I4654613"]}],"countries":["PL"],"is_corresponding":true,"raw_author_name":"Sylwester Arabas","raw_affiliation_strings":["University of Warsaw"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Warsaw","institution_ids":["https://openalex.org/I4654613"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5085596106","display_name":"Dorota Jarecka","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Dorota Jarecka","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"middle","author":{"id":"https://openalex.org/A5043879494","display_name":"Anna Jaruga","orcid":"https://orcid.org/0000-0003-3194-6440"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Anna Jaruga","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"last","author":{"id":"https://openalex.org/A5008322806","display_name":"Maciej Fija\u0142kowski","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Maciej Fija\u0142kowski","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":4,"corresponding_author_ids":["https://openalex.org/A5039467749"],"corresponding_institution_ids":["https://openalex.org/I4654613"],"apc_list":null,"apc_paid":null,"fwci":0.7137,"has_fulltext":false,"cited_by_count":5,"citation_normalized_percentile":{"value":0.75027254,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":90,"max":96},"biblio":{"volume":null,"issue":null,"first_page":null,"last_page":null},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10466","display_name":"Meteorological Phenomena and Simulations","score":0.9976999759674072,"subfield":{"id":"https://openalex.org/subfields/1902","display_name":"Atmospheric Science"},"field":{"id":"https://openalex.org/fields/19","display_name":"Earth and Planetary Sciences"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10466","display_name":"Meteorological Phenomena and Simulations","score":0.9976999759674072,"subfield":{"id":"https://openalex.org/subfields/1902","display_name":"Atmospheric Science"},"field":{"id":"https://openalex.org/fields/19","display_name":"Earth and Planetary Sciences"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T11483","display_name":"Tropical and Extratropical Cyclones Research","score":0.9656999707221985,"subfield":{"id":"https://openalex.org/subfields/1902","display_name":"Atmospheric Science"},"field":{"id":"https://openalex.org/fields/19","display_name":"Earth and Planetary Sciences"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10255","display_name":"Oceanographic and Atmospheric Processes","score":0.9606000185012817,"subfield":{"id":"https://openalex.org/subfields/1910","display_name":"Oceanography"},"field":{"id":"https://openalex.org/fields/19","display_name":"Earth and Planetary Sciences"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/python","display_name":"Python (programming language)","score":0.8999785780906677},{"id":"https://openalex.org/keywords/fortran","display_name":"Fortran","score":0.8022000193595886},{"id":"https://openalex.org/keywords/implementation","display_name":"Implementation","score":0.6910204887390137},{"id":"https://openalex.org/keywords/solver","display_name":"Solver","score":0.6639702916145325},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.5832047462463379},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5337268710136414},{"id":"https://openalex.org/keywords/advection","display_name":"Advection","score":0.5108065605163574},{"id":"https://openalex.org/keywords/computational-science","display_name":"Computational science","score":0.4390580952167511},{"id":"https://openalex.org/keywords/object-oriented-programming","display_name":"Object-oriented programming","score":0.4389054477214813},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.42641279101371765},{"id":"https://openalex.org/keywords/physics","display_name":"Physics","score":0.14227178692817688}],"concepts":[{"id":"https://openalex.org/C519991488","wikidata":"https://www.wikidata.org/wiki/Q28865","display_name":"Python (programming language)","level":2,"score":0.8999785780906677},{"id":"https://openalex.org/C2778241615","wikidata":"https://www.wikidata.org/wiki/Q83303","display_name":"Fortran","level":2,"score":0.8022000193595886},{"id":"https://openalex.org/C26713055","wikidata":"https://www.wikidata.org/wiki/Q245962","display_name":"Implementation","level":2,"score":0.6910204887390137},{"id":"https://openalex.org/C2778770139","wikidata":"https://www.wikidata.org/wiki/Q1966904","display_name":"Solver","level":2,"score":0.6639702916145325},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.5832047462463379},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5337268710136414},{"id":"https://openalex.org/C5072599","wikidata":"https://www.wikidata.org/wiki/Q379788","display_name":"Advection","level":2,"score":0.5108065605163574},{"id":"https://openalex.org/C459310","wikidata":"https://www.wikidata.org/wiki/Q117801","display_name":"Computational science","level":1,"score":0.4390580952167511},{"id":"https://openalex.org/C73752529","wikidata":"https://www.wikidata.org/wiki/Q79872","display_name":"Object-oriented programming","level":2,"score":0.4389054477214813},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.42641279101371765},{"id":"https://openalex.org/C121332964","wikidata":"https://www.wikidata.org/wiki/Q413","display_name":"Physics","level":0,"score":0.14227178692817688},{"id":"https://openalex.org/C97355855","wikidata":"https://www.wikidata.org/wiki/Q11473","display_name":"Thermodynamics","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"pmh:oai:doaj.org/article:8f3a598919c741b58a2319506bbb2243","is_oa":false,"landing_page_url":"https://doaj.org/article/8f3a598919c741b58a2319506bbb2243","pdf_url":null,"source":{"id":"https://openalex.org/S4306401280","display_name":"DOAJ (DOAJ: Directory of Open Access Journals)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Scientific Programming, Vol 22, Iss 3, Pp 201-222 (2014)","raw_type":"article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":37,"referenced_works":["https://openalex.org/W121515776","https://openalex.org/W251424399","https://openalex.org/W362909436","https://openalex.org/W964217583","https://openalex.org/W1541711914","https://openalex.org/W1547114826","https://openalex.org/W1570976541","https://openalex.org/W1584619743","https://openalex.org/W1754075329","https://openalex.org/W1972922682","https://openalex.org/W1976391619","https://openalex.org/W1984922264","https://openalex.org/W1993073780","https://openalex.org/W1997342191","https://openalex.org/W1999039044","https://openalex.org/W2001013242","https://openalex.org/W2010448353","https://openalex.org/W2015467401","https://openalex.org/W2053289371","https://openalex.org/W2069115661","https://openalex.org/W2074531772","https://openalex.org/W2078571717","https://openalex.org/W2090874655","https://openalex.org/W2092190216","https://openalex.org/W2097075819","https://openalex.org/W2110187357","https://openalex.org/W2129767530","https://openalex.org/W2131966673","https://openalex.org/W2133300188","https://openalex.org/W2149462110","https://openalex.org/W2168610641","https://openalex.org/W2171665936","https://openalex.org/W2177002043","https://openalex.org/W2504759881","https://openalex.org/W2546881935","https://openalex.org/W2987803397","https://openalex.org/W3099775292"],"related_works":["https://openalex.org/W2066731161","https://openalex.org/W1986195078","https://openalex.org/W1974990957","https://openalex.org/W4250743593","https://openalex.org/W2339733346","https://openalex.org/W4214505573","https://openalex.org/W2390271730","https://openalex.org/W2043155935","https://openalex.org/W2789551765","https://openalex.org/W2494770211"],"abstract_inverted_index":{"Three":[0],"object-oriented":[1,51],"implementations":[2,31,151],"of":[3,7,32,50,83,93,124,143,148,163],"a":[4,126],"prototype":[5],"solver":[6],"the":[8,33,48,67,72,75,81,84,122,135,140,155,161,164],"advection":[9],"equation":[10],"are":[11,16,95,113],"introduced.":[12],"The":[13,28,40,90],"presented":[14],"programs":[15],"based":[17],"on":[18,80],"Blitz++":[19],"(C++),":[20],"NumPy":[21],"(Python)":[22],"and":[23,55,61,98,104,118,157],"Fortran's":[24],"built-in":[25],"array":[26],"containers.":[27],"solvers":[29],"constitute":[30],"Multidimensional":[34],"Positive-Definite":[35],"Advective":[36],"Transport":[37],"Algorithm":[38],"(MPDATA).":[39],"introduced":[41],"codes":[42],"serve":[43],"as":[44,106,108],"examples":[45],"for":[46],"how":[47],"application":[49],"programming":[52,85],"(OOP)":[53],"techniques":[54],"new":[56],"language":[57,86],"constructs":[58],"from":[59,134],"C++11":[60],"Fortran":[62],"2008":[63],"allow":[64],"to":[65,139],"reproduce":[66],"mathematical":[68],"notation":[69],"used":[70],"in":[71,154],"literature":[73],"within":[74],"program":[76],"code.":[77],"A":[78],"discussion":[79],"tradeoffs":[82],"choice":[87],"is":[88,130,152,158],"presented.":[89],"main":[91],"angles":[92],"comparison":[94],"code":[96,147],"brevity":[97],"syntax":[99],"clarity":[100],"(and":[101],"hence":[102],"maintainability":[103],"auditability)":[105],"well":[107],"performance.":[109],"All":[110],"performance":[111,128],"tests":[112],"carried":[114],"out":[115],"using":[116],"free":[117],"open-source":[119],"compilers.":[120],"In":[121],"case":[123],"Python,":[125],"significant":[127],"gain":[129],"observed":[131],"when":[132],"switching":[133],"standard":[136],"interpreter":[137],"(CPython)":[138],"PyPy":[141],"implementation":[142],"Python.":[144],"Entire":[145],"source":[146],"all":[149],"three":[150],"embedded":[153],"text":[156],"licensed":[159],"under":[160],"terms":[162],"GNU":[165],"GPL":[166],"license.":[167]},"counts_by_year":[{"year":2018,"cited_by_count":2},{"year":2015,"cited_by_count":2},{"year":2014,"cited_by_count":1}],"updated_date":"2026-05-06T06:03:25.996018","created_date":"2021-02-01T00:00:00"}
