File R-ABM.spec of Package R-ABM
# Automatically generated by CRAN2OBS
#
# Spec file for package ABM
# This file is auto-generated using information in the package source,
# esp. Description and Summary. Improvements in that area should be
# discussed with upstream.
#
# Copyright (c) 2025 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
#
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%global packname ABM
%global rlibdir %{_libdir}/R/library
Name: R-%{packname}
Version: 0.4.3
Release: 0
Summary: Agent Based Model Simulation Framework
Group: Development/Libraries/Other
License: GPL (>= 2)
URL: http://cran.r-project.org/web/packages/%{packname}
Source: ABM_0.4.3.tar.gz
Requires: R-base
Requires: R-R6
Requires: R-Rcpp
# %%if 0%%{?sle_version} > 120400 || 0%%{?is_opensuse}
# # Three others commonly needed
# BuildRequires: tex(ae.sty)
# BuildRequires: tex(fancyvrb.sty)
# BuildRequires: tex(inconsolata.sty)
# BuildRequires: tex(natbib.sty)
# %else
# BuildRequires: texlive
# %endif
# BuildRequires: texinfo
BuildRequires: fdupes
BuildRequires: R-base
BuildRequires: R-R6
BuildRequires: R-Rcpp-devel
BuildRequires: gcc gcc-c++ gcc-fortran
%description
A high-performance, flexible and extensible framework to develop
continuous-time agent based models. Its high performance allows it to
simulate millions of agents efficiently. Agents are defined by their
states (arbitrary R lists). The events are handled in chronological
order. This avoids the multi-event interaction problem in a time step
of discrete-time simulations, and gives precise outcomes. The states
are modified by provided or user-defined events. The framework provides
a flexible and customizable implementation of state transitions (either
spontaneous or caused by agent interactions), making the framework
suitable to apply to epidemiology and ecology, e.g., to model life
history stages, competition and cooperation, and disease and
information spread. The agent interactions are flexible and extensible.
The framework provides random mixing and network interactions, and
supports multi-level mixing patterns. It can be easily extended to
other interactions such as inter- and intra-households (or workplaces
and schools) by subclassing an R6 class. It can be used to study the
effect of age-specific, group-specific, and contact- specific
intervention strategies, and complex interactions between individual
behavior and population dynamics. This modeling concept can also be
used in business, economical and political models. As a generic event
based framework, it can be applied to many other fields. More
information about the implementation and examples can be found at
<https://github.com/junlingm/ABM>.
%prep
%setup -q -c -n %{packname}
# the next line is needed, because we build without --clean in between two packages
rm -rf ~/.R
%build
%install
mkdir -p %{buildroot}%{rlibdir}
%{_bindir}/R CMD INSTALL -l %{buildroot}%{rlibdir} %{packname}
test -d %{packname}/src && (cd %{packname}/src; rm -f *.o *.so)
rm -f %{buildroot}%{rlibdir}/R.css
%fdupes -s %{buildroot}%{rlibdir}
#%%check
#%%{_bindir}/R CMD check %%{packname}
%files
%dir %{rlibdir}/%{packname}
%doc %{rlibdir}/%{packname}/DESCRIPTION
%{rlibdir}/%{packname}/INDEX
%{rlibdir}/%{packname}/Meta
%{rlibdir}/%{packname}/NAMESPACE
%doc %{rlibdir}/%{packname}/NEWS.md
%{rlibdir}/%{packname}/R
%doc %{rlibdir}/%{packname}/help
%doc %{rlibdir}/%{packname}/html
%{rlibdir}/%{packname}/include
%{rlibdir}/%{packname}/libs
%changelog